On 04.11.2014 09:20, Hugh Kang wrote:
> Hello
>
> On 2014년 11월 03일 21:03, Mark Brown wrote:
>> On Mon, Nov 03, 2014 at 10:26:43AM +0900, Hugh Kang wrote:
>>> From: "hugh.kang" <[email protected]>
>>>
>>> If a regulator is set by always-on option, the regulator will be set
>>> forever.
>>> For example, suppose LDO1 is set to always-on at RevA.dts with including of
>>> a.dtsi. After that
>>> RevB.dts may wants to include the same a.dtsi but override the LDO1
>>> always-on option. However,
>>> currently there is no way to delete the always-on option, even when we
>>> change the LDO1 option value,
>>> the always-on setting is still remains.
>> This sounds like a problem with the way the DTSs have been written - I'd
>> expect the thing to do here is just to move the property to the rev A
>> DTS when rev B is created. Why is that not the way forward?
>>
>> Otherwise this is an issue which affects any boolean property in the DT
>> so if it's something we need to fix we should be fixing it in a generic
>> fashion that will work for other properties too.
>
> I understand that I could make Rev.B with b.dtsi due to LDOs option is
> different. However, aim to use device tree is that making easy steps. Refer
> to dts option, if you set to be set status disabled option, the driver dose
> not probe when the system boot up. Even though, the system has different
> board revision exist. So dts have to be no corrupts any overlap situation.
> I have mentions the simple example to change only one LDOs. However, if
> someone want to edit many regulators with similar configuration, he has to do
> lots of copy and paste works. Because he has to create new dts file. So I
> would suggest to make it as simple as I could.
>
> Also, I have somehow agree with you that affects any boolean property in the
> DT.
Now you propose to have a final DTS like:
$ scripts/dtc/dtc -I dtb -O dts
reg {
regulator-name = "vdd";
regulator-min-microvolt = <850000>;
regulator-max-microvolt = <1100000>;
regulator-always-on;
regulator-disable-always-on;
};
Which one of "always-on" is more important? Later one could add
"regulator-enable-always-even-if-disable-always-on;" ...
The "status" property can be overridden. So maybe the new property
should behave the same way? Something like:
dts-common {
regulator-status-on = "always-on";
regulator-boot-on = "boot-on";
}
dst-rev-b {
regulator-status-on = "default";
regulator-boot-on = "default";
}
Best regards,
Krzysztof
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/