2020-02-21 05:39:02

by Evan Benn

[permalink] [raw]
Subject: [PATCH v2 1/2] dt-bindings: watchdog: Add mt8173,smc-wdt watchdog

This watchdog can be used on ARM systems with a Secure
Monitor firmware to forward watchdog operations to
firmware via a Secure Monitor Call.

Signed-off-by: Evan Benn <[email protected]>
---

Changes in v2:
- Change name arm > mt8173

.../bindings/watchdog/mt8173,smc-wdt.yaml | 30 +++++++++++++++++++
MAINTAINERS | 6 ++++
2 files changed, 36 insertions(+)
create mode 100644 Documentation/devicetree/bindings/watchdog/mt8173,smc-wdt.yaml

diff --git a/Documentation/devicetree/bindings/watchdog/mt8173,smc-wdt.yaml b/Documentation/devicetree/bindings/watchdog/mt8173,smc-wdt.yaml
new file mode 100644
index 0000000000000..ff45e13bc548b
--- /dev/null
+++ b/Documentation/devicetree/bindings/watchdog/mt8173,smc-wdt.yaml
@@ -0,0 +1,30 @@
+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/watchdog/mt8173,smc-wdt.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: ARM Secure Monitor Call based watchdog
+
+allOf:
+ - $ref: "watchdog.yaml#"
+
+maintainers:
+ - Julius Werner <[email protected]>
+
+properties:
+ compatible:
+ enum:
+ - mt8173,smc-wdt
+
+required:
+ - compatible
+
+examples:
+ - |
+ watchdog {
+ compatible = "mt8173,smc-wdt";
+ timeout-sec = <15>;
+ };
+
+...
diff --git a/MAINTAINERS b/MAINTAINERS
index e48ab79879ace..59e8779363c12 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -1421,6 +1421,12 @@ S: Maintained
F: Documentation/devicetree/bindings/interrupt-controller/amazon,al-fic.txt
F: drivers/irqchip/irq-al-fic.c

+ARM SMC WATCHDOG DRIVER
+M: Julius Werner <[email protected]>
+R: Evan Benn <[email protected]>
+S: Maintained
+F: devicetree/bindings/watchdog/mt8173,smc-wdt.yaml
+
ARM SMMU DRIVERS
M: Will Deacon <[email protected]>
R: Robin Murphy <[email protected]>
--
2.25.0.265.gbab2e86ba0-goog


2020-02-21 22:12:23

by Rob Herring

[permalink] [raw]
Subject: Re: [PATCH v2 1/2] dt-bindings: watchdog: Add mt8173,smc-wdt watchdog

On Thu, Feb 20, 2020 at 11:38 PM Evan Benn <[email protected]> wrote:
>
> This watchdog can be used on ARM systems with a Secure
> Monitor firmware to forward watchdog operations to
> firmware via a Secure Monitor Call.
>
> Signed-off-by: Evan Benn <[email protected]>
> ---
>
> Changes in v2:
> - Change name arm > mt8173
>
> .../bindings/watchdog/mt8173,smc-wdt.yaml | 30 +++++++++++++++++++
> MAINTAINERS | 6 ++++
> 2 files changed, 36 insertions(+)
> create mode 100644 Documentation/devicetree/bindings/watchdog/mt8173,smc-wdt.yaml
>
> diff --git a/Documentation/devicetree/bindings/watchdog/mt8173,smc-wdt.yaml b/Documentation/devicetree/bindings/watchdog/mt8173,smc-wdt.yaml
> new file mode 100644
> index 0000000000000..ff45e13bc548b
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/watchdog/mt8173,smc-wdt.yaml
> @@ -0,0 +1,30 @@
> +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/watchdog/mt8173,smc-wdt.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: ARM Secure Monitor Call based watchdog
> +
> +allOf:
> + - $ref: "watchdog.yaml#"
> +
> +maintainers:
> + - Julius Werner <[email protected]>
> +
> +properties:
> + compatible:
> + enum:
> + - mt8173,smc-wdt

compatible strings are in the form <vendor>,<device>. 'mt8173' is not a vendor.

> +
> +required:
> + - compatible
> +
> +examples:
> + - |
> + watchdog {

This should be a child of some Mediatek firmware node. I assume
watchdog is not the *only* function.

> + compatible = "mt8173,smc-wdt";
> + timeout-sec = <15>;
> + };
> +
> +...
> diff --git a/MAINTAINERS b/MAINTAINERS
> index e48ab79879ace..59e8779363c12 100644
> --- a/MAINTAINERS
> +++ b/MAINTAINERS
> @@ -1421,6 +1421,12 @@ S: Maintained
> F: Documentation/devicetree/bindings/interrupt-controller/amazon,al-fic.txt
> F: drivers/irqchip/irq-al-fic.c
>
> +ARM SMC WATCHDOG DRIVER
> +M: Julius Werner <[email protected]>
> +R: Evan Benn <[email protected]>
> +S: Maintained
> +F: devicetree/bindings/watchdog/mt8173,smc-wdt.yaml
> +
> ARM SMMU DRIVERS
> M: Will Deacon <[email protected]>
> R: Robin Murphy <[email protected]>
> --
> 2.25.0.265.gbab2e86ba0-goog
>

2020-02-26 00:16:17

by Evan Benn

[permalink] [raw]
Subject: Re: [PATCH v2 1/2] dt-bindings: watchdog: Add mt8173,smc-wdt watchdog

Thanks Rob

> This should be a child of some Mediatek firmware node. I assume
> watchdog is not the *only* function.

I am not quite sure what you mean, do you intend this:

firmware {
watchdog {
...
}
}

I do not have a deep understanding of devicetree yet, can you point me
to anything that will help me understand
the consequences of that change?

Thanks

Evan

2020-02-26 14:31:21

by Rob Herring

[permalink] [raw]
Subject: Re: [PATCH v2 1/2] dt-bindings: watchdog: Add mt8173,smc-wdt watchdog

On Tue, Feb 25, 2020 at 6:15 PM Evan Benn <[email protected]> wrote:
>
> Thanks Rob
>
> > This should be a child of some Mediatek firmware node. I assume
> > watchdog is not the *only* function.
>
> I am not quite sure what you mean, do you intend this:
>
> firmware {
> watchdog {

Not quite. /firmware is generic container. I'd expect another layer in
the middle for the overall set of Mediatek firmware behind smc calls.
Look at 'xlnx,zynqmp-firmware' for an example.

Rob

2020-02-26 19:31:27

by Julius Werner

[permalink] [raw]
Subject: Re: [PATCH v2 1/2] dt-bindings: watchdog: Add mt8173,smc-wdt watchdog

> Not quite. /firmware is generic container. I'd expect another layer in
> the middle for the overall set of Mediatek firmware behind smc calls.
> Look at 'xlnx,zynqmp-firmware' for an example.

There are no other MediaTek firmware interfaces described in the
device tree on those platforms. Is it okay if we just call it
/firmware/watchdog in that case?