Re: [linux-sunxi] Re: [PATCH 52/54] arm64: dts: allwinner: Remove regulator-ramp-delay
From: Icenowy Zheng <icenowy@aosc.io>
Date: 2021-08-06 11:49:22
Also in:
linux-devicetree
在 2021-07-22星期四的 10:16 +0200,Maxime Ripard写道:
On Thu, Jul 22, 2021 at 12:55:53AM -0500, Samuel Holland wrote:quoted
On 7/21/21 9:04 AM, Maxime Ripard wrote:quoted
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
_______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel