diff mbox series

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

Message ID 20221104070358.426657-3-andrej.picej@norik.com (mailing list archive)
State Accepted
Headers show
Series Suspending i.MX watchdog in WAIT mode | expand

Commit Message

Andrej Picej Nov. 4, 2022, 7:03 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 v4:
 - combine allOf, reorder allOf so it follows example-schema, drop the
   quotes around 'watchdog.yaml'.

Changes in v3:
 - disallow the property for devices which don't support WDW bit
   functionality with .yaml DTS allOf:if:then scheme.

Changes in v2:
 - add a commit message,
 - add a list of devices which support this functionality
---
 .../bindings/watchdog/fsl-imx-wdt.yaml        | 37 +++++++++++++++++--
 1 file changed, 34 insertions(+), 3 deletions(-)

Comments

Krzysztof Kozlowski Nov. 8, 2022, 10:59 a.m. UTC | #1
On 04/11/2022 08:03, 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>


Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>

Best regards,
Krzysztof
Guenter Roeck Jan. 31, 2023, 5:42 p.m. UTC | #2
On Fri, Nov 04, 2022 at 08:03:57AM +0100, 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>
> Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>

Reviewed-by: Guenter Roeck <linux@roeck-us.net>

> ---
> Changes in v4:
>  - combine allOf, reorder allOf so it follows example-schema, drop the
>    quotes around 'watchdog.yaml'.
> 
> Changes in v3:
>  - disallow the property for devices which don't support WDW bit
>    functionality with .yaml DTS allOf:if:then scheme.
> 
> Changes in v2:
>  - add a commit message,
>  - add a list of devices which support this functionality
> ---
>  .../bindings/watchdog/fsl-imx-wdt.yaml        | 37 +++++++++++++++++--
>  1 file changed, 34 insertions(+), 3 deletions(-)
> 
> diff --git a/Documentation/devicetree/bindings/watchdog/fsl-imx-wdt.yaml b/Documentation/devicetree/bindings/watchdog/fsl-imx-wdt.yaml
> index fb7695515be1..181f0cc5b5bd 100644
> --- a/Documentation/devicetree/bindings/watchdog/fsl-imx-wdt.yaml
> +++ b/Documentation/devicetree/bindings/watchdog/fsl-imx-wdt.yaml
> @@ -9,9 +9,6 @@ title: Freescale i.MX Watchdog Timer (WDT) Controller
>  maintainers:
>    - Anson Huang <Anson.Huang@nxp.com>
>  
> -allOf:
> -  - $ref: "watchdog.yaml#"
> -
>  properties:
>    compatible:
>      oneOf:
> @@ -55,11 +52,45 @@ 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 certain devices.
> +
>  required:
>    - compatible
>    - interrupts
>    - reg
>  
> +allOf:
> +  - $ref: watchdog.yaml#
> +  - 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
> +    then:
> +      properties:
> +        fsl,suspend-in-wait: false
> +
>  unevaluatedProperties: false
>  
>  examples:
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..181f0cc5b5bd 100644
--- a/Documentation/devicetree/bindings/watchdog/fsl-imx-wdt.yaml
+++ b/Documentation/devicetree/bindings/watchdog/fsl-imx-wdt.yaml
@@ -9,9 +9,6 @@  title: Freescale i.MX Watchdog Timer (WDT) Controller
 maintainers:
   - Anson Huang <Anson.Huang@nxp.com>
 
-allOf:
-  - $ref: "watchdog.yaml#"
-
 properties:
   compatible:
     oneOf:
@@ -55,11 +52,45 @@  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 certain devices.
+
 required:
   - compatible
   - interrupts
   - reg
 
+allOf:
+  - $ref: watchdog.yaml#
+  - 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
+    then:
+      properties:
+        fsl,suspend-in-wait: false
+
 unevaluatedProperties: false
 
 examples: