All of lore.kernel.org
 help / color / mirror / Atom feed
From: Alistair Francis <alistair23@gmail.com>
To: Marco Felsch <m.felsch@pengutronix.de>
Cc: Alistair Francis <alistair@alistair23.me>,
	linux-kernel@vger.kernel.org, shawnguo@kernel.org,
	linux-arm-kernel@lists.infradead.org, linux-imx@nxp.com,
	s.hauer@pengutronix.de, robh+dt@kernel.org,
	devicetree@vger.kernel.org, krzysztof.kozlowski+dt@linaro.org,
	arnd@arndb.de, linux@armlinux.org.uk, jernej.skrabec@gmail.com,
	kernel@pengutronix.de, festevam@gmail.com
Subject: Re: [PATCH v2 3/3] ARM: dts: imx7d-remarkable2: Enable the rohm,bd71815
Date: Mon, 9 Jan 2023 22:11:48 +1000	[thread overview]
Message-ID: <CAKmqyKO-Qw3AihUnF7np7_6kr6-ODnXU3aBwph-_9=xSbXRx-Q@mail.gmail.com> (raw)
In-Reply-To: <20221220131715.femjybikqcnm4lyg@pengutronix.de>

On Tue, Dec 20, 2022 at 11:17 PM Marco Felsch <m.felsch@pengutronix.de> wrote:
>
> Hi Alistair,
>
> thanks for your patch, please see below.
>
> On 22-12-20, Alistair Francis wrote:
> > Add support for the rohm,bd71815 power controller controller for the
> > reMarkable 2.
> >
> > Signed-off-by: Alistair Francis <alistair@alistair23.me>
> > ---
> >  arch/arm/boot/dts/imx7d-remarkable2.dts | 159 ++++++++++++++++++++++++
> >  1 file changed, 159 insertions(+)
> >
> > diff --git a/arch/arm/boot/dts/imx7d-remarkable2.dts b/arch/arm/boot/dts/imx7d-remarkable2.dts
> > index a138b292ec6a..4387d30d6180 100644
> > --- a/arch/arm/boot/dts/imx7d-remarkable2.dts
> > +++ b/arch/arm/boot/dts/imx7d-remarkable2.dts
> > @@ -92,6 +92,10 @@ wifi_pwrseq: wifi_pwrseq {
> >       };
> >  };
> >
> > +&cpu0 {
> > +     cpu-supply = <&buck1_reg>;
> > +};
> > +
> >  &clks {
> >       assigned-clocks = <&clks IMX7D_CLKO2_ROOT_SRC>,
> >                         <&clks IMX7D_CLKO2_ROOT_DIV>;
> > @@ -119,6 +123,148 @@ wacom_digitizer: digitizer@9 {
> >       };
> >  };
> >
> > +&i2c2 {
> > +     clock-frequency = <100000>;
>
> We can set this now to 400kHz since the driver can handle quirks now
> internal.

After a discussion on the first patch I'm going to leave this as is.
Let me know if you do want me to change it.

>
> > +     pinctrl-names = "default", "sleep";
> > +     pinctrl-0 = <&pinctrl_i2c2>;
> > +     pinctrl-1 = <&pinctrl_i2c2>;
>
> Do we need a "sleep" config here since this will be the same
> configuration as the "default" one.

Nope, dropped.

>
> > +     status = "okay";
> > +
> > +     bd71815: pmic@4b {
> > +             compatible = "rohm,bd71815";
> > +             reg = <0x4b>;
> > +             pinctrl-names = "default";
> > +             pinctrl-0 = <&pinctrl_bd71815>;
> > +             interrupt-parent = <&gpio6>; /* PMIC_INT_B GPIO6_IO16 */
> > +             interrupts = <16 IRQ_TYPE_LEVEL_LOW>;
> > +             gpio-controller;
> > +             clocks = <&clks IMX7D_CLKO2_ROOT_SRC>;
> > +             clock-output-names = "bd71815-32k-out";
> > +             #clock-cells = <0>;
> > +             #gpio-cells = <1>;
> > +
> > +             regulators {
> > +                     #address-cells = <1>;
> > +                     #size-cells = <0>;
> > +
> > +                     buck1_reg: regulator@0 {
> > +                             reg = <0>;
> > +                             regulator-compatible = "buck1";
> > +                             regulator-min-microvolt = <800000>;
> > +                             regulator-max-microvolt = <2000000>;
> > +                             regulator-boot-on;
> > +                             regulator-always-on;
> > +                             regulator-ramp-delay = <1250>;
> > +                     };
> > +
> > +                     buck2_reg: regulator@1 {
> > +                             reg = <1>;
> > +                             regulator-compatible = "buck2";
> > +                             regulator-min-microvolt = <800000>;
> > +                             regulator-max-microvolt = <2000000>;
> > +                             regulator-boot-on;
> > +                             regulator-always-on;
> > +                             regulator-ramp-delay = <1250>;
> > +                     };
> > +
> > +                     buck3_reg: regulator@2 {
> > +                             reg = <2>;
> > +                             regulator-compatible = "buck3";
> > +                             regulator-min-microvolt = <1200000>;
> > +                             regulator-max-microvolt = <2700000>;
> > +                             regulator-boot-on;
> > +                             regulator-always-on;
> > +                     };
> > +
> > +                     buck4_reg: regulator@3 {
> > +                             reg = <3>;
> > +                             regulator-compatible = "buck4";
> > +                             regulator-min-microvolt = <1100000>;
> > +                             regulator-max-microvolt = <1850000>;
> > +                             regulator-boot-on;
> > +                             regulator-always-on;
> > +                     };
> > +
> > +                     buck5_reg: regulator@4 {
> > +                             reg = <4>;
> > +                             regulator-compatible = "buck5";
> > +                             regulator-min-microvolt = <1800000>;
> > +                             regulator-max-microvolt = <3300000>;
> > +                             regulator-boot-on;
> > +                             regulator-always-on;
> > +                     };
> > +
> > +                     ldo1_reg: regulator@5 {
> > +                             reg = <5>;
> > +                             regulator-compatible = "ldo1";
> > +                             regulator-min-microvolt = <800000>;
> > +                             regulator-max-microvolt = <3300000>;
> > +                             regulator-boot-on;
> > +                             regulator-always-on;
> > +                     };
> > +
> > +                     ldo2_reg: regulator@6 {
> > +                             reg = <6>;
> > +                             regulator-compatible = "ldo2";
> > +                             regulator-min-microvolt = <800000>;
> > +                             regulator-max-microvolt = <3300000>;
> > +                             regulator-boot-on;
> > +                             regulator-always-on;
> > +                     };
> > +
> > +                     ldo3_reg: regulator@7 {
> > +                             reg = <7>;
> > +                             regulator-compatible = "ldo3";
> > +                             regulator-min-microvolt = <800000>;
> > +                             regulator-max-microvolt = <3300000>;
> > +                             regulator-boot-on;
> > +                             regulator-always-on;
> > +                     };
> > +
> > +                     ldo4_reg: regulator@8 {
> > +                             reg = <8>;
> > +                             regulator-compatible = "ldo4";
> > +                             regulator-min-microvolt = <800000>;
> > +                             regulator-max-microvolt = <3300000>;
> > +                             regulator-boot-on;
> > +                             regulator-always-on;
> > +                     };
> > +
> > +                     ldo5_reg: regulator@9 {
> > +                             reg = <9>;
> > +                             regulator-compatible = "ldo5";
> > +                             regulator-min-microvolt = <800000>;
> > +                             regulator-max-microvolt = <3300000>;
> > +                             regulator-boot-on;
> > +                             regulator-always-on;
> > +                     };
> > +
> > +                     dvref_reg: regulator@a {
> > +                             reg = <0xa>;
> > +                             regulator-compatible = "dvref";
> > +                             regulator-boot-on;
> > +                             regulator-always-on;
> > +                     };
> > +
> > +                     lpsr_reg: regulator@b {
> > +                             reg = <0xb>;
> > +                             regulator-compatible = "lpsr";
> > +                             regulator-boot-on;
> > +                             regulator-always-on;
> > +                     };
> > +
> > +                     wled_reg: regulator@c {
> > +                             reg = <0xc>;
> > +                             regulator-compatible = "wled";
> > +                             regulator-min-microamp = <10>;
> > +                             regulator-max-microamp = <25000>;
> > +                             regulator-boot-on;
> > +                             regulator-always-on;
> > +                     };
>
> Note: You have marked all regulators as always on, this is rather
> suboptimal due to power consumption.

Good point. The power consumption is already pretty bad, as mainline
doesn't support the i.MX deep sleep. As I know this works I'd like to
keep it as is. I'll test to see if removing them doesn't break
anything and then send a follow up patch.

Alistair

>
> Regards,
>   Marco
>

WARNING: multiple messages have this Message-ID (diff)
From: Alistair Francis <alistair23@gmail.com>
To: Marco Felsch <m.felsch@pengutronix.de>
Cc: Alistair Francis <alistair@alistair23.me>,
	linux-kernel@vger.kernel.org,  shawnguo@kernel.org,
	linux-arm-kernel@lists.infradead.org, linux-imx@nxp.com,
	 s.hauer@pengutronix.de, robh+dt@kernel.org,
	devicetree@vger.kernel.org,  krzysztof.kozlowski+dt@linaro.org,
	arnd@arndb.de, linux@armlinux.org.uk,  jernej.skrabec@gmail.com,
	kernel@pengutronix.de, festevam@gmail.com
Subject: Re: [PATCH v2 3/3] ARM: dts: imx7d-remarkable2: Enable the rohm,bd71815
Date: Mon, 9 Jan 2023 22:11:48 +1000	[thread overview]
Message-ID: <CAKmqyKO-Qw3AihUnF7np7_6kr6-ODnXU3aBwph-_9=xSbXRx-Q@mail.gmail.com> (raw)
In-Reply-To: <20221220131715.femjybikqcnm4lyg@pengutronix.de>

On Tue, Dec 20, 2022 at 11:17 PM Marco Felsch <m.felsch@pengutronix.de> wrote:
>
> Hi Alistair,
>
> thanks for your patch, please see below.
>
> On 22-12-20, Alistair Francis wrote:
> > Add support for the rohm,bd71815 power controller controller for the
> > reMarkable 2.
> >
> > Signed-off-by: Alistair Francis <alistair@alistair23.me>
> > ---
> >  arch/arm/boot/dts/imx7d-remarkable2.dts | 159 ++++++++++++++++++++++++
> >  1 file changed, 159 insertions(+)
> >
> > diff --git a/arch/arm/boot/dts/imx7d-remarkable2.dts b/arch/arm/boot/dts/imx7d-remarkable2.dts
> > index a138b292ec6a..4387d30d6180 100644
> > --- a/arch/arm/boot/dts/imx7d-remarkable2.dts
> > +++ b/arch/arm/boot/dts/imx7d-remarkable2.dts
> > @@ -92,6 +92,10 @@ wifi_pwrseq: wifi_pwrseq {
> >       };
> >  };
> >
> > +&cpu0 {
> > +     cpu-supply = <&buck1_reg>;
> > +};
> > +
> >  &clks {
> >       assigned-clocks = <&clks IMX7D_CLKO2_ROOT_SRC>,
> >                         <&clks IMX7D_CLKO2_ROOT_DIV>;
> > @@ -119,6 +123,148 @@ wacom_digitizer: digitizer@9 {
> >       };
> >  };
> >
> > +&i2c2 {
> > +     clock-frequency = <100000>;
>
> We can set this now to 400kHz since the driver can handle quirks now
> internal.

After a discussion on the first patch I'm going to leave this as is.
Let me know if you do want me to change it.

>
> > +     pinctrl-names = "default", "sleep";
> > +     pinctrl-0 = <&pinctrl_i2c2>;
> > +     pinctrl-1 = <&pinctrl_i2c2>;
>
> Do we need a "sleep" config here since this will be the same
> configuration as the "default" one.

Nope, dropped.

>
> > +     status = "okay";
> > +
> > +     bd71815: pmic@4b {
> > +             compatible = "rohm,bd71815";
> > +             reg = <0x4b>;
> > +             pinctrl-names = "default";
> > +             pinctrl-0 = <&pinctrl_bd71815>;
> > +             interrupt-parent = <&gpio6>; /* PMIC_INT_B GPIO6_IO16 */
> > +             interrupts = <16 IRQ_TYPE_LEVEL_LOW>;
> > +             gpio-controller;
> > +             clocks = <&clks IMX7D_CLKO2_ROOT_SRC>;
> > +             clock-output-names = "bd71815-32k-out";
> > +             #clock-cells = <0>;
> > +             #gpio-cells = <1>;
> > +
> > +             regulators {
> > +                     #address-cells = <1>;
> > +                     #size-cells = <0>;
> > +
> > +                     buck1_reg: regulator@0 {
> > +                             reg = <0>;
> > +                             regulator-compatible = "buck1";
> > +                             regulator-min-microvolt = <800000>;
> > +                             regulator-max-microvolt = <2000000>;
> > +                             regulator-boot-on;
> > +                             regulator-always-on;
> > +                             regulator-ramp-delay = <1250>;
> > +                     };
> > +
> > +                     buck2_reg: regulator@1 {
> > +                             reg = <1>;
> > +                             regulator-compatible = "buck2";
> > +                             regulator-min-microvolt = <800000>;
> > +                             regulator-max-microvolt = <2000000>;
> > +                             regulator-boot-on;
> > +                             regulator-always-on;
> > +                             regulator-ramp-delay = <1250>;
> > +                     };
> > +
> > +                     buck3_reg: regulator@2 {
> > +                             reg = <2>;
> > +                             regulator-compatible = "buck3";
> > +                             regulator-min-microvolt = <1200000>;
> > +                             regulator-max-microvolt = <2700000>;
> > +                             regulator-boot-on;
> > +                             regulator-always-on;
> > +                     };
> > +
> > +                     buck4_reg: regulator@3 {
> > +                             reg = <3>;
> > +                             regulator-compatible = "buck4";
> > +                             regulator-min-microvolt = <1100000>;
> > +                             regulator-max-microvolt = <1850000>;
> > +                             regulator-boot-on;
> > +                             regulator-always-on;
> > +                     };
> > +
> > +                     buck5_reg: regulator@4 {
> > +                             reg = <4>;
> > +                             regulator-compatible = "buck5";
> > +                             regulator-min-microvolt = <1800000>;
> > +                             regulator-max-microvolt = <3300000>;
> > +                             regulator-boot-on;
> > +                             regulator-always-on;
> > +                     };
> > +
> > +                     ldo1_reg: regulator@5 {
> > +                             reg = <5>;
> > +                             regulator-compatible = "ldo1";
> > +                             regulator-min-microvolt = <800000>;
> > +                             regulator-max-microvolt = <3300000>;
> > +                             regulator-boot-on;
> > +                             regulator-always-on;
> > +                     };
> > +
> > +                     ldo2_reg: regulator@6 {
> > +                             reg = <6>;
> > +                             regulator-compatible = "ldo2";
> > +                             regulator-min-microvolt = <800000>;
> > +                             regulator-max-microvolt = <3300000>;
> > +                             regulator-boot-on;
> > +                             regulator-always-on;
> > +                     };
> > +
> > +                     ldo3_reg: regulator@7 {
> > +                             reg = <7>;
> > +                             regulator-compatible = "ldo3";
> > +                             regulator-min-microvolt = <800000>;
> > +                             regulator-max-microvolt = <3300000>;
> > +                             regulator-boot-on;
> > +                             regulator-always-on;
> > +                     };
> > +
> > +                     ldo4_reg: regulator@8 {
> > +                             reg = <8>;
> > +                             regulator-compatible = "ldo4";
> > +                             regulator-min-microvolt = <800000>;
> > +                             regulator-max-microvolt = <3300000>;
> > +                             regulator-boot-on;
> > +                             regulator-always-on;
> > +                     };
> > +
> > +                     ldo5_reg: regulator@9 {
> > +                             reg = <9>;
> > +                             regulator-compatible = "ldo5";
> > +                             regulator-min-microvolt = <800000>;
> > +                             regulator-max-microvolt = <3300000>;
> > +                             regulator-boot-on;
> > +                             regulator-always-on;
> > +                     };
> > +
> > +                     dvref_reg: regulator@a {
> > +                             reg = <0xa>;
> > +                             regulator-compatible = "dvref";
> > +                             regulator-boot-on;
> > +                             regulator-always-on;
> > +                     };
> > +
> > +                     lpsr_reg: regulator@b {
> > +                             reg = <0xb>;
> > +                             regulator-compatible = "lpsr";
> > +                             regulator-boot-on;
> > +                             regulator-always-on;
> > +                     };
> > +
> > +                     wled_reg: regulator@c {
> > +                             reg = <0xc>;
> > +                             regulator-compatible = "wled";
> > +                             regulator-min-microamp = <10>;
> > +                             regulator-max-microamp = <25000>;
> > +                             regulator-boot-on;
> > +                             regulator-always-on;
> > +                     };
>
> Note: You have marked all regulators as always on, this is rather
> suboptimal due to power consumption.

Good point. The power consumption is already pretty bad, as mainline
doesn't support the i.MX deep sleep. As I know this works I'd like to
keep it as is. I'll test to see if removing them doesn't break
anything and then send a follow up patch.

Alistair

>
> Regards,
>   Marco
>

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

  reply	other threads:[~2023-01-09 12:12 UTC|newest]

Thread overview: 26+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-12-20 11:29 [PATCH v2 0/3] imx7d-remarkable2: Enable cyttsp5 and rohm,bd71815 Alistair Francis
2022-12-20 11:29 ` Alistair Francis
2022-12-20 11:29 ` [PATCH v2 1/3] ARM: dts: imx7d-remarkable2: Enable the cyttsp5 Alistair Francis
2022-12-20 11:29   ` Alistair Francis
2022-12-20 13:20   ` Marco Felsch
2022-12-20 13:20     ` Marco Felsch
2022-12-20 16:50     ` Ahmad Fatoum
2022-12-20 16:50       ` Ahmad Fatoum
2023-01-06 12:44       ` Alistair Francis
2023-01-06 12:44         ` Alistair Francis
2022-12-20 11:29 ` [PATCH v2 2/3] ARM: imx_v6_v7_defconfig: Enable rohm,bd71815 Alistair Francis
2022-12-20 11:29   ` Alistair Francis
2022-12-20 11:29 ` [PATCH v2 3/3] ARM: dts: imx7d-remarkable2: Enable the rohm,bd71815 Alistair Francis
2022-12-20 11:29   ` Alistair Francis
2022-12-20 13:17   ` Marco Felsch
2022-12-20 13:17     ` Marco Felsch
2023-01-09 12:11     ` Alistair Francis [this message]
2023-01-09 12:11       ` Alistair Francis
2023-01-09 19:13       ` Matti Vaittinen
2023-01-09 19:13         ` Matti Vaittinen
2023-01-20  9:17         ` Alistair Francis
2023-01-20  9:17           ` Alistair Francis
2023-01-20 14:01           ` Matti Vaittinen
2023-01-20 14:01             ` Matti Vaittinen
2023-01-21 12:47             ` Alistair Francis
2023-01-21 12:47               ` Alistair Francis

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to='CAKmqyKO-Qw3AihUnF7np7_6kr6-ODnXU3aBwph-_9=xSbXRx-Q@mail.gmail.com' \
    --to=alistair23@gmail.com \
    --cc=alistair@alistair23.me \
    --cc=arnd@arndb.de \
    --cc=devicetree@vger.kernel.org \
    --cc=festevam@gmail.com \
    --cc=jernej.skrabec@gmail.com \
    --cc=kernel@pengutronix.de \
    --cc=krzysztof.kozlowski+dt@linaro.org \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-imx@nxp.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux@armlinux.org.uk \
    --cc=m.felsch@pengutronix.de \
    --cc=robh+dt@kernel.org \
    --cc=s.hauer@pengutronix.de \
    --cc=shawnguo@kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.