From nobody Thu Oct 9 07:05:21 2025 Received: from mail-il1-f174.google.com (mail-il1-f174.google.com [209.85.166.174]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 80F1128B419 for ; Thu, 19 Jun 2025 13:51:57 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.166.174 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1750341119; cv=none; b=BMbO9xTlWy3rBQ9YfbEG1W7dV/Z0Qdaiq8biXla8eMai7wX4x0XqFihqPN4I9UP88SyPQZHPTi5UUZTNCSEP2T9bwoTujwMx+boL/9lMrMdbqJnFdZujS0wcHQioQ3OTIOBe3oPYTQBnB8dXUmRwDYYPOJt8rE1jVUEm5BEQ4Qg= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1750341119; c=relaxed/simple; bh=cAHhOLAHGIZflg/S4SymZ2z4viws5qDWxv85YpH2WPA=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=KqUW+yzhXwAsp89DLgkEMWYb3uZTGARsfMfwmiGm0qO4hS8+aVJfCTQ7JV8rsAulTlGVNBt4S8iYXhydT/3gOml+yg9YNka15hm7vwP2MhPTJrSbgb7+1p64HBExZzu3r8rXzstlPb48OWBAnedasWHOxJIK0M8XfTt85QY+Glo= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=riscstar.com; spf=pass smtp.mailfrom=riscstar.com; dkim=pass (2048-bit key) header.d=riscstar-com.20230601.gappssmtp.com header.i=@riscstar-com.20230601.gappssmtp.com header.b=ShGiAx3Z; arc=none smtp.client-ip=209.85.166.174 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=riscstar.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=riscstar.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=riscstar-com.20230601.gappssmtp.com header.i=@riscstar-com.20230601.gappssmtp.com header.b="ShGiAx3Z" Received: by mail-il1-f174.google.com with SMTP id e9e14a558f8ab-3ddda8e419bso2530535ab.0 for ; Thu, 19 Jun 2025 06:51:57 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=riscstar-com.20230601.gappssmtp.com; s=20230601; t=1750341116; x=1750945916; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=W9OZBf2ZEclqneULzr0nY5IJTm6h+hkq5rFp6zftd8k=; b=ShGiAx3ZCWh91myRrzNX4ENCkOaZtxWFMiaw+2T8eEPRNgtYJCtvXdaCyqngfHy/19 4frg2J7LBSL8vSuD21BIwhU66wAnmG1s6W/YMmNqI3pBfIm59a/MtLRDpQ8waB4Yh/Ij TEXabsb9sFu/UzLwI2SXR0c+eHWk+1RMQY84yp8ZFYqAYLHKCxZp3Tsynwxnm+gXT8Sm RQPXrcpF6p5hmnMU/coCq9cr+pbbfa8Dz8Y++gQxbQ4gTp2UhCyGd0FzTcXNmRb5padE UO9W5zSUyMj5tcmjtMUUIYUOauJKLezbL12riZ1K/qx9MvnLlYbEZ2uL1fkwk+/mMaYU 1+Og== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1750341116; x=1750945916; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=W9OZBf2ZEclqneULzr0nY5IJTm6h+hkq5rFp6zftd8k=; b=jYO7+f4JpfTyVfa6voda7ZOH22vfCSKmWDA4fstuv5EcNc2sS+h6wNOfiP1G4eebHo Web7Ti/9hYcOTfq5Dm+08lWxpunKDv5kEWYdyQodE2xpBCH6/2vOZYlpQUSy0N86KQGq 24cDtJ6xbLqntCU9cM7Yqko8LY5rJBoFl+gIwVjs9mMusIsyeezReebH2o/TD/Yqfvr8 uoeP+QTmk+11HNGVqwlICUg5LsaUNwCvhkkJVuI7WW2GERlePwsT03c7d0TmNutVAlp0 6ZULXuliQi7S/XiLcGBO2K8W2/deNKYnY9NYbQK7wFWRj5jpVw9Fm3mBdPktVfmoFDff KIwQ== X-Forwarded-Encrypted: i=1; AJvYcCW74tJ95IzCuGpwjUwKHjSsTgRJA/0L/JA+u1kptGETTl4Yfsb0FPBa7czgOKnyKAhX0py6wHvZKtlGdR8=@vger.kernel.org X-Gm-Message-State: AOJu0YyPfBE/gKdPVkMU+r04UAOUym9Xk61jYE7zViDol30u1FbEZ/e2 c+3CQoEjbQGprOC4/pIspHYSsw6DemGULBUBdnmXxN3fBHCGF6VkmogFUNq6vlq1eY4= X-Gm-Gg: ASbGncv2s6y+S3hutZHPREJvHy3eucATJzk0a7EMY8T5LXKc6cjVFTQEahTKE7/q1Tm 5hk51yYW3YH+s/lwxqboZze2/l7WzK0PUN8lDIeB2bW+NMl9Nm/Zc+CuwvI/t9GuDulLD5Poykg IApXzVRrtrKI7p22f15HivEzwC4/k5SGDoW4ukK2zGO4ihKtNaiZTMVCE66q/SJqvlWMOreHW3G z8PsFB3LhkByuVbWB4VTJChZymcJY1YKIurDkHwH6LSr/xEMnQP/MpgfkvAOsPBFw/qKR6qJT6c mMpCKjBaF5TS/2Fq9etofrWvqQ9oGVJd5A9khZA0ikUzkGSA+ttOgLnhoJaMToyOlX2Iqq6rFCI onwTrpg5tgYtZTW0aCuxIM7Aowb9LoP8= X-Google-Smtp-Source: AGHT+IElaXHZ2UeHWaQiwWXotIWz/yHFM2kkgPfUkrNCPfPJv6aoAzGBdh75tg6zZAr4XQkckxbbkw== X-Received: by 2002:a05:6e02:378f:b0:3d4:2ea4:6b87 with SMTP id e9e14a558f8ab-3de3029bcd5mr30770725ab.11.1750341116498; Thu, 19 Jun 2025 06:51:56 -0700 (PDT) Received: from presto.localdomain (c-73-228-159-35.hsd1.mn.comcast.net. [73.228.159.35]) by smtp.gmail.com with ESMTPSA id e9e14a558f8ab-3de01a453b4sm38246015ab.47.2025.06.19.06.51.55 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 19 Jun 2025 06:51:56 -0700 (PDT) From: Alex Elder To: lee@kernel.org, robh@kernel.org, krzk+dt@kernel.org, conor+dt@kernel.org, broonie@kernel.org, lgirdwood@gmail.com Cc: wangruikang@iscas.ac.cn, dlan@gentoo.org, troymitchell988@gmail.com, paul.walmsley@sifive.com, palmer@dabbelt.com, aou@eecs.berkeley.edu, alex@ghiti.fr, devicetree@vger.kernel.org, spacemit@lists.linux.dev, linux-riscv@lists.infradead.org, linux-kernel@vger.kernel.org Subject: [PATCH v2 1/6] dt-bindings: mfd: add support the SpacemiT P1 PMIC Date: Thu, 19 Jun 2025 08:51:45 -0500 Message-ID: <20250619135151.3206258-2-elder@riscstar.com> X-Mailer: git-send-email 2.45.2 In-Reply-To: <20250619135151.3206258-1-elder@riscstar.com> References: <20250619135151.3206258-1-elder@riscstar.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" Enable the SpacemiT P1, which is an I2C-controlled PMIC. Initially only the regulators will be supported. Signed-off-by: Alex Elder --- v2: - Spell SpacemiT correctly in the subject line .../devicetree/bindings/mfd/spacemit,p1.yaml | 86 +++++++++++++++++++ 1 file changed, 86 insertions(+) create mode 100644 Documentation/devicetree/bindings/mfd/spacemit,p1.yaml diff --git a/Documentation/devicetree/bindings/mfd/spacemit,p1.yaml b/Docum= entation/devicetree/bindings/mfd/spacemit,p1.yaml new file mode 100644 index 0000000000000..5cc34d4934b54 --- /dev/null +++ b/Documentation/devicetree/bindings/mfd/spacemit,p1.yaml @@ -0,0 +1,86 @@ +# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/mfd/spacemit,p1.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: SpacemiT P1 Power Management Integrated Circuit + +maintainers: + - Troy Mitchell + +description: + P1 is an I2C-controlled PMIC produced by SpacemiT. It implements six + constant-on-time buck converters and twelve low-dropout regulators. + It also contains a load switch, watchdog timer, real-time clock, eight + 12-bit ADC channels, and six GPIOs. Additional details are available + in the "Power Stone/P1" section at the following link. + https://developer.spacemit.com/documentation + +properties: + compatible: + const: spacemit,p1 + + reg: + maxItems: 1 + + interrupts: + maxItems: 1 + + vin-supply: + description: Input supply phandle. + + regulators: + type: object + + patternProperties: + "^(buck[1-6]|aldo[1-4]|dldo[1-7])$": + type: object + $ref: /schemas/regulator/regulator.yaml# + unevaluatedProperties: false + + unevaluatedProperties: false + +required: + - compatible + - reg + - interrupts + +unevaluatedProperties: false + +examples: + - | + i2c { + #address-cells =3D <1>; + #size-cells =3D <0>; + + pmic@41 { + compatible =3D "spacemit,p1"; + reg =3D <0x41>; + interrupts =3D <64>; + + regulators { + buck1 { + regulator-name =3D "buck1"; + regulator-min-microvolt =3D <500000>; + regulator-max-microvolt =3D <3450000>; + regulator-ramp-delay =3D <5000>; + regulator-always-on; + }; + + aldo1 { + regulator-name =3D "aldo1"; + regulator-min-microvolt =3D <500000>; + regulator-max-microvolt =3D <3400000>; + regulator-boot-on; + }; + + dldo1 { + regulator-name =3D "dldo1"; + regulator-min-microvolt =3D <500000>; + regulator-max-microvolt =3D <3400000>; + regulator-boot-on; + }; + }; + }; + }; --=20 2.45.2 From nobody Thu Oct 9 07:05:21 2025 Received: from mail-il1-f174.google.com (mail-il1-f174.google.com [209.85.166.174]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id B9764253939 for ; Thu, 19 Jun 2025 13:51:58 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.166.174 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1750341120; cv=none; b=K+TtC61SLfF6WoDfX992f3QnY4eXAMh6g1/ckThBf1JorFKJqyp9Sd6Q9ubbF6hUI9+M0+pOdu6n6H3sNZ1fvdOQfMfptabBKVqDLTFiiI+IdUGCyeBAYs8lmzYs97LGua6FpHFLOWDk9F6hW24FOznDmbjxFW3sNGnJqRly5dg= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1750341120; c=relaxed/simple; bh=DLY9xmMx5Ri1jviyS6Gh17qkXoF7jTjGJ2mkbLSbZhw=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=fFrc01UMSIUoGRM1qjrQb6xX9hk/5qkZrMUOALVxtEQ53uEJJQ8uyWWi0BvYms3OCyM/an5KcECy4AtPwEhSgo0120jWXkD7sPbXLWDcK9hF7mnsNAkxEQHFiscIDDuu3Ke/uw+Ft6kvKhEfOC1lpBo1r/u7g0b5NFVjEgEQ2wo= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=riscstar.com; spf=pass smtp.mailfrom=riscstar.com; dkim=pass (2048-bit key) header.d=riscstar-com.20230601.gappssmtp.com header.i=@riscstar-com.20230601.gappssmtp.com header.b=Dt1WtA0K; arc=none smtp.client-ip=209.85.166.174 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=riscstar.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=riscstar.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=riscstar-com.20230601.gappssmtp.com header.i=@riscstar-com.20230601.gappssmtp.com header.b="Dt1WtA0K" Received: by mail-il1-f174.google.com with SMTP id e9e14a558f8ab-3ddd2710d14so8835035ab.2 for ; Thu, 19 Jun 2025 06:51:58 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=riscstar-com.20230601.gappssmtp.com; s=20230601; t=1750341118; x=1750945918; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=ifXk3bjhC2kOQzrxq9QjT/OUSbhaYYTAO2eulOUbpkA=; b=Dt1WtA0K+QsLwLJ6wlK7Yh2LuUhTw/Iiwq69xCcyJ83h1nhHfkm+ZY1LJahdy9rmBL 7zEkMJiiEMSyrcHJ5QF/NZEXpa2emBfD4QbVbxStz9D644NtadweifZ/aHFl7rpkAY8J y5TnP+RRcU+Bx/KJoZfLcZZR4TKCEqj8oZjXhDH9uqXKDwu4ZOLXw3U1xsFfUO8axoIE k7/+KfT07NGdK+YRYWFKpzNzrmOcZJ5L/MxGNGAQT/B748vsg5cA5Wx+Z0FmUuzJHNUi mudaVwPfdIkUY/PNjcU1c0lhrAK5eUatt0oQ9ZMJH0qsockiVT0Le+0D2EJoG+6XbaIg 0L7Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1750341118; x=1750945918; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=ifXk3bjhC2kOQzrxq9QjT/OUSbhaYYTAO2eulOUbpkA=; b=anwzs0a9XCFUwxJGT5W6v0fLF5/WvWPioQUxu8cvX7DQen2qxNhJEZ/Yw4J7TG2lN3 VOp6mwqcwBJz6e0tbE5cHker1GmYEdx13Grc2PqglQqK2MeRlk1/dLBPvc4Rs1MVCjbP bEYpVU33cO/oWOX2modlPrmXZfXq/j2+afoQkeZ3XdeEyVe8Wblr6l9Im2gzbPbCmhza jyNqQYbg94M3g/xBF4CsP/gB5UYNOQ26Yy+KuERyq+JIFutA0Oc7obqMJca2qkG6XGcc 1s25afHfyf+2I9jBGgQ9lEaP/eCHZLPFP0aBpHxUwcpEqVD42HH9i8LA48izdwnwLqMN ri8A== X-Forwarded-Encrypted: i=1; AJvYcCVAu+ax9rqNwT4SL8Dcer3CY60QbyefIkGsjvJ7+HVqoaN6gofU0Z7EgeonxCjHqlRxB0XcIkktq9gTn4w=@vger.kernel.org X-Gm-Message-State: AOJu0YzZMMJeKdFQG7n+h7L/pSPwQ1eEa25KD5wdIztI+A8fnVO1hIWT py5U7fmJDJWnduDYG13VmHkzSHPAsPEAjGb82T9ZxsuLnUEgujDu0FlVb9M/LOYkq2I= X-Gm-Gg: ASbGnctCPdrhuOhyptZkhVA6hoECpy5Uc1lmkMpyO72VqOT41YQy8VFLI58+/RjCWLh WRebhtl2Bc+6AM8jcCdIsUgry1Z0v0kLVrYghSQSNwCgIleWLOcnvuCOGJWkARIW6yTwu16jthp rqaRI0nK+/6rHAzjZtF4gCqWdDUk4GzxQRu97xgCvzt7/cT8U5Z4VH/Sbui0zstfYtmgSR0AqYv 6NwSNu9x5T8XOLRtBh8VxeLVHMQJZUAq6gvBqLMVGtZSoDpNtbnQSKYD3rvZS+9ke7L4VTSfuRY mpfdgr2NBG9h2D6Dc8vd2hQUsnXPtQfi3AbdgFfb1Z0Cp4722I0FjMfCypW1ez72Oa0bgc7SgPL X/p5OV3h9qpVZZbLSnFk5NesPC3hH8gc= X-Google-Smtp-Source: AGHT+IH/c+HzHs3PuLiMQTaAREtVC8AGBWvZSZ9JD/Fhz39viBM1praD95gqU5zluLFC0bfpkpLkOA== X-Received: by 2002:a05:6e02:1a8c:b0:3dc:8bb8:28bf with SMTP id e9e14a558f8ab-3de07c53a5fmr259487895ab.5.1750341117745; Thu, 19 Jun 2025 06:51:57 -0700 (PDT) Received: from presto.localdomain (c-73-228-159-35.hsd1.mn.comcast.net. [73.228.159.35]) by smtp.gmail.com with ESMTPSA id e9e14a558f8ab-3de01a453b4sm38246015ab.47.2025.06.19.06.51.56 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 19 Jun 2025 06:51:57 -0700 (PDT) From: Alex Elder To: lee@kernel.org, robh@kernel.org, krzk+dt@kernel.org, conor+dt@kernel.org, broonie@kernel.org, lgirdwood@gmail.com Cc: wangruikang@iscas.ac.cn, dlan@gentoo.org, troymitchell988@gmail.com, paul.walmsley@sifive.com, palmer@dabbelt.com, aou@eecs.berkeley.edu, alex@ghiti.fr, devicetree@vger.kernel.org, spacemit@lists.linux.dev, linux-riscv@lists.infradead.org, linux-kernel@vger.kernel.org Subject: [PATCH v2 2/6] mfd: spacemit: add support for SpacemiT PMICs Date: Thu, 19 Jun 2025 08:51:46 -0500 Message-ID: <20250619135151.3206258-3-elder@riscstar.com> X-Mailer: git-send-email 2.45.2 In-Reply-To: <20250619135151.3206258-1-elder@riscstar.com> References: <20250619135151.3206258-1-elder@riscstar.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" Add support for SpacemiT PMICs. Initially only the P1 PMIC is supported but the driver is structured to allow support for others to be added. The P1 PMIC is controlled by I2C, and is normally implemented with the SpacemiT K1 SoC. This PMIC provides six buck converters and 12 LDO regulators. It also implements a switch, watchdog timer, real-time clock, and more, but initially we will only support its regulators. Signed-off-by: Alex Elder --- v2: - Use module_i2c_driver() - Expanded Kconfig module help text - Add MODULE_ALIAS(), and define and use DRV_NAME drivers/mfd/Kconfig | 13 ++++++ drivers/mfd/Makefile | 1 + drivers/mfd/spacemit-pmic.c | 83 +++++++++++++++++++++++++++++++++++++ 3 files changed, 97 insertions(+) create mode 100644 drivers/mfd/spacemit-pmic.c diff --git a/drivers/mfd/Kconfig b/drivers/mfd/Kconfig index 6fb3768e3d71c..94c6361dae2f6 100644 --- a/drivers/mfd/Kconfig +++ b/drivers/mfd/Kconfig @@ -1182,6 +1182,19 @@ config MFD_QCOM_RPM Say M here if you want to include support for the Qualcomm RPM as a module. This will build a module called "qcom_rpm". =20 +config MFD_SPACEMIT_PMIC + tristate "SpacemiT PMIC" + depends on ARCH_SPACEMIT || COMPILE_TEST + depends on I2C && OF + select MFD_CORE + select REGMAP_I2C + default ARCH_SPACEMIT + help + This option enables support for SpacemiT I2C based PMICs. At + this time only the P1 PMIC (used with the K1 SoC) is supported. + To compile this driver as a module, choose M here. The module + will be called "spacemit-pmic". + config MFD_SPMI_PMIC tristate "Qualcomm SPMI PMICs" depends on ARCH_QCOM || COMPILE_TEST diff --git a/drivers/mfd/Makefile b/drivers/mfd/Makefile index 79495f9f3457b..59d1ec8db3a3f 100644 --- a/drivers/mfd/Makefile +++ b/drivers/mfd/Makefile @@ -266,6 +266,7 @@ obj-$(CONFIG_MFD_SUN4I_GPADC) +=3D sun4i-gpadc.o obj-$(CONFIG_MFD_STM32_LPTIMER) +=3D stm32-lptimer.o obj-$(CONFIG_MFD_STM32_TIMERS) +=3D stm32-timers.o obj-$(CONFIG_MFD_MXS_LRADC) +=3D mxs-lradc.o +obj-$(CONFIG_MFD_SPACEMIT_PMIC) +=3D spacemit-pmic.o obj-$(CONFIG_MFD_SC27XX_PMIC) +=3D sprd-sc27xx-spi.o obj-$(CONFIG_RAVE_SP_CORE) +=3D rave-sp.o obj-$(CONFIG_MFD_ROHM_BD71828) +=3D rohm-bd71828.o diff --git a/drivers/mfd/spacemit-pmic.c b/drivers/mfd/spacemit-pmic.c new file mode 100644 index 0000000000000..f6cae41baa77a --- /dev/null +++ b/drivers/mfd/spacemit-pmic.c @@ -0,0 +1,83 @@ +// SPDX-License-Identifier: GPL-2.0-only +/* + * Copyright (C) 2025 by RISCstar Solutions Corporation. All rights reser= ved. + * Derived from code from: + * Copyright (C) 2024 Troy Mitchell + */ + +#include +#include +#include +#include +#include +#include +#include +#include + +#define MOD_NAME "spacemit-pmic" + +struct spacemit_pmic_data { + const struct regmap_config *regmap_config; + const struct mfd_cell *mfd_cells; /* array */ + size_t mfd_cell_count; +}; + +static const struct regmap_config p1_regmap_config =3D { + .reg_bits =3D 8, + .val_bits =3D 8, + .max_register =3D 0xaa, +}; + +/* The name field defines the *driver* name that should bind to the device= */ +static const struct mfd_cell p1_cells[] =3D { + { + .name =3D "spacemit-p1-regulator", + }, +}; + +static const struct spacemit_pmic_data p1_pmic_data =3D { + .regmap_config =3D &p1_regmap_config, + .mfd_cells =3D p1_cells, + .mfd_cell_count =3D ARRAY_SIZE(p1_cells), +}; + +static int spacemit_pmic_probe(struct i2c_client *client) +{ + const struct spacemit_pmic_data *data; + struct device *dev =3D &client->dev; + struct regmap *regmap; + + /* We currently have no need for a device-specific structure */ + data =3D of_device_get_match_data(dev); + regmap =3D devm_regmap_init_i2c(client, data->regmap_config); + if (IS_ERR(regmap)) + return dev_err_probe(dev, PTR_ERR(regmap), + "regmap initialization failed"); + + return devm_mfd_add_devices(dev, PLATFORM_DEVID_AUTO, + data->mfd_cells, data->mfd_cell_count, + NULL, 0, NULL); +} + +static const struct of_device_id spacemit_pmic_match[] =3D { + { + .compatible =3D "spacemit,p1", + .data =3D &p1_pmic_data, + }, + { } +}; +MODULE_DEVICE_TABLE(of, spacemit_pmic_match); + +static struct i2c_driver spacemit_pmic_i2c_driver =3D { + .driver =3D { + .name =3D MOD_NAME, + .of_match_table =3D spacemit_pmic_match, + }, + .probe =3D spacemit_pmic_probe, +}; + +module_i2c_driver(spacemit_pmic_i2c_driver); + +MODULE_LICENSE("GPL"); +MODULE_DESCRIPTION("SpacemiT multi-function PMIC driver"); +MODULE_ALIAS("platform:" MOD_NAME); --=20 2.45.2 From nobody Thu Oct 9 07:05:21 2025 Received: from mail-il1-f176.google.com (mail-il1-f176.google.com [209.85.166.176]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 6369328B514 for ; Thu, 19 Jun 2025 13:52:00 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.166.176 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1750341122; cv=none; b=Wwpqfb/xrqnvjgJJFNK8V5cyrrLgDesxWR/kQszBrtUA8X7nzyXBqLXFRJ7CrkHcrX+pfXRM+nX9I2+SpWD8XkqarrOfwDX9RjVqMCKDqcekxcSzZKpAM03uAaFW/lPwSUX+r2lNHOEMVMJ98ESnHrWWNLsX/JrEBr0WrFtx3v0= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1750341122; c=relaxed/simple; bh=c2xzHs0b3NKcK8TunfR4otYBk7f9vf5nPE+Z2Z6YdzE=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=R1RGFRKo1EGif2pG3/4N3pDpTVi81UT6RtTwdXuobBaWpxVmuACQWbyMHsAao567TDdrhcjES/CUxp1BTQhsslpBQUZyM1rzosypUyvHYOzemAKzUKDTWeDrNdAmleW04Vp/SOQiGJHVCx0Iy7G3BBxSHiwsYFfqGpiE+Oep8vs= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=riscstar.com; spf=pass smtp.mailfrom=riscstar.com; dkim=pass (2048-bit key) header.d=riscstar-com.20230601.gappssmtp.com header.i=@riscstar-com.20230601.gappssmtp.com header.b=HrvfffHp; arc=none smtp.client-ip=209.85.166.176 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=riscstar.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=riscstar.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=riscstar-com.20230601.gappssmtp.com header.i=@riscstar-com.20230601.gappssmtp.com header.b="HrvfffHp" Received: by mail-il1-f176.google.com with SMTP id e9e14a558f8ab-3dda399db09so8229455ab.3 for ; Thu, 19 Jun 2025 06:52:00 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=riscstar-com.20230601.gappssmtp.com; s=20230601; t=1750341119; x=1750945919; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=FpqmHlB7kUfZax7xIOqdQVroVOVmtL6b9W451Ta9WWc=; b=HrvfffHpmLOmSjmfCq/FXYgb8iVZaPjjut84h29ThmOorapiXx0lLUIyJNd2gr5L2q zGYcdKT+KF75t8/03HyvPDHjYi7WwQYtICHfyzQ0ofChkmKPnaF+Oe/5mipgUwZx57s/ eSH+QOo0veiwymdInVgDO92c84WAfnL6j2mAVSr2didKrMGuBqhpiI2wyOWM1dz+wASF xntXyaK47Ya5KsLef/LEnhmiNqKs6yIygtLciH5+wgeu8nNqybHYINkmmjn/gkDjr13R hszhzBiqANBpJU2jtuIQ5KJKlKeg78g3NKEiDkBf/aI2gQU1D7nERga3QPLPI4XvCxFo HBaw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1750341119; x=1750945919; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=FpqmHlB7kUfZax7xIOqdQVroVOVmtL6b9W451Ta9WWc=; b=bizwtAtsSSzFg9d5phjA0ffFjS8SL0RVuGfUIQY3igjRmeROWNc97GPDj7NRGrbLwS 9z16P7Q/1skc3zpQCY3/EsNMuEP2ajAmMTUIB9VMpXuRIjf/9tD/bjo3Q5rz3QvU36vs DW6Dbs0iG8aO5cHd5Oz01qy8r/wJvIIqRPgEppuViZlCzTy58ustP/XFvjS/PJ01z7aE 8S5jhfQI/5hpzvbPptC54PvYQ+Ijp/TOS222bidMgqQBNLVOwsnmA53wOb3f8P8+ROjw xxvkzN1nSA9dy78PrX2RmFng1xuhNcqbFV7WQkgNZoaQ0ipIMpaDHSRpYoc/MjjgbV6t pPLg== X-Forwarded-Encrypted: i=1; AJvYcCWui1FHfkVRdg/a41hXpuM20Psw/7upiJ0m041AQp5fIgA643Smgm3fxcnEuOc1Y6sesH4C0dz4Fu+A40k=@vger.kernel.org X-Gm-Message-State: AOJu0Yyv4vFRAAW3DUxDixg8aRXU1JQ63fVELjdXc0pXPchmpKiEMGYA PZAlYbcKTVQHWQqYNJDSdEVKrmuBureM2NcB+Zaesl9BJLCblYSyx+NI9Ajvk29Rnhw= X-Gm-Gg: ASbGncupTfrlUJXdVREv7mr7f9FkzMgzRla5Ck5lsDucu4B51mv6QpNoXEiQ7PHiscg jf8xqmw08d0smqqWmyBENSVEm14F0KQbdovGRocSOEyBwjVGy3kWEz2Jz7y2NWvZiKlL8q1Rlbf D7yo0X9G+ZUpGmT7F9i9sGRsjksC6mtwGbzGfAEmT9bELEPtIxxsUvbzqDptJzjxlYj+CLmQypB rR4RtZSQM6G0GAV8k0zJmzhzYRNXCICp/M+42goy+kSiZJ6ueARFpRvH02yywNWseebGSWkl1xk QDOH6gT17lIxadD4SX5a1KjH00dVRr2puSWzutg05YMt56km9EFlmzWgbsWYz4qcjYNthfOsX9u Kv/unOaz8H1E51LIwCr5kkYD5x8XxiT4= X-Google-Smtp-Source: AGHT+IEKAN1uUQp+lG9Cqo4Kum5y7O8nXA5FH3izpDzjNH9aliRXxwD7/DXQAndjFP1ELdYThgP6oQ== X-Received: by 2002:a05:6e02:330e:b0:3dd:cdf2:fea4 with SMTP id e9e14a558f8ab-3de07cc010amr242759375ab.14.1750341119379; Thu, 19 Jun 2025 06:51:59 -0700 (PDT) Received: from presto.localdomain (c-73-228-159-35.hsd1.mn.comcast.net. [73.228.159.35]) by smtp.gmail.com with ESMTPSA id e9e14a558f8ab-3de01a453b4sm38246015ab.47.2025.06.19.06.51.57 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 19 Jun 2025 06:51:58 -0700 (PDT) From: Alex Elder To: lee@kernel.org, robh@kernel.org, krzk+dt@kernel.org, conor+dt@kernel.org, broonie@kernel.org, lgirdwood@gmail.com Cc: wangruikang@iscas.ac.cn, dlan@gentoo.org, troymitchell988@gmail.com, paul.walmsley@sifive.com, palmer@dabbelt.com, aou@eecs.berkeley.edu, alex@ghiti.fr, devicetree@vger.kernel.org, spacemit@lists.linux.dev, linux-riscv@lists.infradead.org, linux-kernel@vger.kernel.org Subject: [PATCH v2 3/6] regulator: spacemit: support SpacemiT P1 regulators Date: Thu, 19 Jun 2025 08:51:47 -0500 Message-ID: <20250619135151.3206258-4-elder@riscstar.com> X-Mailer: git-send-email 2.45.2 In-Reply-To: <20250619135151.3206258-1-elder@riscstar.com> References: <20250619135151.3206258-1-elder@riscstar.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" Add support for the regulators found in the SpacemiT P1 PMIC. This PMIC provides six buck converters and 12 LDO regulators. The PMIC is implemented as a multi-function device. These regulators are probed based on this driver being named in a MFD cell in the P1 PMIC driver. Signed-off-by: Alex Elder Reviewed-by: Mark Brown --- v2: - Added Mark's Reviewed-by tag - Expanded Kconfig module help text - Add MODULE_ALIAS(), and define and use DRV_NAME drivers/regulator/Kconfig | 11 +++ drivers/regulator/Makefile | 1 + drivers/regulator/spacemit-p1.c | 157 ++++++++++++++++++++++++++++++++ 3 files changed, 169 insertions(+) create mode 100644 drivers/regulator/spacemit-p1.c diff --git a/drivers/regulator/Kconfig b/drivers/regulator/Kconfig index 7423954153b07..ee283339f4e1e 100644 --- a/drivers/regulator/Kconfig +++ b/drivers/regulator/Kconfig @@ -1395,6 +1395,17 @@ config REGULATOR_SLG51000 The SLG51000 is seven compact and customizable low dropout regulators. =20 +config REGULATOR_SPACEMIT_P1 + tristate "SpacemiT P1 regulators" + depends on ARCH_SPACEMIT || COMPILE_TEST + default ARCH_SPACEMIT + help + Enable support for regulators implemented by the SpacemiT P1 + power controller. The P1 implements 6 high-efficiency buck + converters and 12 programmable LDO regulators. To compile this + driver as a module, choose M here. The module will be called + "spacemit-pmic". + config REGULATOR_STM32_BOOSTER tristate "STMicroelectronics STM32 BOOSTER" depends on ARCH_STM32 || COMPILE_TEST diff --git a/drivers/regulator/Makefile b/drivers/regulator/Makefile index be98b29d6675d..278f5b8d1c7d7 100644 --- a/drivers/regulator/Makefile +++ b/drivers/regulator/Makefile @@ -162,6 +162,7 @@ obj-$(CONFIG_REGULATOR_S5M8767) +=3D s5m8767.o obj-$(CONFIG_REGULATOR_SC2731) +=3D sc2731-regulator.o obj-$(CONFIG_REGULATOR_SKY81452) +=3D sky81452-regulator.o obj-$(CONFIG_REGULATOR_SLG51000) +=3D slg51000-regulator.o +obj-$(CONFIG_REGULATOR_SPACEMIT_P1) +=3D spacemit-p1.o obj-$(CONFIG_REGULATOR_STM32_BOOSTER) +=3D stm32-booster.o obj-$(CONFIG_REGULATOR_STM32_VREFBUF) +=3D stm32-vrefbuf.o obj-$(CONFIG_REGULATOR_STM32_PWR) +=3D stm32-pwr.o diff --git a/drivers/regulator/spacemit-p1.c b/drivers/regulator/spacemit-p= 1.c new file mode 100644 index 0000000000000..d437e6738ea1e --- /dev/null +++ b/drivers/regulator/spacemit-p1.c @@ -0,0 +1,157 @@ +// SPDX-License-Identifier: GPL-2.0 +/* + * Driver for regulators found in the SpacemiT P1 PMIC + * + * Copyright (C) 2025 by RISCstar Solutions Corporation. All rights reser= ved. + * Derived from code from SpacemiT. + * Copyright (c) 2023, SPACEMIT Co., Ltd + */ + +#include +#include +#include +#include +#include +#include +#include +#include + +#define MOD_NAME "spacemit-p1-regulator" + +enum p1_regulator_id { + P1_BUCK1, + P1_BUCK2, + P1_BUCK3, + P1_BUCK4, + P1_BUCK5, + P1_BUCK6, + + P1_ALDO1, + P1_ALDO2, + P1_ALDO3, + P1_ALDO4, + + P1_DLDO1, + P1_DLDO2, + P1_DLDO3, + P1_DLDO4, + P1_DLDO5, + P1_DLDO6, + P1_DLDO7, +}; + +static const struct regulator_ops p1_regulator_ops =3D { + .list_voltage =3D regulator_list_voltage_linear_range, + .get_voltage_sel =3D regulator_get_voltage_sel_regmap, + .set_voltage_sel =3D regulator_set_voltage_sel_regmap, + .set_voltage_time_sel =3D regulator_set_voltage_time_sel, + .enable =3D regulator_enable_regmap, + .disable =3D regulator_disable_regmap, + .is_enabled =3D regulator_is_enabled_regmap, +}; + +/* Selector value 255 can be used to disable the buck converter on sleep */ +static const struct linear_range p1_buck_ranges[] =3D { + REGULATOR_LINEAR_RANGE(500000, 0, 170, 5000), + REGULATOR_LINEAR_RANGE(1375000, 171, 254, 25000), +}; + +/* Selector value 0 can be used for suspend */ +static const struct linear_range p1_ldo_ranges[] =3D { + REGULATOR_LINEAR_RANGE(500000, 11, 127, 25000), +}; + +/* These define the voltage selector field for buck and LDO regulators */ +#define BUCK_MASK GENMASK(7, 0) +#define LDO_MASK GENMASK(6, 0) + +#define P1_ID(_TYPE, _n) P1_ ## _TYPE ## _n +#define P1_ENABLE_REG(_off, _n) ((_off) + 3 * ((_n) - 1)) + +#define P1_REG_DESC(_TYPE, _type, _n, _s, _off, _mask, _nv, _ranges) \ + { \ + .name =3D #_type #_n, \ + .supply_name =3D _s, \ + .of_match =3D of_match_ptr(#_type #_n), \ + .regulators_node =3D of_match_ptr("regulators"), \ + .id =3D P1_ID(_TYPE, _n), \ + .n_voltages =3D _nv, \ + .ops =3D &p1_regulator_ops, \ + .owner =3D THIS_MODULE, \ + .linear_ranges =3D _ranges, \ + .n_linear_ranges =3D ARRAY_SIZE(_ranges), \ + .vsel_reg =3D P1_ENABLE_REG(_off, _n) + 1, \ + .vsel_mask =3D _mask, \ + .enable_reg =3D P1_ENABLE_REG(_off, _n), \ + .enable_mask =3D BIT(0), \ + } + +#define P1_BUCK_DESC(_n) \ + P1_REG_DESC(BUCK, buck, _n, "vcc", 0x47, BUCK_MASK, 254, p1_buck_ranges) + +#define P1_ALDO_DESC(_n) \ + P1_REG_DESC(ALDO, aldo, _n, "vcc", 0x5b, LDO_MASK, 117, p1_ldo_ranges) + +#define P1_DLDO_DESC(_n) \ + P1_REG_DESC(DLDO, dldo, _n, "buck5", 0x67, LDO_MASK, 117, p1_ldo_ranges) + +static const struct regulator_desc p1_regulator_desc[] =3D { + P1_BUCK_DESC(1), + P1_BUCK_DESC(2), + P1_BUCK_DESC(3), + P1_BUCK_DESC(4), + P1_BUCK_DESC(5), + P1_BUCK_DESC(6), + + P1_ALDO_DESC(1), + P1_ALDO_DESC(2), + P1_ALDO_DESC(3), + P1_ALDO_DESC(4), + + P1_DLDO_DESC(1), + P1_DLDO_DESC(2), + P1_DLDO_DESC(3), + P1_DLDO_DESC(4), + P1_DLDO_DESC(5), + P1_DLDO_DESC(6), + P1_DLDO_DESC(7), +}; + +static int p1_regulator_probe(struct platform_device *pdev) +{ + struct regulator_config config =3D { }; + struct device *dev =3D &pdev->dev; + u32 i; + + /* + * The parent device (PMIC) owns the regmap. Since we don't + * provide one in the config structure, that one will be used. + */ + config.dev =3D dev->parent; + + for (i =3D 0; i < ARRAY_SIZE(p1_regulator_desc); i++) { + const struct regulator_desc *desc =3D &p1_regulator_desc[i]; + struct regulator_dev *rdev; + + rdev =3D devm_regulator_register(dev, desc, &config); + if (IS_ERR(rdev)) + return dev_err_probe(dev, PTR_ERR(rdev), + "error registering regulator %s\n", + desc->name); + } + + return 0; +} + +static struct platform_driver p1_regulator_driver =3D { + .probe =3D p1_regulator_probe, + .driver =3D { + .name =3D MOD_NAME, + }, +}; + +module_platform_driver(p1_regulator_driver); + +MODULE_DESCRIPTION("SpacemiT P1 regulator driver"); +MODULE_LICENSE("GPL"); +MODULE_ALIAS("platform:" MOD_NAME); --=20 2.45.2 From nobody Thu Oct 9 07:05:21 2025 Received: from mail-il1-f173.google.com (mail-il1-f173.google.com [209.85.166.173]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id A00F428B7E6 for ; Thu, 19 Jun 2025 13:52:01 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.166.173 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1750341123; cv=none; b=t8b9pXkKat98oG/gk4XdxcpqV9EWt6umftobB1nVFFe6vAEwGwUZFGg+v0jfMnIO080bZlIFMkAfk9CfUh6vmugsJkCR5Wvt1v7OFEdoYLWEQSWZ5cFYuuzwsScdcyoXGTUVM7NlWjj0LARGBUpBXxUKjO1uPxI4O1DCS6lJNhg= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1750341123; c=relaxed/simple; bh=PfwZzjjqJBdpG245rW9fZ43Yt8RFpe6Kf9hR0M/wvXw=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=YL5QnSUxnZXv6STltVfhCejZHn0XuS+aMQlPpXTbj1fdcTPJKDogPFpsysphpIAylwVclh+8po0dk2snzpFQ3HdmOzFnMDlKoV31fwJzxeScvM83PLqdNAD2XJob2VhJPL/ACHb0uMkDFHFzCMbMvERi1CkYMC67114njQDyeYk= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=riscstar.com; spf=pass smtp.mailfrom=riscstar.com; dkim=pass (2048-bit key) header.d=riscstar-com.20230601.gappssmtp.com header.i=@riscstar-com.20230601.gappssmtp.com header.b=dCAvpyf9; arc=none smtp.client-ip=209.85.166.173 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=riscstar.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=riscstar.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=riscstar-com.20230601.gappssmtp.com header.i=@riscstar-com.20230601.gappssmtp.com header.b="dCAvpyf9" Received: by mail-il1-f173.google.com with SMTP id e9e14a558f8ab-3ddb4a7ac19so2263535ab.3 for ; Thu, 19 Jun 2025 06:52:01 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=riscstar-com.20230601.gappssmtp.com; s=20230601; t=1750341121; x=1750945921; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=NWnze/SjFdW+lfNDCsnEitBUx1r5ZcEMc14OReZ/axQ=; b=dCAvpyf9Z0VOPh8ylz0gxA/Ry4F/iakNbUZlBTD30BgGjdsZZ1C9PZe4S2wocvsBdM E/hATG0spFH0cIx8NEBrW2ghqL1l5Rj6aqzjBLKGy9Z+vFSjbMUirk1HbYRmD1f44Pjj Y+63OPoSWo2vvEK8vc1v5EaDcjlv494rfuCwrXRxsLpETjIUhQm5LeragzeklcDlEZed 759Xmj1KEXYiPhG1fSB2mVdI7cAwtDQ3v+7G6ATrC4Uk72WqqmZZjEzHdEQMULi6tDcE E8L2Q5lgtNDvL6NhHF/sx6SgE21joXlzwJ/DrxXjH8Xy/9c6H6sHPDsG54DJWLx+PB71 zhEQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1750341121; x=1750945921; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=NWnze/SjFdW+lfNDCsnEitBUx1r5ZcEMc14OReZ/axQ=; b=ZyPmUD22lynamfz5iOMeP72FBnthJNw1Hct1Hiy/pTXoGgkkdy4kzcQHMkBdXWVJjz 6QE3sh2TyLvspeyyyUdtDhU9VCwhXnrYE3rnSQM7mFrXyx5Uuh5Mwn1F7jif9SFC01+5 c7jRP+0Slden9VXv4zKRDztO8zCmb2f3XzZqx5avXXg7r8OFvxssUAyELZEs682XWPJZ RJvRhkWT8r2ZVn4AnqpWC2FlxRKXjeAKIMbCj57fVfcYheP/3mGNDfEvKZBplTVTkZIS TZRmvNCkrZkGT1L1bREpRaxWWgdwQgGmZHTrMEMLcEYZXfYBXuLZEKpIMVIFmNt6Hh19 RV0w== X-Forwarded-Encrypted: i=1; AJvYcCUgO49HYzs0OAYKG8ZlvuBOb5PuojULXzKssEJYBvP07CyEyVhJ9xNecsfoTXG4xaj3U6sjiGGg+H+TmUo=@vger.kernel.org X-Gm-Message-State: AOJu0YyUwSvdmbyjtA5ah9MlDigKtkxvtxrs7Z6Mp1bGlsaLdCRhZD6j EJ7IaHKBaER2z2RclTvBhVbmKGnq9fgUx5hbt6krXA495iF/OzSAr0Ex1I23QUiHfBg= X-Gm-Gg: ASbGncuFE43eirwcKbCOuHPNE95XwmyF+zFsiatp0RlrfQX4efLG4Ml+Ibb4vXJxBHB apyX9Y1tDnYIIZPuOwOqdigM40+elDIWxeFBGDLgyuM9z/1fjS4gcAVC+5ZCGSSv9jyGMO0OZXN 1aR4YzVhuvmtOG5mna154UeoeLlDMO4VeKYhOm2zAY7M0qqRfp/KZYSBXh8EPNbnWuWBzgCvJXM EKTYyQyta3C7oI2YMw4a40iCe5gAFZ4W4Abk80h0ZTWi5i0NAhMKUktcGmtV8RDtw/mAz+QKtUE xd9jZZVLGHOEQ7h0iFjdmqKj0ZTHz+L+yFDrKgkca8a8shgdLQLQ+83TKtLss5meTWts9MJGrBR KytBYGTSWkxLD4Dy3Wm1bL+tyaKLwJkQ= X-Google-Smtp-Source: AGHT+IHj8sY+G51cZweLxsNTuI+RcoQ3J14uLhguTkGCZ/n1ocvbZQ66NvjsIqkyJEywVvtJQ7ynrg== X-Received: by 2002:a05:6e02:260e:b0:3dd:d18a:2d71 with SMTP id e9e14a558f8ab-3de07c4c33cmr286057795ab.2.1750341120674; Thu, 19 Jun 2025 06:52:00 -0700 (PDT) Received: from presto.localdomain (c-73-228-159-35.hsd1.mn.comcast.net. [73.228.159.35]) by smtp.gmail.com with ESMTPSA id e9e14a558f8ab-3de01a453b4sm38246015ab.47.2025.06.19.06.51.59 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 19 Jun 2025 06:52:00 -0700 (PDT) From: Alex Elder To: lee@kernel.org, robh@kernel.org, krzk+dt@kernel.org, conor+dt@kernel.org, broonie@kernel.org, lgirdwood@gmail.com Cc: wangruikang@iscas.ac.cn, dlan@gentoo.org, troymitchell988@gmail.com, paul.walmsley@sifive.com, palmer@dabbelt.com, aou@eecs.berkeley.edu, alex@ghiti.fr, devicetree@vger.kernel.org, spacemit@lists.linux.dev, linux-riscv@lists.infradead.org, linux-kernel@vger.kernel.org Subject: [PATCH v2 4/6] riscv: dts: spacemit: enable the i2c8 adapter Date: Thu, 19 Jun 2025 08:51:48 -0500 Message-ID: <20250619135151.3206258-5-elder@riscstar.com> X-Mailer: git-send-email 2.45.2 In-Reply-To: <20250619135151.3206258-1-elder@riscstar.com> References: <20250619135151.3206258-1-elder@riscstar.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" Define properties for the I2C adapter that provides access to the SpacemiT P1 PMIC. Enable this adapter on the Banana Pi BPI-F3. Signed-off-by: Alex Elder --- arch/riscv/boot/dts/spacemit/k1-bananapi-f3.dts | 15 +++++++++++++++ arch/riscv/boot/dts/spacemit/k1-pinctrl.dtsi | 7 +++++++ arch/riscv/boot/dts/spacemit/k1.dtsi | 11 +++++++++++ 3 files changed, 33 insertions(+) diff --git a/arch/riscv/boot/dts/spacemit/k1-bananapi-f3.dts b/arch/riscv/b= oot/dts/spacemit/k1-bananapi-f3.dts index fe22c747c5012..7c9f91c88e01a 100644 --- a/arch/riscv/boot/dts/spacemit/k1-bananapi-f3.dts +++ b/arch/riscv/boot/dts/spacemit/k1-bananapi-f3.dts @@ -40,6 +40,21 @@ &emmc { status =3D "okay"; }; =20 +&i2c8 { + pinctrl-0 =3D <&i2c8_cfg>; + pinctrl-names =3D "default"; + #address-cells =3D <1>; + #size-cells =3D <0>; + status =3D "okay"; + + pmic@41 { + compatible =3D "spacemit,p1"; + reg =3D <0x41>; + interrupts =3D <64>; + status =3D "okay"; + }; +}; + &uart0 { pinctrl-names =3D "default"; pinctrl-0 =3D <&uart0_2_cfg>; diff --git a/arch/riscv/boot/dts/spacemit/k1-pinctrl.dtsi b/arch/riscv/boot= /dts/spacemit/k1-pinctrl.dtsi index 283663647a86f..9d6d4503fe751 100644 --- a/arch/riscv/boot/dts/spacemit/k1-pinctrl.dtsi +++ b/arch/riscv/boot/dts/spacemit/k1-pinctrl.dtsi @@ -11,6 +11,13 @@ #define K1_GPIO(x) (x / 32) (x % 32) =20 &pinctrl { + i2c8_cfg: i2c8-cfg { + i2c8-0-pins { + pinmux =3D , /* PWR_SCL */ + ; /* PWR_SDA */ + }; + }; + uart0_2_cfg: uart0-2-cfg { uart0-2-pins { pinmux =3D , diff --git a/arch/riscv/boot/dts/spacemit/k1.dtsi b/arch/riscv/boot/dts/spa= cemit/k1.dtsi index 14097f1f6f447..a85239e8e430b 100644 --- a/arch/riscv/boot/dts/spacemit/k1.dtsi +++ b/arch/riscv/boot/dts/spacemit/k1.dtsi @@ -483,6 +483,17 @@ gpio: gpio@d4019000 { <&pinctrl 3 0 96 32>; }; =20 + i2c8: i2c@d401d800 { + compatible =3D "spacemit,k1-i2c"; + reg =3D <0x0 0xd401d800 0x0 0x38>; + interrupts =3D <19>; + clocks =3D <&syscon_apbc CLK_TWSI8>, + <&syscon_apbc CLK_TWSI8_BUS>; + clock-names =3D "func", "bus"; + clock-frequency =3D <400000>; + status =3D "disabled"; + }; + pinctrl: pinctrl@d401e000 { compatible =3D "spacemit,k1-pinctrl"; reg =3D <0x0 0xd401e000 0x0 0x400>; --=20 2.45.2 From nobody Thu Oct 9 07:05:21 2025 Received: from mail-il1-f177.google.com (mail-il1-f177.google.com [209.85.166.177]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id BB27E28BA85 for ; Thu, 19 Jun 2025 13:52:02 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.166.177 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1750341124; cv=none; b=H/yr5jjCBL6jyIkOYw005sRZ4mvCfpPDu5zlWaHwKiDojPy6SncGMV7FLYhPsKi+CKLsgCsx8JMYTeS2lf92BWcXliHDHvvtTyR9FJzfB9VntMpa9aQklQeU3ySYy8fkuzYMY4W+wdSeSzAmJXFp9Yu8QT+0TX/9FFTuLpcZ5hY= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1750341124; c=relaxed/simple; bh=E/I9W6fX+DhSmsmtI3yC9YfnKc4TowcG2XvObw3IonQ=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=cn2EOrqley/u5vSxvyVTYztP1OmM04MlT/gw9ulFccapzaJnS6LMtOEKhAl4YkwuSMJs4FIvZbxS3DRPgj3QtNjWaLUCDjr2H83WgwahZ8H8P+5JIz1p2J0v+1hvGHrV2Jrn4fRkq9X5AlKfXhXf4dJhwUb8oJwZTKfe5YMRCzs= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=riscstar.com; spf=pass smtp.mailfrom=riscstar.com; dkim=pass (2048-bit key) header.d=riscstar-com.20230601.gappssmtp.com header.i=@riscstar-com.20230601.gappssmtp.com header.b=aCtRqmHk; arc=none smtp.client-ip=209.85.166.177 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=riscstar.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=riscstar.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=riscstar-com.20230601.gappssmtp.com header.i=@riscstar-com.20230601.gappssmtp.com header.b="aCtRqmHk" Received: by mail-il1-f177.google.com with SMTP id e9e14a558f8ab-3dc9e7d10bdso2468195ab.2 for ; Thu, 19 Jun 2025 06:52:02 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=riscstar-com.20230601.gappssmtp.com; s=20230601; t=1750341122; x=1750945922; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=bpaBoGbv3UwS2ctJ5MNrLd4WnRBIdXYjgTh8qQmsLHk=; b=aCtRqmHk9F/nPgarYp/AxH8UIwSN5AoyMYkGvpui64GXmMjl/K0Kk9t/1tDm8p6hk8 HJOl6dVd/LkWWrGkXY8M43OIGvIxOkBEaYLUrKT7CjEoBYdyEW2ev/4HfbsNhPfauAwl OQA77XWwnUVr9IAGVRuai+mjrKmnk/9Yc2eGontdv0uToiyYNXzmrE00niSVZxBvBSeh rXBcKgyPM++AkWACeP5HxuPWDAXbeLfSXIYHujU3mk7/xqMxDVIGHjMcvTvi+Qp3lYQk YF0LxYOlmnm27IFXbUX4/T3Y8XLPffxb3LWjGfvCwxpEOasJBE4t/CirqPdzvTx4kgk8 8Y2w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1750341122; x=1750945922; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=bpaBoGbv3UwS2ctJ5MNrLd4WnRBIdXYjgTh8qQmsLHk=; b=FQFkIIOnFzlxuzCgJ2BqiTmityw6Bh16mc68nqPWAwIppUa6IQYqco/8gaeAIh8Oi5 YddIDlfTSwaymSZD0yO+eJsbU/6wDJqbjo5AKtANXdMPEq/HpwknZOM2N6El2yEFWeie mbKCf1WFtL1/sWhneaaXGSWDkrZ5UI+B9Py2Q8VRC3138cfz7iZCC5DGBL0jSJVCsXmb Cj49dmJdXLDPAyMjACYVFsVCGV+jwfsaKZYpvIFO1b5WqOfCq4d6n/vV7eKwSVVaEn8u p7aNMv0gp10iJzuu7fyMOkTDuuavi4uw+ekjdgcnRbVxfkcWgCHK543WIJ0nTPij8ABX u8gA== X-Forwarded-Encrypted: i=1; AJvYcCXQmu+BqoEeVvgaVuZODEJFfxEVq7SjEO5xPTe5HeSxFXdSF2UD8ZmRM2SXw51hjVn9CPdIwsdfJIAuKaQ=@vger.kernel.org X-Gm-Message-State: AOJu0YxR1DPfK2TNyi8BPDqaB3Idyjh7Uh7ygt6hOIXzvWRi2y9XFWZ9 kSXma+ylZTzJ4RBcqEWXzVESu5lPmGYTbJ4ZhE6/e71PGR6YaGe7FUk275zmHBvwVq8= X-Gm-Gg: ASbGncuU7QTFRtS2T8kyUjFtUQFB5YpfGVGXJJHOQYCbUNYBgAw20dTAmCMSNyoofkz Esv81JrNKt8i6zTu1b5Fc7AbqSAAvOE/7gh8exKqt7nq4wQSnMSKsU/G+7nNPld7v4E97OgsDc4 3LXQrGsYlGPvvICiOqKf7ETYY5eFJkBaSXGjjod4QUHQvFxPhBQ07GL1XDvzLWI6zexphzifbhr +tnRcS7timlVOiMeNKVAe0SVJIBA5mwCe/EUwsfXclblYGwJqwndoSYqP0ft5Y9kHqiWa0fKn05 u+d8XOXOPLfZjWMVmV7O7MYAHfOqlwrGihZQsPw3InhVWIcvD8I7/BFC8ifZgi8Ln00av8P5Exr sq6aJnUjWt3fqWF9vRApIkQIA8quJ9Hc= X-Google-Smtp-Source: AGHT+IGE/+9c8lEGLG5Mz9Y+oJ+vIpq7U0/P4Uj/YFoaee96+eti9bY0TLGKxf+d/f/CIswKZrljdQ== X-Received: by 2002:a05:6e02:168b:b0:3dc:7cc1:b731 with SMTP id e9e14a558f8ab-3de07c21db4mr231847495ab.0.1750341121785; Thu, 19 Jun 2025 06:52:01 -0700 (PDT) Received: from presto.localdomain (c-73-228-159-35.hsd1.mn.comcast.net. [73.228.159.35]) by smtp.gmail.com with ESMTPSA id e9e14a558f8ab-3de01a453b4sm38246015ab.47.2025.06.19.06.52.00 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 19 Jun 2025 06:52:01 -0700 (PDT) From: Alex Elder To: lee@kernel.org, robh@kernel.org, krzk+dt@kernel.org, conor+dt@kernel.org, broonie@kernel.org, lgirdwood@gmail.com Cc: wangruikang@iscas.ac.cn, dlan@gentoo.org, troymitchell988@gmail.com, paul.walmsley@sifive.com, palmer@dabbelt.com, aou@eecs.berkeley.edu, alex@ghiti.fr, devicetree@vger.kernel.org, spacemit@lists.linux.dev, linux-riscv@lists.infradead.org, linux-kernel@vger.kernel.org Subject: [PATCH v2 5/6] riscv: dts: spacemit: define fixed regulators Date: Thu, 19 Jun 2025 08:51:49 -0500 Message-ID: <20250619135151.3206258-6-elder@riscstar.com> X-Mailer: git-send-email 2.45.2 In-Reply-To: <20250619135151.3206258-1-elder@riscstar.com> References: <20250619135151.3206258-1-elder@riscstar.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" Define the DC power input and the 4v power as fixed supplies in the Banana Pi BPI-F3. Signed-off-by: Alex Elder --- .../boot/dts/spacemit/k1-bananapi-f3.dts | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/arch/riscv/boot/dts/spacemit/k1-bananapi-f3.dts b/arch/riscv/b= oot/dts/spacemit/k1-bananapi-f3.dts index 7c9f91c88e01a..a1c184b814262 100644 --- a/arch/riscv/boot/dts/spacemit/k1-bananapi-f3.dts +++ b/arch/riscv/boot/dts/spacemit/k1-bananapi-f3.dts @@ -28,6 +28,25 @@ led1 { default-state =3D "on"; }; }; + + reg_dc_in: dc-in-12v { + compatible =3D "regulator-fixed"; + regulator-name =3D "dc_in_12v"; + regulator-min-microvolt =3D <12000000>; + regulator-max-microvolt =3D <12000000>; + regulator-boot-on; + regulator-always-on; + }; + + reg_vcc_4v: vcc-4v { + compatible =3D "regulator-fixed"; + regulator-name =3D "vcc_4v"; + regulator-min-microvolt =3D <4000000>; + regulator-max-microvolt =3D <4000000>; + regulator-boot-on; + regulator-always-on; + vin-supply =3D <®_dc_in>; + }; }; =20 &emmc { --=20 2.45.2 From nobody Thu Oct 9 07:05:21 2025 Received: from mail-io1-f54.google.com (mail-io1-f54.google.com [209.85.166.54]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 20CEB28BAB0 for ; Thu, 19 Jun 2025 13:52:03 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.166.54 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1750341126; cv=none; b=mlAEmcX3UaWy7N7pThRR7FxBB1QJe+QtT9dfarrJ7SPeJe8vt1h6u8dsjAfbwBUCouC1YYIeqbG6SRWQwsmOR5w2BP+PB9Uoe1CNaQ+KLPlspLuZef/DEBB1VVHAz5NO+RrNNVvyQ6IvbonWoBUREmJMkQWh5+bjfp/D0KT2g1o= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1750341126; c=relaxed/simple; bh=WGruvn+Gqs/wHzBEiTs0RVm377PpbfSqb1Lgjf4ooI8=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=DXelymK1m6CCqWsZ1jjBvag+i1tyjiBGA5KQbU7bS1UseyZeQjnmVzNjQLsRmBETYKXrWo/mogzlAjulj6eExC9tQgTuA7UtbW6dGF68S++AImy+UKPT19P7vyaMCHmEKxW2LKxiDmBy8pd0rXsTBbkp5e+UvEBshhqJxQQcZfg= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=riscstar.com; spf=pass smtp.mailfrom=riscstar.com; dkim=pass (2048-bit key) header.d=riscstar-com.20230601.gappssmtp.com header.i=@riscstar-com.20230601.gappssmtp.com header.b=AyIkTgJt; arc=none smtp.client-ip=209.85.166.54 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=riscstar.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=riscstar.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=riscstar-com.20230601.gappssmtp.com header.i=@riscstar-com.20230601.gappssmtp.com header.b="AyIkTgJt" Received: by mail-io1-f54.google.com with SMTP id ca18e2360f4ac-86d1131551eso22296839f.3 for ; Thu, 19 Jun 2025 06:52:03 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=riscstar-com.20230601.gappssmtp.com; s=20230601; t=1750341123; x=1750945923; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=ihUO+G2zPvFD7djd8+4VxSPuuLI+GNqieXaQtnBxio4=; b=AyIkTgJt6+PqSYaQWVu0lx23DQRgEYfHG8YmYUNMGm/40fm91nnfgCLUnksJyUUDca Pa+VZG6tnUN/N4UnbhmfI0hmBHxpmK9itvWStnEMjzSMgGH0Ojkj6mr5OgiKBzkQc1aQ ut4VkJLEj+6eqwCFQ6f2ugrYYgDXf6k+ZGKshthbADfkd5qBsbRa9zT4wqj7+gs9wOKv 2qiJCWjymZinkP+lVwXEmfu91GH9o2j68ABmGIYo/4YbEfC+iSfotrTFHFBQsZZod/8e mOv/j/aWfjUvWkWnLe0ow2svO03olhoHjTvJSUxfOZHuIu34czmrIYLxtU4n1Xcg1cey BnJw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1750341123; x=1750945923; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=ihUO+G2zPvFD7djd8+4VxSPuuLI+GNqieXaQtnBxio4=; b=xSPlOTiPsy30zFq5TVxOweKtu8mRj6GWRCpzrDN+J16xOwZzpfIOZoP6HWBIXBuZMh ZonuHiSwBgPf6yZ+rQzAH59fDybqhZDWRkaoXohyZv+uCAAemVyK8NREXULAzxdtwS3j esrp/DVMkPwqNZ/+a1R+sbOp/q4ZjghcmbbvmXNCfeVtUYMYT5gaSGiSfqTt7RKo3jmt 7bMqrpKOImXa/bhDSqCxRdy+CSg2+fRiw3iHO6M8MZtLDpvAtHiCwoX/uzQkof+yNd0g TEl5hkMPDUSEmXb3OywkicviuYD1OjJiL7B7dOCHJLY4PXNLlFp8MSPQtV0JtbPzFbmU /znA== X-Forwarded-Encrypted: i=1; AJvYcCW/aARYdu/eOBfYWqmUoEVV6yUjaqZXBqU0b6nD/V/Fa6R4eCuHErMh82Zx6SJ06GYAc/sJpgd8SmrS/sc=@vger.kernel.org X-Gm-Message-State: AOJu0YxEa1+KksblmMUKdpDclWCG0lmumjCp9rbOy/4KY3QonTgV8zoa qWCEyoDzyv3CvMxR2u0obUif1A4qYjJ2+flo6SUJH86AbClAaJ+LUhCPLU4SdVAV4FQ= X-Gm-Gg: ASbGncs+/5HB1hGzAD8auLbhij0ldlQWLruHVO6NkiZvfmTmE9hzic4YI7Ev3BYY20J 6mdP8owHdPYDpY4jf7SKWDdrJ3JtIhJFRDFGb6juF7l+FauDKMCA3BwrP+Qms7nC64hVJF/aGLU p4VAsEVDSxEuJXULsp7G1QB1SMgpa4sHJXI2Y6eCYAOpkIo0etaWvrzLou8LpRtPBgHkq7Fuojh NDI4WFo/5wGXuceNkPcX5JAnpsRIvuA21X4poYq1Y1d1gb3SMT8+ZMYuTuyi9KkopXrehDq5VcV rfAqFc67erCivnDdrHiu+EN9XGZnkXXjUixCxjEb68qXlgFnXMccWOZGlmowmGNT/dsXJmbMFHf iTzomZUx29y2fcqmXMZCbnW6oQG2kYWt9JMdQipAZTQ== X-Google-Smtp-Source: AGHT+IExem0l4ezDbiC0YunjYTLQzP9AWFOBkBc8gw8zgbBmASiZICSB36WYhCAntpWfGoVKA6+PlQ== X-Received: by 2002:a05:6e02:1a8a:b0:3dd:ebb4:bcd8 with SMTP id e9e14a558f8ab-3de07c5cc98mr247003285ab.9.1750341122994; Thu, 19 Jun 2025 06:52:02 -0700 (PDT) Received: from presto.localdomain (c-73-228-159-35.hsd1.mn.comcast.net. [73.228.159.35]) by smtp.gmail.com with ESMTPSA id e9e14a558f8ab-3de01a453b4sm38246015ab.47.2025.06.19.06.52.01 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 19 Jun 2025 06:52:02 -0700 (PDT) From: Alex Elder To: lee@kernel.org, robh@kernel.org, krzk+dt@kernel.org, conor+dt@kernel.org, broonie@kernel.org, lgirdwood@gmail.com Cc: wangruikang@iscas.ac.cn, dlan@gentoo.org, troymitchell988@gmail.com, paul.walmsley@sifive.com, palmer@dabbelt.com, aou@eecs.berkeley.edu, alex@ghiti.fr, devicetree@vger.kernel.org, spacemit@lists.linux.dev, linux-riscv@lists.infradead.org, linux-kernel@vger.kernel.org Subject: [PATCH v2 6/6] riscv: dts: spacemit: define regulator constraints Date: Thu, 19 Jun 2025 08:51:50 -0500 Message-ID: <20250619135151.3206258-7-elder@riscstar.com> X-Mailer: git-send-email 2.45.2 In-Reply-To: <20250619135151.3206258-1-elder@riscstar.com> References: <20250619135151.3206258-1-elder@riscstar.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" Define basic constraints for the regulators in the SpacemiT P1 PMIC, as implemented in the Banana Pi BPI-F3. Signed-off-by: Alex Elder --- .../boot/dts/spacemit/k1-bananapi-f3.dts | 104 ++++++++++++++++++ 1 file changed, 104 insertions(+) diff --git a/arch/riscv/boot/dts/spacemit/k1-bananapi-f3.dts b/arch/riscv/b= oot/dts/spacemit/k1-bananapi-f3.dts index a1c184b814262..83907cc1d5ccf 100644 --- a/arch/riscv/boot/dts/spacemit/k1-bananapi-f3.dts +++ b/arch/riscv/boot/dts/spacemit/k1-bananapi-f3.dts @@ -70,7 +70,111 @@ pmic@41 { compatible =3D "spacemit,p1"; reg =3D <0x41>; interrupts =3D <64>; + vin-supply =3D <®_vcc_4v>; status =3D "okay"; + + regulators { + buck1 { + regulator-min-microvolt =3D <500000>; + regulator-max-microvolt =3D <3450000>; + regulator-ramp-delay =3D <5000>; + regulator-always-on; + }; + + buck2 { + regulator-min-microvolt =3D <500000>; + regulator-max-microvolt =3D <3450000>; + regulator-ramp-delay =3D <5000>; + regulator-always-on; + }; + + buck3 { + regulator-min-microvolt =3D <500000>; + regulator-max-microvolt =3D <1800000>; + regulator-ramp-delay =3D <5000>; + regulator-always-on; + }; + + buck4 { + regulator-min-microvolt =3D <500000>; + regulator-max-microvolt =3D <3300000>; + regulator-ramp-delay =3D <5000>; + regulator-always-on; + }; + + buck5 { + regulator-min-microvolt =3D <500000>; + regulator-max-microvolt =3D <3450000>; + regulator-ramp-delay =3D <5000>; + regulator-always-on; + }; + + buck6 { + regulator-min-microvolt =3D <500000>; + regulator-max-microvolt =3D <3450000>; + regulator-ramp-delay =3D <5000>; + regulator-always-on; + }; + + aldo1 { + regulator-min-microvolt =3D <500000>; + regulator-max-microvolt =3D <3400000>; + regulator-boot-on; + }; + + aldo2 { + regulator-min-microvolt =3D <500000>; + regulator-max-microvolt =3D <3400000>; + }; + + aldo3 { + regulator-min-microvolt =3D <500000>; + regulator-max-microvolt =3D <3400000>; + }; + + aldo4 { + regulator-min-microvolt =3D <500000>; + regulator-max-microvolt =3D <3400000>; + }; + + dldo1 { + regulator-min-microvolt =3D <500000>; + regulator-max-microvolt =3D <3400000>; + regulator-boot-on; + }; + + dldo2 { + regulator-min-microvolt =3D <500000>; + regulator-max-microvolt =3D <3400000>; + }; + + dldo3 { + regulator-min-microvolt =3D <500000>; + regulator-max-microvolt =3D <3400000>; + }; + + dldo4 { + regulator-min-microvolt =3D <500000>; + regulator-max-microvolt =3D <3400000>; + regulator-always-on; + }; + + dldo5 { + regulator-min-microvolt =3D <500000>; + regulator-max-microvolt =3D <3400000>; + }; + + dldo6 { + regulator-min-microvolt =3D <500000>; + regulator-max-microvolt =3D <3400000>; + regulator-always-on; + }; + + dldo7 { + regulator-min-microvolt =3D <500000>; + regulator-max-microvolt =3D <3400000>; + }; + }; }; }; =20 --=20 2.45.2