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" <hugh.k...@lge.com> >>> >>> 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 majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/