On Thu, 17 Sep 2020 20:32:39 +0200, Bastian Krause wrote: > Some RTCs can be equipped with a chargeable battery or supercap. > Every RTC allowing this whose driver's implement it are charged by > default. To disable this the trickle-diode-disable flag exists. > > If a driver did not support charging and some time later one wants to > add that feature, there is currently no way to do it without breaking > dt backwards compatibility. RTCs on boards without the > trickle-diode-disable flag in their device tree would suddenly charge > their battery/supercap which is a change in behavior. > > Change that by introducing aux-voltage-chargeable, not as a flag but as > a uint32 enum allowing to set "do not charge" (0) or "charge" (1). This > dt property is optional, so we can now distinguish these cases. > > Care must be taken to support the old behavior for device trees without > aux-voltage-chargeable nonetheless to stay compatible. > > Signed-off-by: Bastian Krause <bst@xxxxxxxxxxxxxx> > --- > Changes since v1: > - fixed dt_binding_check error by adding " |" after "description:" > > v1 notes: > In a previous series aux-voltage-chargeable was added as a ds1307 dt > property. Discussions lead to turning that into a generic rtc dt > property: > https://lore.kernel.org/linux-rtc/98fa7181-3ebe-d7c3-cfac-fee841c81e15@xxxxxxxxxxxxxx/T/ > --- > Documentation/devicetree/bindings/rtc/rtc.yaml | 10 ++++++++++ > 1 file changed, 10 insertions(+) > Reviewed-by: Rob Herring <robh@xxxxxxxxxx>