[linux-sunxi] Re: [PATCH 52/54] arm64: dts: allwinner: Remove regulator-ramp-delay

Icenowy Zheng icenowy at aosc.io
Fri Aug 6 04:48:33 PDT 2021


在 2021-07-22星期四的 10:16 +0200,Maxime Ripard写道:
> On Thu, Jul 22, 2021 at 12:55:53AM -0500, Samuel Holland wrote:
> > On 7/21/21 9:04 AM, Maxime Ripard wrote:
> > > The regulator-ramp-delay property isn't documented in the binding
> > > for
> > > the AXP806, and it's ignored by the driver. Remove those
> > > properties.
> > 
> > This is a generic regulator property, parsed by
> > of_get_regulation_constraints, which is called by
> > regulator_of_get_init_data in the regulator core. And it appears in
> > bindings/regulator/regulator.yaml. I believe the binding needs to be
> > fixed, not the device trees.
> 
> It's indeed parsed by the regulator framework, but then it calls into
> the driver if that property is set using set_ramp_delay if it's set.

Not only is it used for set_ramp_delay, but it's also used to calculate
a post-change delay, see the following position (it can be overrided by
a custom set_voltage_time in the driver):

https://elixir.bootlin.com/linux/latest/source/drivers/regulator/core.c#L3339

> 
> https://elixir.bootlin.com/linux/latest/source/drivers/regulator/core.c#L1378
> 
> We don't set that hook for the AXP806 DCDC-A and DCDC-E regulators
> (that
> use AXP_DESC_RANGES) at all:
> 
> https://elixir.bootlin.com/linux/latest/source/drivers/regulator/axp20x-regulator.c#L343
> 
> And the only implementation we have (set for AXP_DESC and AXP_DESC_IO)
> works only for the AXP209:
> 
> https://elixir.bootlin.com/linux/latest/source/drivers/regulator/axp20x-regulator.c#L368
> 
> So, it just looks like those properties have never been tested since
> they were just ignored.
> 
> Maxime
> 




More information about the linux-arm-kernel mailing list