diff mbox series

[v2,2/3] dt-bindings: watchdog: fsl-imx: document suspend in wait mode

Message ID 20221025072533.2980154-3-andrej.picej@norik.com
State New
Headers show
Series Suspending i.MX watchdog in WAIT mode | expand

Commit Message

Andrej Picej Oct. 25, 2022, 7:25 a.m. UTC
Property "fsl,suspend-in-wait" suspends watchdog in "WAIT" mode which
corresponds to Linux's Suspend-to-Idle S0 mode. If this property is not
set and the device is put into Suspend-to-Idle mode, the watchdog
triggers a reset after 128 seconds.

Signed-off-by: Andrej Picej <andrej.picej@norik.com>
Reviewed-by: Fabio Estevam <festevam@gmail.com>
---
Changes in v2:
 - add a commit message,
 - add a list of devices which support this functionality
---
 .../bindings/watchdog/fsl-imx-wdt.yaml        | 22 +++++++++++++++++++
 1 file changed, 22 insertions(+)

Comments

Krzysztof Kozlowski Oct. 25, 2022, 1:48 p.m. UTC | #1
On 25/10/2022 03:25, Andrej Picej wrote:
> Property "fsl,suspend-in-wait" suspends watchdog in "WAIT" mode which
> corresponds to Linux's Suspend-to-Idle S0 mode. If this property is not
> set and the device is put into Suspend-to-Idle mode, the watchdog
> triggers a reset after 128 seconds.
> 
> Signed-off-by: Andrej Picej <andrej.picej@norik.com>
> Reviewed-by: Fabio Estevam <festevam@gmail.com>
> ---
> Changes in v2:
>  - add a commit message,
>  - add a list of devices which support this functionality
> ---
>  .../bindings/watchdog/fsl-imx-wdt.yaml        | 22 +++++++++++++++++++
>  1 file changed, 22 insertions(+)
> 
> diff --git a/Documentation/devicetree/bindings/watchdog/fsl-imx-wdt.yaml b/Documentation/devicetree/bindings/watchdog/fsl-imx-wdt.yaml
> index fb7695515be1..9289de97859b 100644
> --- a/Documentation/devicetree/bindings/watchdog/fsl-imx-wdt.yaml
> +++ b/Documentation/devicetree/bindings/watchdog/fsl-imx-wdt.yaml
> @@ -55,6 +55,28 @@ properties:
>        If present, the watchdog device is configured to assert its
>        external reset (WDOG_B) instead of issuing a software reset.
>  
> +  fsl,suspend-in-wait:
> +    $ref: /schemas/types.yaml#/definitions/flag
> +    description: |
> +      If present, the watchdog device is suspended in WAIT mode
> +      (Suspend-to-Idle). Only supported on following devices:
> +        - "fsl,imx25-wdt",

You need to define such allow/disallow in allOf:if:then, instead. Like
example-schema is doing for foo-supply, just disallow it for some types
or use "if: not: ..."

Best regards,
Krzysztof
Krzysztof Kozlowski Oct. 26, 2022, 2:12 p.m. UTC | #2
On 26/10/2022 02:38, Andrej Picej wrote:
> On 25. 10. 22 15:48, Krzysztof Kozlowski wrote:
>> On 25/10/2022 03:25, Andrej Picej wrote:
>>> Property "fsl,suspend-in-wait" suspends watchdog in "WAIT" mode which
>>> corresponds to Linux's Suspend-to-Idle S0 mode. If this property is not
>>> set and the device is put into Suspend-to-Idle mode, the watchdog
>>> triggers a reset after 128 seconds.
>>>
>>> Signed-off-by: Andrej Picej <andrej.picej@norik.com>
>>> Reviewed-by: Fabio Estevam <festevam@gmail.com>
>>> ---
>>> Changes in v2:
>>>   - add a commit message,
>>>   - add a list of devices which support this functionality
>>> ---
>>>   .../bindings/watchdog/fsl-imx-wdt.yaml        | 22 +++++++++++++++++++
>>>   1 file changed, 22 insertions(+)
>>>
>>> diff --git a/Documentation/devicetree/bindings/watchdog/fsl-imx-wdt.yaml b/Documentation/devicetree/bindings/watchdog/fsl-imx-wdt.yaml
>>> index fb7695515be1..9289de97859b 100644
>>> --- a/Documentation/devicetree/bindings/watchdog/fsl-imx-wdt.yaml
>>> +++ b/Documentation/devicetree/bindings/watchdog/fsl-imx-wdt.yaml
>>> @@ -55,6 +55,28 @@ properties:
>>>         If present, the watchdog device is configured to assert its
>>>         external reset (WDOG_B) instead of issuing a software reset.
>>>   
>>> +  fsl,suspend-in-wait:
>>> +    $ref: /schemas/types.yaml#/definitions/flag
>>> +    description: |
>>> +      If present, the watchdog device is suspended in WAIT mode
>>> +      (Suspend-to-Idle). Only supported on following devices:
>>> +        - "fsl,imx25-wdt",
>>
>> You need to define such allow/disallow in allOf:if:then, instead. Like
>> example-schema is doing for foo-supply, just disallow it for some types
>> or use "if: not: ..."
> 
> Sorry missed that. So something like that should be added?:
> 
>> allOf:
>>   - if:
>>       not:
>>         properties:
>>           compatible:
>>             contains:
>>               enum:
>>                 - fsl,imx25-wdt
>>                 - fsl,imx35-wdt
>>                 - fsl,imx50-wdt
>>                 - fsl,imx51-wdt
>>                 - fsl,imx53-wdt
>>                 - fsl,imx6q-wdt
>>                 - fsl,imx6sl-wdt
>>                 - fsl,imx6sll-wdt
>>                 - fsl,imx6sx-wdt
>>                 - fsl,imx6ul-wdt
>>                 - fsl,imx7d-wdt
>>                 - fsl,imx8mm-wdt
>>                 - fsl,imx8mn-wdt
>>                 - fsl,imx8mp-wdt
>>                 - fsl,imx8mq-wdt
>>                 - fsl,vf610-wdt

Yes.

>>     then:
>>       properties:
>>         fsl,suspend-in-wait: false
> 
> And I'm assuming I can then remove the supported devices list from 
> property description.

Yes.

> 
> Are you fine with this, so we don't have to split the compatible list 
> like Alexander suggested? Basically we have the same list of WDW 
> supported devices in the driver.

I don't know to what you refer.

Best regards,
Krzysztof
diff mbox series

Patch

diff --git a/Documentation/devicetree/bindings/watchdog/fsl-imx-wdt.yaml b/Documentation/devicetree/bindings/watchdog/fsl-imx-wdt.yaml
index fb7695515be1..9289de97859b 100644
--- a/Documentation/devicetree/bindings/watchdog/fsl-imx-wdt.yaml
+++ b/Documentation/devicetree/bindings/watchdog/fsl-imx-wdt.yaml
@@ -55,6 +55,28 @@  properties:
       If present, the watchdog device is configured to assert its
       external reset (WDOG_B) instead of issuing a software reset.
 
+  fsl,suspend-in-wait:
+    $ref: /schemas/types.yaml#/definitions/flag
+    description: |
+      If present, the watchdog device is suspended in WAIT mode
+      (Suspend-to-Idle). Only supported on following devices:
+        - "fsl,imx25-wdt",
+        - "fsl,imx35-wdt",
+        - "fsl,imx50-wdt",
+        - "fsl,imx51-wdt",
+        - "fsl,imx53-wdt",
+        - "fsl,imx6q-wdt",
+        - "fsl,imx6sl-wdt",
+        - "fsl,imx6sll-wdt",
+        - "fsl,imx6sx-wdt",
+        - "fsl,imx6ul-wdt",
+        - "fsl,imx7d-wdt",
+        - "fsl,imx8mm-wdt",
+        - "fsl,imx8mn-wdt",
+        - "fsl,imx8mp-wdt",
+        - "fsl,imx8mq-wdt",
+        - "fsl,vf610-wdt".
+
 required:
   - compatible
   - interrupts