.../boot/dts/allwinner/sun50i-h700-anbernic-rg35xx-2024.dts | 3 +++ 1 file changed, 3 insertions(+)
AXP datasheet says that ramp delay is 15.625 us/step,
which is 10mV in our case.
add missing regulator-ramp-delay to dcdc regulators accordingly
Signed-off-by: Philippe Simons <simons.philippe@gmail.com>
---
.../boot/dts/allwinner/sun50i-h700-anbernic-rg35xx-2024.dts | 3 +++
1 file changed, 3 insertions(+)
diff --git a/arch/arm64/boot/dts/allwinner/sun50i-h700-anbernic-rg35xx-2024.dts b/arch/arm64/boot/dts/allwinner/sun50i-h700-anbernic-rg35xx-2024.dts
index 80ccab7b5..b6e76a804 100644
--- a/arch/arm64/boot/dts/allwinner/sun50i-h700-anbernic-rg35xx-2024.dts
+++ b/arch/arm64/boot/dts/allwinner/sun50i-h700-anbernic-rg35xx-2024.dts
@@ -238,6 +238,7 @@ reg_dcdc1: dcdc1 {
regulator-always-on;
regulator-min-microvolt = <900000>;
regulator-max-microvolt = <1160000>;
+ regulator-ramp-delay = <640>;
regulator-name = "vdd-cpu";
};
@@ -245,6 +246,7 @@ reg_dcdc2: dcdc2 {
regulator-always-on;
regulator-min-microvolt = <940000>;
regulator-max-microvolt = <940000>;
+ regulator-ramp-delay = <640>;
regulator-name = "vdd-gpu-sys";
};
@@ -252,6 +254,7 @@ reg_dcdc3: dcdc3 {
regulator-always-on;
regulator-min-microvolt = <1100000>;
regulator-max-microvolt = <1100000>;
+ regulator-ramp-delay = <640>;
regulator-name = "vdd-dram";
};
--
2.47.1
On Wed, Dec 4, 2024 at 4:38 AM Philippe Simons
<simons.philippe@gmail.com> wrote:
>
> AXP datasheet says that ramp delay is 15.625 us/step,
> which is 10mV in our case.
(CC-ing Mark for knowledge on regulators)
If this is the property of the PMIC, it probably belongs in the driver,
in "regulator_desc.ramp_delay".
The "regulator-ramp-delay" in the DT can be used to override this
if the board has excessive ramp delay due to other design reasons.
ChenYu
> add missing regulator-ramp-delay to dcdc regulators accordingly
>
> Signed-off-by: Philippe Simons <simons.philippe@gmail.com>
> ---
> .../boot/dts/allwinner/sun50i-h700-anbernic-rg35xx-2024.dts | 3 +++
> 1 file changed, 3 insertions(+)
>
> diff --git a/arch/arm64/boot/dts/allwinner/sun50i-h700-anbernic-rg35xx-2024.dts b/arch/arm64/boot/dts/allwinner/sun50i-h700-anbernic-rg35xx-2024.dts
> index 80ccab7b5..b6e76a804 100644
> --- a/arch/arm64/boot/dts/allwinner/sun50i-h700-anbernic-rg35xx-2024.dts
> +++ b/arch/arm64/boot/dts/allwinner/sun50i-h700-anbernic-rg35xx-2024.dts
> @@ -238,6 +238,7 @@ reg_dcdc1: dcdc1 {
> regulator-always-on;
> regulator-min-microvolt = <900000>;
> regulator-max-microvolt = <1160000>;
> + regulator-ramp-delay = <640>;
> regulator-name = "vdd-cpu";
> };
>
> @@ -245,6 +246,7 @@ reg_dcdc2: dcdc2 {
> regulator-always-on;
> regulator-min-microvolt = <940000>;
> regulator-max-microvolt = <940000>;
> + regulator-ramp-delay = <640>;
> regulator-name = "vdd-gpu-sys";
> };
>
> @@ -252,6 +254,7 @@ reg_dcdc3: dcdc3 {
> regulator-always-on;
> regulator-min-microvolt = <1100000>;
> regulator-max-microvolt = <1100000>;
> + regulator-ramp-delay = <640>;
> regulator-name = "vdd-dram";
> };
>
> --
> 2.47.1
>
Ok I can do that, but the driver (axp20x-regulator.c) is using macros
to generate these regulator_desc structs.
So I have two options, create a new macro with the ramp_delay, or
modify the existing macro, using 0 for the regulators I don't know about.
Philippe
On Thu, Dec 5, 2024 at 5:16 AM Chen-Yu Tsai <wens@csie.org> wrote:
>
> On Wed, Dec 4, 2024 at 4:38 AM Philippe Simons
> <simons.philippe@gmail.com> wrote:
> >
> > AXP datasheet says that ramp delay is 15.625 us/step,
> > which is 10mV in our case.
>
> (CC-ing Mark for knowledge on regulators)
>
> If this is the property of the PMIC, it probably belongs in the driver,
> in "regulator_desc.ramp_delay".
>
> The "regulator-ramp-delay" in the DT can be used to override this
> if the board has excessive ramp delay due to other design reasons.
>
>
> ChenYu
>
> > add missing regulator-ramp-delay to dcdc regulators accordingly
> >
> > Signed-off-by: Philippe Simons <simons.philippe@gmail.com>
> > ---
> > .../boot/dts/allwinner/sun50i-h700-anbernic-rg35xx-2024.dts | 3 +++
> > 1 file changed, 3 insertions(+)
> >
> > diff --git a/arch/arm64/boot/dts/allwinner/sun50i-h700-anbernic-rg35xx-2024.dts b/arch/arm64/boot/dts/allwinner/sun50i-h700-anbernic-rg35xx-2024.dts
> > index 80ccab7b5..b6e76a804 100644
> > --- a/arch/arm64/boot/dts/allwinner/sun50i-h700-anbernic-rg35xx-2024.dts
> > +++ b/arch/arm64/boot/dts/allwinner/sun50i-h700-anbernic-rg35xx-2024.dts
> > @@ -238,6 +238,7 @@ reg_dcdc1: dcdc1 {
> > regulator-always-on;
> > regulator-min-microvolt = <900000>;
> > regulator-max-microvolt = <1160000>;
> > + regulator-ramp-delay = <640>;
> > regulator-name = "vdd-cpu";
> > };
> >
> > @@ -245,6 +246,7 @@ reg_dcdc2: dcdc2 {
> > regulator-always-on;
> > regulator-min-microvolt = <940000>;
> > regulator-max-microvolt = <940000>;
> > + regulator-ramp-delay = <640>;
> > regulator-name = "vdd-gpu-sys";
> > };
> >
> > @@ -252,6 +254,7 @@ reg_dcdc3: dcdc3 {
> > regulator-always-on;
> > regulator-min-microvolt = <1100000>;
> > regulator-max-microvolt = <1100000>;
> > + regulator-ramp-delay = <640>;
> > regulator-name = "vdd-dram";
> > };
> >
> > --
> > 2.47.1
> >
On Thu, Dec 5, 2024 at 3:26 PM Philippe Simons
<simons.philippe@gmail.com> wrote:
Please reply inline.
> Ok I can do that, but the driver (axp20x-regulator.c) is using macros
> to generate these regulator_desc structs.
>
> So I have two options, create a new macro with the ramp_delay, or
> modify the existing macro, using 0 for the regulators I don't know about.
You can add a new macro with the extra ramp_delay argument, and modify
the existing macro to expand to that with ramp_delay = 0.
ChenYu
> Philippe
>
> On Thu, Dec 5, 2024 at 5:16 AM Chen-Yu Tsai <wens@csie.org> wrote:
> >
> > On Wed, Dec 4, 2024 at 4:38 AM Philippe Simons
> > <simons.philippe@gmail.com> wrote:
> > >
> > > AXP datasheet says that ramp delay is 15.625 us/step,
> > > which is 10mV in our case.
> >
> > (CC-ing Mark for knowledge on regulators)
> >
> > If this is the property of the PMIC, it probably belongs in the driver,
> > in "regulator_desc.ramp_delay".
> >
> > The "regulator-ramp-delay" in the DT can be used to override this
> > if the board has excessive ramp delay due to other design reasons.
> >
> >
> > ChenYu
> >
> > > add missing regulator-ramp-delay to dcdc regulators accordingly
> > >
> > > Signed-off-by: Philippe Simons <simons.philippe@gmail.com>
> > > ---
> > > .../boot/dts/allwinner/sun50i-h700-anbernic-rg35xx-2024.dts | 3 +++
> > > 1 file changed, 3 insertions(+)
> > >
> > > diff --git a/arch/arm64/boot/dts/allwinner/sun50i-h700-anbernic-rg35xx-2024.dts b/arch/arm64/boot/dts/allwinner/sun50i-h700-anbernic-rg35xx-2024.dts
> > > index 80ccab7b5..b6e76a804 100644
> > > --- a/arch/arm64/boot/dts/allwinner/sun50i-h700-anbernic-rg35xx-2024.dts
> > > +++ b/arch/arm64/boot/dts/allwinner/sun50i-h700-anbernic-rg35xx-2024.dts
> > > @@ -238,6 +238,7 @@ reg_dcdc1: dcdc1 {
> > > regulator-always-on;
> > > regulator-min-microvolt = <900000>;
> > > regulator-max-microvolt = <1160000>;
> > > + regulator-ramp-delay = <640>;
> > > regulator-name = "vdd-cpu";
> > > };
> > >
> > > @@ -245,6 +246,7 @@ reg_dcdc2: dcdc2 {
> > > regulator-always-on;
> > > regulator-min-microvolt = <940000>;
> > > regulator-max-microvolt = <940000>;
> > > + regulator-ramp-delay = <640>;
> > > regulator-name = "vdd-gpu-sys";
> > > };
> > >
> > > @@ -252,6 +254,7 @@ reg_dcdc3: dcdc3 {
> > > regulator-always-on;
> > > regulator-min-microvolt = <1100000>;
> > > regulator-max-microvolt = <1100000>;
> > > + regulator-ramp-delay = <640>;
> > > regulator-name = "vdd-dram";
> > > };
> > >
> > > --
> > > 2.47.1
> > >
© 2016 - 2025 Red Hat, Inc.