Thread (16 messages) flat view 16 messages, 3 authors, 2021-12-01

RE: [PATCH v2 3/4] dt-bindings: watchdog: da9062: add watchdog timeout mode

From: Adam Thomson <hidden>
Date: 2021-11-30 17:47:30
Also in: linux-devicetree, linux-watchdog, lkml

On 30 November 2021 16:40, Guenter Roeck wrote:
quoted
quoted
Why does it need a value ? Why not just bool ?
One argument might be that if the property isn't provided then the OTP
configured value can persist without needing a FW change around this DT
binding.
quoted
My belief though is that the majority of users would have this property set to 0
by default in OTP, so a boolean would be OK I think here to enable watchdog
shutdown.
Sorry, you lost me.
	dlg,wdt-sd = <0>;
is the current situation, and identical to not having the property in
the first place.
	dlg,wdt-sd = <1>;
is new. I don't see the difference to
	dlg,wdt-sd;
vs. not having the property at all (which is, again, the current situation).
Since it has to be backward compatible,
	dlg,wdt-sd = <0>;
will always be identical to not having the property at all.
I can not find a situation where an integer would have any benefits over a
boolean.
So if you have a binary DT binding, it's either there or it isn't which implies
the bit to be set to 0/1 in this case. If you have a binding which has a value,
there can be 3 outcomes in this discussion:

 1) Binding = 0, bit is set to 0
 2) Binding = 1, bit is set to 1
 3) Binding NOT present in DT, OTP default value in HW remains untouched

Say a platform updates to a later kernel version, but sticks with existing DT
FW (i.e. the new boolean binding isn't present in FW), then the following could
happen:

 1) OTP for DA9061/2 has this bit set to 1, system expectation is that watchdog
    triggers SHUTDOWN.
 2) New driver checks existance of 'dlg,wdt-sd' but it's obviously not there so
    assumes the bit should be set to 0 and does so
 3) When the watchdog fires, it will no longer trigger SHUTDOWN but instead
    POWER-DOWN due to binary handling of new boolean binding.
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help