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(-)
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:
--
2.25.1
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:
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
© 2016 - 2026 Red Hat, Inc.