* [PATCH v3 1/3] dt-bindings: mfd: sy7636a: Add missing gpio pins and supply
2025-09-17 7:14 [PATCH v3 0/3] regulator: sy7636a: define and init all resources needed Andreas Kemnade
@ 2025-09-17 7:14 ` Andreas Kemnade
2025-10-08 15:31 ` (subset) " Lee Jones
2025-09-17 7:14 ` [PATCH v3 2/3] regulator: sy7636a: add gpios and input regulator Andreas Kemnade
` (2 subsequent siblings)
3 siblings, 1 reply; 9+ messages in thread
From: Andreas Kemnade @ 2025-09-17 7:14 UTC (permalink / raw)
To: Lee Jones, Rob Herring, Krzysztof Kozlowski, Conor Dooley,
Alistair Francis, Liam Girdwood, Mark Brown, Shawn Guo,
Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam, Frank Li
Cc: devicetree, linux-kernel, imx, linux-arm-kernel, Andreas Kemnade,
Krzysztof Kozlowski
To be able to fully describe how the SY7636A is connected to the system,
add properties for the EN and VCOM_EN pins. To squeeze out every bit
of unused current, in many devices it is possible to power off the
complete chip. Add an input regulator to allow that.
Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Signed-off-by: Andreas Kemnade <akemnade@kernel.org>
---
Documentation/devicetree/bindings/mfd/silergy,sy7636a.yaml | 11 +++++++++++
1 file changed, 11 insertions(+)
diff --git a/Documentation/devicetree/bindings/mfd/silergy,sy7636a.yaml b/Documentation/devicetree/bindings/mfd/silergy,sy7636a.yaml
index ee0be32ac0204..4f829fe75d41d 100644
--- a/Documentation/devicetree/bindings/mfd/silergy,sy7636a.yaml
+++ b/Documentation/devicetree/bindings/mfd/silergy,sy7636a.yaml
@@ -32,6 +32,17 @@ properties:
Specifying the power good GPIOs.
maxItems: 1
+ enable-gpios:
+ maxItems: 1
+
+ vcom-en-gpios:
+ maxItems: 1
+
+ vin-supply:
+ description:
+ Supply for the whole chip. Some vendor kernels and devicetrees
+ declare this as a non-existing GPIO named "pwrall".
+
regulators:
type: object
--
2.47.3
^ permalink raw reply related [flat|nested] 9+ messages in thread* Re: (subset) [PATCH v3 1/3] dt-bindings: mfd: sy7636a: Add missing gpio pins and supply
2025-09-17 7:14 ` [PATCH v3 1/3] dt-bindings: mfd: sy7636a: Add missing gpio pins and supply Andreas Kemnade
@ 2025-10-08 15:31 ` Lee Jones
2025-10-20 13:15 ` Andreas Kemnade
0 siblings, 1 reply; 9+ messages in thread
From: Lee Jones @ 2025-10-08 15:31 UTC (permalink / raw)
To: Lee Jones, Rob Herring, Krzysztof Kozlowski, Conor Dooley,
Alistair Francis, Liam Girdwood, Mark Brown, Shawn Guo,
Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam, Frank Li,
Andreas Kemnade
Cc: devicetree, linux-kernel, imx, linux-arm-kernel,
Krzysztof Kozlowski
On Wed, 17 Sep 2025 09:14:29 +0200, Andreas Kemnade wrote:
> To be able to fully describe how the SY7636A is connected to the system,
> add properties for the EN and VCOM_EN pins. To squeeze out every bit
> of unused current, in many devices it is possible to power off the
> complete chip. Add an input regulator to allow that.
>
>
Applied, thanks!
[1/3] dt-bindings: mfd: sy7636a: Add missing gpio pins and supply
commit: 7d983e997cb53d4c48b61b105163c31c92a35823
--
Lee Jones [李琼斯]
^ permalink raw reply [flat|nested] 9+ messages in thread* Re: (subset) [PATCH v3 1/3] dt-bindings: mfd: sy7636a: Add missing gpio pins and supply
2025-10-08 15:31 ` (subset) " Lee Jones
@ 2025-10-20 13:15 ` Andreas Kemnade
2025-10-21 10:46 ` Lee Jones
0 siblings, 1 reply; 9+ messages in thread
From: Andreas Kemnade @ 2025-10-20 13:15 UTC (permalink / raw)
To: Lee Jones
Cc: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Alistair Francis,
Liam Girdwood, Mark Brown, Shawn Guo, Sascha Hauer,
Pengutronix Kernel Team, Fabio Estevam, Frank Li, Andreas Kemnade,
devicetree, linux-kernel, imx, linux-arm-kernel,
Krzysztof Kozlowski
On Wed, 08 Oct 2025 16:31:57 +0100
Lee Jones <lee@kernel.org> wrote:
> On Wed, 17 Sep 2025 09:14:29 +0200, Andreas Kemnade wrote:
> > To be able to fully describe how the SY7636A is connected to the system,
> > add properties for the EN and VCOM_EN pins. To squeeze out every bit
> > of unused current, in many devices it is possible to power off the
> > complete chip. Add an input regulator to allow that.
> >
> >
>
> Applied, thanks!
>
> [1/3] dt-bindings: mfd: sy7636a: Add missing gpio pins and supply
> commit: 7d983e997cb53d4c48b61b105163c31c92a35823
>
hmm, what is the fate of this? I remember having seen this in your
for-mfd-next-next branch. But now I cannot find it neither in
your mfd-next nor your mfd-next-next nor general linux-next.
Regards,
Andreas
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: (subset) [PATCH v3 1/3] dt-bindings: mfd: sy7636a: Add missing gpio pins and supply
2025-10-20 13:15 ` Andreas Kemnade
@ 2025-10-21 10:46 ` Lee Jones
0 siblings, 0 replies; 9+ messages in thread
From: Lee Jones @ 2025-10-21 10:46 UTC (permalink / raw)
To: Andreas Kemnade
Cc: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Alistair Francis,
Liam Girdwood, Mark Brown, Shawn Guo, Sascha Hauer,
Pengutronix Kernel Team, Fabio Estevam, Frank Li, Andreas Kemnade,
devicetree, linux-kernel, imx, linux-arm-kernel,
Krzysztof Kozlowski
On Mon, 20 Oct 2025, Andreas Kemnade wrote:
> On Wed, 08 Oct 2025 16:31:57 +0100
> Lee Jones <lee@kernel.org> wrote:
>
> > On Wed, 17 Sep 2025 09:14:29 +0200, Andreas Kemnade wrote:
> > > To be able to fully describe how the SY7636A is connected to the system,
> > > add properties for the EN and VCOM_EN pins. To squeeze out every bit
> > > of unused current, in many devices it is possible to power off the
> > > complete chip. Add an input regulator to allow that.
> > >
> > >
> >
> > Applied, thanks!
> >
> > [1/3] dt-bindings: mfd: sy7636a: Add missing gpio pins and supply
> > commit: 7d983e997cb53d4c48b61b105163c31c92a35823
> >
> hmm, what is the fate of this? I remember having seen this in your
> for-mfd-next-next branch. But now I cannot find it neither in
> your mfd-next nor your mfd-next-next nor general linux-next.
It's still applied, only with a different subject line:
https://git.kernel.org/pub/scm/linux/kernel/git/lee/mfd.git/commit/?h=for-mfd-next&id=cb62b0ea2c88c8a3d38b7b4991adbc0aacdb1418
--
Lee Jones [李琼斯]
^ permalink raw reply [flat|nested] 9+ messages in thread
* [PATCH v3 2/3] regulator: sy7636a: add gpios and input regulator
2025-09-17 7:14 [PATCH v3 0/3] regulator: sy7636a: define and init all resources needed Andreas Kemnade
2025-09-17 7:14 ` [PATCH v3 1/3] dt-bindings: mfd: sy7636a: Add missing gpio pins and supply Andreas Kemnade
@ 2025-09-17 7:14 ` Andreas Kemnade
2025-09-17 7:14 ` [PATCH v3 3/3] ARM: dts: imx: e70k02: add sy7636 Andreas Kemnade
2025-10-17 11:24 ` (subset) [PATCH v3 0/3] regulator: sy7636a: define and init all resources needed Mark Brown
3 siblings, 0 replies; 9+ messages in thread
From: Andreas Kemnade @ 2025-09-17 7:14 UTC (permalink / raw)
To: Lee Jones, Rob Herring, Krzysztof Kozlowski, Conor Dooley,
Alistair Francis, Liam Girdwood, Mark Brown, Shawn Guo,
Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam, Frank Li
Cc: devicetree, linux-kernel, imx, linux-arm-kernel, Andreas Kemnade,
Peng Fan
Initialize input regulator and gpios to proper values to have things
basically working as well as in the case when these things are
hardwired.
Reviewed-by: Peng Fan <peng.fan@nxp.com>
Signed-off-by: Andreas Kemnade <akemnade@kernel.org>
---
drivers/regulator/sy7636a-regulator.c | 27 +++++++++++++++++++++++++++
1 file changed, 27 insertions(+)
diff --git a/drivers/regulator/sy7636a-regulator.c b/drivers/regulator/sy7636a-regulator.c
index 27e3d939b7bb9..551647bc10520 100644
--- a/drivers/regulator/sy7636a-regulator.c
+++ b/drivers/regulator/sy7636a-regulator.c
@@ -12,6 +12,7 @@
#include <linux/mfd/sy7636a.h>
#include <linux/module.h>
#include <linux/platform_device.h>
+#include <linux/regulator/consumer.h>
#include <linux/regulator/driver.h>
#include <linux/regulator/machine.h>
#include <linux/regmap.h>
@@ -19,6 +20,8 @@
struct sy7636a_data {
struct regmap *regmap;
struct gpio_desc *pgood_gpio;
+ struct gpio_desc *en_gpio;
+ struct gpio_desc *vcom_en_gpio;
};
static int sy7636a_get_vcom_voltage_op(struct regulator_dev *rdev)
@@ -98,6 +101,30 @@ static int sy7636a_regulator_probe(struct platform_device *pdev)
data->regmap = regmap;
data->pgood_gpio = gdp;
+ ret = devm_regulator_get_enable_optional(&pdev->dev, "vin");
+ if (ret)
+ return dev_err_probe(&pdev->dev, ret,
+ "failed to get vin regulator\n");
+
+ data->en_gpio = devm_gpiod_get_optional(&pdev->dev, "enable",
+ GPIOD_OUT_HIGH);
+ if (IS_ERR(data->en_gpio))
+ return dev_err_probe(&pdev->dev,
+ PTR_ERR(data->en_gpio),
+ "failed to get en gpio\n");
+
+ /* Let VCOM just follow the default power on sequence */
+ data->vcom_en_gpio = devm_gpiod_get_optional(&pdev->dev,
+ "vcom-en", GPIOD_OUT_LOW);
+ if (IS_ERR(data->vcom_en_gpio))
+ return dev_err_probe(&pdev->dev,
+ PTR_ERR(data->vcom_en_gpio),
+ "failed to get vcom-en gpio\n");
+
+ /* if chip was not enabled, give it time to wake up */
+ if (data->en_gpio)
+ usleep_range(2500, 4000);
+
platform_set_drvdata(pdev, data);
ret = regmap_write(regmap, SY7636A_REG_POWER_ON_DELAY_TIME, 0x0);
--
2.47.3
^ permalink raw reply related [flat|nested] 9+ messages in thread* [PATCH v3 3/3] ARM: dts: imx: e70k02: add sy7636
2025-09-17 7:14 [PATCH v3 0/3] regulator: sy7636a: define and init all resources needed Andreas Kemnade
2025-09-17 7:14 ` [PATCH v3 1/3] dt-bindings: mfd: sy7636a: Add missing gpio pins and supply Andreas Kemnade
2025-09-17 7:14 ` [PATCH v3 2/3] regulator: sy7636a: add gpios and input regulator Andreas Kemnade
@ 2025-09-17 7:14 ` Andreas Kemnade
2025-10-20 12:48 ` Shawn Guo
2025-10-17 11:24 ` (subset) [PATCH v3 0/3] regulator: sy7636a: define and init all resources needed Mark Brown
3 siblings, 1 reply; 9+ messages in thread
From: Andreas Kemnade @ 2025-09-17 7:14 UTC (permalink / raw)
To: Lee Jones, Rob Herring, Krzysztof Kozlowski, Conor Dooley,
Alistair Francis, Liam Girdwood, Mark Brown, Shawn Guo,
Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam, Frank Li
Cc: devicetree, linux-kernel, imx, linux-arm-kernel, Andreas Kemnade,
Peng Fan
Add the EPD PMIC for the e70k02 based devices as a step towards full EPD
support.
Acked-by: Alistair Francis <alistair@alistair23.me>
Reviewed-by: Peng Fan <peng.fan@nxp.com>
Signed-off-by: Andreas Kemnade <akemnade@kernel.org>
---
arch/arm/boot/dts/nxp/imx/e70k02.dtsi | 25 +++++++++++++++++++++-
.../arm/boot/dts/nxp/imx/imx6sl-tolino-vision5.dts | 24 +++++++++++++++++++++
.../arm/boot/dts/nxp/imx/imx6sll-kobo-librah2o.dts | 24 +++++++++++++++++++++
3 files changed, 72 insertions(+), 1 deletion(-)
diff --git a/arch/arm/boot/dts/nxp/imx/e70k02.dtsi b/arch/arm/boot/dts/nxp/imx/e70k02.dtsi
index dcc3c9d488a88..b4f42f71c6c49 100644
--- a/arch/arm/boot/dts/nxp/imx/e70k02.dtsi
+++ b/arch/arm/boot/dts/nxp/imx/e70k02.dtsi
@@ -69,6 +69,14 @@ memory@80000000 {
reg = <0x80000000 0x20000000>;
};
+ epd_pmic_supply: regulator-epd-pmic-in {
+ compatible = "regulator-fixed";
+ regulator-name = "epd_pmic_supply";
+ gpio = <&gpio2 14 GPIO_ACTIVE_HIGH>;
+ startup-delay-us = <20000>;
+ enable-active-high;
+ };
+
reg_wifi: regulator-wifi {
compatible = "regulator-fixed";
regulator-name = "SD3_SPWR";
@@ -133,7 +141,22 @@ touchscreen@24 {
vdd-supply = <&ldo5_reg>;
};
- /* TODO: SY7636 PMIC for E Ink at 0x62 */
+ sy7636: pmic@62 {
+ compatible = "silergy,sy7636a";
+ reg = <0x62>;
+ enable-gpios = <&gpio2 8 GPIO_ACTIVE_HIGH>;
+ vcom-en-gpios = <&gpio2 3 GPIO_ACTIVE_HIGH>;
+ epd-pwr-good-gpios = <&gpio2 13 GPIO_ACTIVE_HIGH>;
+ vin-supply = <&epd_pmic_supply>;
+
+ #thermal-sensor-cells = <0>;
+
+ regulators {
+ reg_epdpmic: vcom {
+ regulator-name = "vcom";
+ };
+ };
+ };
};
diff --git a/arch/arm/boot/dts/nxp/imx/imx6sl-tolino-vision5.dts b/arch/arm/boot/dts/nxp/imx/imx6sl-tolino-vision5.dts
index a2534c422a522..f8709a9524093 100644
--- a/arch/arm/boot/dts/nxp/imx/imx6sl-tolino-vision5.dts
+++ b/arch/arm/boot/dts/nxp/imx/imx6sl-tolino-vision5.dts
@@ -26,6 +26,11 @@ / {
compatible = "kobo,tolino-vision5", "fsl,imx6sl";
};
+&epd_pmic_supply {
+ pinctrl-names = "default";
+ pinctrl-0 = <&pinctrl_epd_pmic_supply>;
+};
+
&gpio_keys {
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_gpio_keys>;
@@ -59,6 +64,12 @@ MX6SL_PAD_FEC_RXD1__GPIO4_IO18 0x10059 /* TP_RST */
>;
};
+ pinctrl_epd_pmic_supply: epd-pmic-supplygrp {
+ fsl,pins = <
+ MX6SL_PAD_EPDC_PWRWAKEUP__GPIO2_IO14 0x40010059
+ >;
+ };
+
pinctrl_gpio_keys: gpio-keysgrp {
fsl,pins = <
MX6SL_PAD_FEC_CRS_DV__GPIO4_IO25 0x17059 /* PWR_SW */
@@ -159,6 +170,14 @@ MX6SL_PAD_KEY_COL2__GPIO3_IO28 0x1b8b1 /* ricoh619 bat_low_int */
>;
};
+ pinctrl_sy7636_gpio: sy7636-gpiogrp {
+ fsl,pins = <
+ MX6SL_PAD_EPDC_VCOM0__GPIO2_IO03 0x40010059 /* VCOM_CTRL */
+ MX6SL_PAD_EPDC_PWRCTRL1__GPIO2_IO08 0x40010059 /* EN */
+ MX6SL_PAD_EPDC_PWRSTAT__GPIO2_IO13 0x17059 /* PWR_GOOD */
+ >;
+ };
+
pinctrl_uart1: uart1grp {
fsl,pins = <
MX6SL_PAD_UART1_TXD__UART1_TX_DATA 0x1b0b1
@@ -329,6 +348,11 @@ &ricoh619 {
pinctrl-0 = <&pinctrl_ricoh_gpio>;
};
+&sy7636 {
+ pinctrl-names = "default";
+ pinctrl-0 = <&pinctrl_sy7636_gpio>;
+};
+
&uart1 {
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_uart1>;
diff --git a/arch/arm/boot/dts/nxp/imx/imx6sll-kobo-librah2o.dts b/arch/arm/boot/dts/nxp/imx/imx6sll-kobo-librah2o.dts
index 660620d226f71..19bbe60331b36 100644
--- a/arch/arm/boot/dts/nxp/imx/imx6sll-kobo-librah2o.dts
+++ b/arch/arm/boot/dts/nxp/imx/imx6sll-kobo-librah2o.dts
@@ -36,6 +36,11 @@ &cpu0 {
soc-supply = <&dcdc1_reg>;
};
+&epd_pmic_supply {
+ pinctrl-names = "default";
+ pinctrl-0 = <&pinctrl_epd_pmic_supply>;
+};
+
&gpio_keys {
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_gpio_keys>;
@@ -69,6 +74,12 @@ MX6SLL_PAD_GPIO4_IO18__GPIO4_IO18 0x10059 /* TP_RST */
>;
};
+ pinctrl_epd_pmic_supply: epd-pmic-supplygrp {
+ fsl,pins = <
+ MX6SLL_PAD_EPDC_PWR_WAKE__GPIO2_IO14 0x40010059
+ >;
+ };
+
pinctrl_gpio_keys: gpio-keysgrp {
fsl,pins = <
MX6SLL_PAD_GPIO4_IO25__GPIO4_IO25 0x17059 /* PWR_SW */
@@ -169,6 +180,14 @@ MX6SLL_PAD_KEY_COL2__GPIO3_IO28 0x1b8b1 /* ricoh619 bat_low_int */
>;
};
+ pinctrl_sy7636_gpio: sy7636-gpiogrp {
+ fsl,pins = <
+ MX6SLL_PAD_EPDC_VCOM0__GPIO2_IO03 0x40010059 /* VCOM_CTRL */
+ MX6SLL_PAD_EPDC_PWR_CTRL1__GPIO2_IO08 0x40010059 /* EN */
+ MX6SLL_PAD_EPDC_PWR_STAT__GPIO2_IO13 0x17059 /* PWR_GOOD */
+ >;
+ };
+
pinctrl_uart1: uart1grp {
fsl,pins = <
MX6SLL_PAD_UART1_TXD__UART1_DCE_TX 0x1b0b1
@@ -319,6 +338,11 @@ &ricoh619 {
pinctrl-0 = <&pinctrl_ricoh_gpio>;
};
+&sy7636 {
+ pinctrl-names = "default";
+ pinctrl-0 = <&pinctrl_sy7636_gpio>;
+};
+
&uart1 {
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_uart1>;
--
2.47.3
^ permalink raw reply related [flat|nested] 9+ messages in thread* Re: [PATCH v3 3/3] ARM: dts: imx: e70k02: add sy7636
2025-09-17 7:14 ` [PATCH v3 3/3] ARM: dts: imx: e70k02: add sy7636 Andreas Kemnade
@ 2025-10-20 12:48 ` Shawn Guo
0 siblings, 0 replies; 9+ messages in thread
From: Shawn Guo @ 2025-10-20 12:48 UTC (permalink / raw)
To: Andreas Kemnade
Cc: Lee Jones, Rob Herring, Krzysztof Kozlowski, Conor Dooley,
Alistair Francis, Liam Girdwood, Mark Brown, Shawn Guo,
Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam, Frank Li,
devicetree, linux-kernel, imx, linux-arm-kernel, Peng Fan
On Wed, Sep 17, 2025 at 09:14:31AM +0200, Andreas Kemnade wrote:
> Add the EPD PMIC for the e70k02 based devices as a step towards full EPD
> support.
>
> Acked-by: Alistair Francis <alistair@alistair23.me>
> Reviewed-by: Peng Fan <peng.fan@nxp.com>
> Signed-off-by: Andreas Kemnade <akemnade@kernel.org>
> ---
> arch/arm/boot/dts/nxp/imx/e70k02.dtsi | 25 +++++++++++++++++++++-
> .../arm/boot/dts/nxp/imx/imx6sl-tolino-vision5.dts | 24 +++++++++++++++++++++
> .../arm/boot/dts/nxp/imx/imx6sll-kobo-librah2o.dts | 24 +++++++++++++++++++++
> 3 files changed, 72 insertions(+), 1 deletion(-)
>
> diff --git a/arch/arm/boot/dts/nxp/imx/e70k02.dtsi b/arch/arm/boot/dts/nxp/imx/e70k02.dtsi
> index dcc3c9d488a88..b4f42f71c6c49 100644
> --- a/arch/arm/boot/dts/nxp/imx/e70k02.dtsi
> +++ b/arch/arm/boot/dts/nxp/imx/e70k02.dtsi
> @@ -69,6 +69,14 @@ memory@80000000 {
> reg = <0x80000000 0x20000000>;
> };
>
> + epd_pmic_supply: regulator-epd-pmic-in {
> + compatible = "regulator-fixed";
> + regulator-name = "epd_pmic_supply";
> + gpio = <&gpio2 14 GPIO_ACTIVE_HIGH>;
> + startup-delay-us = <20000>;
> + enable-active-high;
enable-active-high right after gpio = <... GPIO_ACTIVE_HIGH>, as it's a
supplement description for "gpio" property.
Shawn
> + };
> +
> reg_wifi: regulator-wifi {
> compatible = "regulator-fixed";
> regulator-name = "SD3_SPWR";
> @@ -133,7 +141,22 @@ touchscreen@24 {
> vdd-supply = <&ldo5_reg>;
> };
>
> - /* TODO: SY7636 PMIC for E Ink at 0x62 */
> + sy7636: pmic@62 {
> + compatible = "silergy,sy7636a";
> + reg = <0x62>;
> + enable-gpios = <&gpio2 8 GPIO_ACTIVE_HIGH>;
> + vcom-en-gpios = <&gpio2 3 GPIO_ACTIVE_HIGH>;
> + epd-pwr-good-gpios = <&gpio2 13 GPIO_ACTIVE_HIGH>;
> + vin-supply = <&epd_pmic_supply>;
> +
> + #thermal-sensor-cells = <0>;
> +
> + regulators {
> + reg_epdpmic: vcom {
> + regulator-name = "vcom";
> + };
> + };
> + };
>
> };
>
> diff --git a/arch/arm/boot/dts/nxp/imx/imx6sl-tolino-vision5.dts b/arch/arm/boot/dts/nxp/imx/imx6sl-tolino-vision5.dts
> index a2534c422a522..f8709a9524093 100644
> --- a/arch/arm/boot/dts/nxp/imx/imx6sl-tolino-vision5.dts
> +++ b/arch/arm/boot/dts/nxp/imx/imx6sl-tolino-vision5.dts
> @@ -26,6 +26,11 @@ / {
> compatible = "kobo,tolino-vision5", "fsl,imx6sl";
> };
>
> +&epd_pmic_supply {
> + pinctrl-names = "default";
> + pinctrl-0 = <&pinctrl_epd_pmic_supply>;
> +};
> +
> &gpio_keys {
> pinctrl-names = "default";
> pinctrl-0 = <&pinctrl_gpio_keys>;
> @@ -59,6 +64,12 @@ MX6SL_PAD_FEC_RXD1__GPIO4_IO18 0x10059 /* TP_RST */
> >;
> };
>
> + pinctrl_epd_pmic_supply: epd-pmic-supplygrp {
> + fsl,pins = <
> + MX6SL_PAD_EPDC_PWRWAKEUP__GPIO2_IO14 0x40010059
> + >;
> + };
> +
> pinctrl_gpio_keys: gpio-keysgrp {
> fsl,pins = <
> MX6SL_PAD_FEC_CRS_DV__GPIO4_IO25 0x17059 /* PWR_SW */
> @@ -159,6 +170,14 @@ MX6SL_PAD_KEY_COL2__GPIO3_IO28 0x1b8b1 /* ricoh619 bat_low_int */
> >;
> };
>
> + pinctrl_sy7636_gpio: sy7636-gpiogrp {
> + fsl,pins = <
> + MX6SL_PAD_EPDC_VCOM0__GPIO2_IO03 0x40010059 /* VCOM_CTRL */
> + MX6SL_PAD_EPDC_PWRCTRL1__GPIO2_IO08 0x40010059 /* EN */
> + MX6SL_PAD_EPDC_PWRSTAT__GPIO2_IO13 0x17059 /* PWR_GOOD */
> + >;
> + };
> +
> pinctrl_uart1: uart1grp {
> fsl,pins = <
> MX6SL_PAD_UART1_TXD__UART1_TX_DATA 0x1b0b1
> @@ -329,6 +348,11 @@ &ricoh619 {
> pinctrl-0 = <&pinctrl_ricoh_gpio>;
> };
>
> +&sy7636 {
> + pinctrl-names = "default";
> + pinctrl-0 = <&pinctrl_sy7636_gpio>;
> +};
> +
> &uart1 {
> pinctrl-names = "default";
> pinctrl-0 = <&pinctrl_uart1>;
> diff --git a/arch/arm/boot/dts/nxp/imx/imx6sll-kobo-librah2o.dts b/arch/arm/boot/dts/nxp/imx/imx6sll-kobo-librah2o.dts
> index 660620d226f71..19bbe60331b36 100644
> --- a/arch/arm/boot/dts/nxp/imx/imx6sll-kobo-librah2o.dts
> +++ b/arch/arm/boot/dts/nxp/imx/imx6sll-kobo-librah2o.dts
> @@ -36,6 +36,11 @@ &cpu0 {
> soc-supply = <&dcdc1_reg>;
> };
>
> +&epd_pmic_supply {
> + pinctrl-names = "default";
> + pinctrl-0 = <&pinctrl_epd_pmic_supply>;
> +};
> +
> &gpio_keys {
> pinctrl-names = "default";
> pinctrl-0 = <&pinctrl_gpio_keys>;
> @@ -69,6 +74,12 @@ MX6SLL_PAD_GPIO4_IO18__GPIO4_IO18 0x10059 /* TP_RST */
> >;
> };
>
> + pinctrl_epd_pmic_supply: epd-pmic-supplygrp {
> + fsl,pins = <
> + MX6SLL_PAD_EPDC_PWR_WAKE__GPIO2_IO14 0x40010059
> + >;
> + };
> +
> pinctrl_gpio_keys: gpio-keysgrp {
> fsl,pins = <
> MX6SLL_PAD_GPIO4_IO25__GPIO4_IO25 0x17059 /* PWR_SW */
> @@ -169,6 +180,14 @@ MX6SLL_PAD_KEY_COL2__GPIO3_IO28 0x1b8b1 /* ricoh619 bat_low_int */
> >;
> };
>
> + pinctrl_sy7636_gpio: sy7636-gpiogrp {
> + fsl,pins = <
> + MX6SLL_PAD_EPDC_VCOM0__GPIO2_IO03 0x40010059 /* VCOM_CTRL */
> + MX6SLL_PAD_EPDC_PWR_CTRL1__GPIO2_IO08 0x40010059 /* EN */
> + MX6SLL_PAD_EPDC_PWR_STAT__GPIO2_IO13 0x17059 /* PWR_GOOD */
> + >;
> + };
> +
> pinctrl_uart1: uart1grp {
> fsl,pins = <
> MX6SLL_PAD_UART1_TXD__UART1_DCE_TX 0x1b0b1
> @@ -319,6 +338,11 @@ &ricoh619 {
> pinctrl-0 = <&pinctrl_ricoh_gpio>;
> };
>
> +&sy7636 {
> + pinctrl-names = "default";
> + pinctrl-0 = <&pinctrl_sy7636_gpio>;
> +};
> +
> &uart1 {
> pinctrl-names = "default";
> pinctrl-0 = <&pinctrl_uart1>;
>
> --
> 2.47.3
>
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: (subset) [PATCH v3 0/3] regulator: sy7636a: define and init all resources needed
2025-09-17 7:14 [PATCH v3 0/3] regulator: sy7636a: define and init all resources needed Andreas Kemnade
` (2 preceding siblings ...)
2025-09-17 7:14 ` [PATCH v3 3/3] ARM: dts: imx: e70k02: add sy7636 Andreas Kemnade
@ 2025-10-17 11:24 ` Mark Brown
3 siblings, 0 replies; 9+ messages in thread
From: Mark Brown @ 2025-10-17 11:24 UTC (permalink / raw)
To: Lee Jones, Rob Herring, Krzysztof Kozlowski, Conor Dooley,
Alistair Francis, Liam Girdwood, Shawn Guo, Sascha Hauer,
Pengutronix Kernel Team, Fabio Estevam, Frank Li, Andreas Kemnade
Cc: devicetree, linux-kernel, imx, linux-arm-kernel,
Krzysztof Kozlowski, Peng Fan
On Wed, 17 Sep 2025 09:14:28 +0200, Andreas Kemnade wrote:
> The SY7636A has some pins which can be hardwired or used to have more
> more advanced power management available. As several devices containing
> this regulator have these pins not hardwired, but instead connected to some
> GPIO, enhance the driver to have them defined and initialized.
> Also add the ability to power off the chip completely by defining some
> input power supply.
>
> [...]
Applied to
https://git.kernel.org/pub/scm/linux/kernel/git/broonie/regulator.git for-next
Thanks!
[2/3] regulator: sy7636a: add gpios and input regulator
commit: fb25114cd760c13cf177d9ac37837fafcc9657b5
All being well this means that it will be integrated into the linux-next
tree (usually sometime in the next 24 hours) and sent to Linus during
the next merge window (or sooner if it is a bug fix), however if
problems are discovered then the patch may be dropped or reverted.
You may get further e-mails resulting from automated or manual testing
and review of the tree, please engage with people reporting problems and
send followup patches addressing any issues that are reported if needed.
If any updates are required or you are submitting further changes they
should be sent as incremental updates against current git, existing
patches will not be replaced.
Please add any relevant lists and maintainers to the CCs when replying
to this mail.
Thanks,
Mark
^ permalink raw reply [flat|nested] 9+ messages in thread