[07/13] dt-bindings: net: Convert Calxeda Ethernet binding to json-schema
diff mbox series

Message ID 20200226180901.89940-8-andre.przywara@arm.com
State New
Headers show
Series
  • arm: calxeda: update DTS, bindings and MAINTAINERS
Related show

Commit Message

Andre Przywara Feb. 26, 2020, 6:08 p.m. UTC
Convert the Calxeda XGMAC Ethernet device binding to DT schema format
using json-schema.

Signed-off-by: Andre Przywara <andre.przywara@arm.com>
---
 .../devicetree/bindings/net/calxeda-xgmac.txt | 18 -------
 .../bindings/net/calxeda-xgmac.yaml           | 47 +++++++++++++++++++
 2 files changed, 47 insertions(+), 18 deletions(-)
 delete mode 100644 Documentation/devicetree/bindings/net/calxeda-xgmac.txt
 create mode 100644 Documentation/devicetree/bindings/net/calxeda-xgmac.yaml

Comments

Maxime Ripard Feb. 26, 2020, 6:26 p.m. UTC | #1
On Wed, Feb 26, 2020 at 06:08:55PM +0000, Andre Przywara wrote:
> Convert the Calxeda XGMAC Ethernet device binding to DT schema format
> using json-schema.
>
> Signed-off-by: Andre Przywara <andre.przywara@arm.com>
> ---
>  .../devicetree/bindings/net/calxeda-xgmac.txt | 18 -------
>  .../bindings/net/calxeda-xgmac.yaml           | 47 +++++++++++++++++++
>  2 files changed, 47 insertions(+), 18 deletions(-)
>  delete mode 100644 Documentation/devicetree/bindings/net/calxeda-xgmac.txt
>  create mode 100644 Documentation/devicetree/bindings/net/calxeda-xgmac.yaml
>
> diff --git a/Documentation/devicetree/bindings/net/calxeda-xgmac.txt b/Documentation/devicetree/bindings/net/calxeda-xgmac.txt
> deleted file mode 100644
> index c8ae996bd8f2..000000000000
> --- a/Documentation/devicetree/bindings/net/calxeda-xgmac.txt
> +++ /dev/null
> @@ -1,18 +0,0 @@
> -* Calxeda Highbank 10Gb XGMAC Ethernet
> -
> -Required properties:
> -- compatible : Should be "calxeda,hb-xgmac"
> -- reg : Address and length of the register set for the device
> -- interrupts : Should contain 3 xgmac interrupts. The 1st is main interrupt.
> -  The 2nd is pwr mgt interrupt. The 3rd is low power state interrupt.
> -
> -Optional properties:
> -- dma-coherent      : Present if dma operations are coherent
> -
> -Example:
> -
> -ethernet@fff50000 {
> -        compatible = "calxeda,hb-xgmac";
> -        reg = <0xfff50000 0x1000>;
> -        interrupts = <0 77 4  0 78 4  0 79 4>;
> -};
> diff --git a/Documentation/devicetree/bindings/net/calxeda-xgmac.yaml b/Documentation/devicetree/bindings/net/calxeda-xgmac.yaml
> new file mode 100644
> index 000000000000..77b8be9ebb20
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/net/calxeda-xgmac.yaml
> @@ -0,0 +1,47 @@
> +# SPDX-License-Identifier: GPL-2.0
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/net/calxeda-xgmac.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: Calxeda Highbank 10Gb XGMAC Ethernet controller
> +
> +description: |
> +  The Calxeda XGMAC Ethernet controllers are directly connected to the
> +  internal machine "network fabric", which is set up, initialised and
> +  managed by the firmware. So there are no PHY properties in this
> +  binding. Switches in the fabric take care of routing and mapping the
> +  traffic to external network ports.
> +
> +maintainers:
> +  - Andre Przywara <andre.przywara@arm.com>
> +
> +properties:
> +  compatible:
> +    const: calxeda,hb-xgmac
> +
> +  reg:
> +    maxItems: 1
> +
> +  interrupts:
> +    description: |
> +      Can point to at most 3 xgmac interrupts. The 1st one is the main
> +      interrupt, the 2nd one is used for power management. The optional
> +      3rd one is the low power state interrupt.
> +    minItems: 2
> +    maxItems: 3
> +
> +  dma-coherent: true
> +
> +required:
> +  - compatible
> +  - reg
> +  - interrupts

You probably want to add additionalProperties: false here?

Patch
diff mbox series

diff --git a/Documentation/devicetree/bindings/net/calxeda-xgmac.txt b/Documentation/devicetree/bindings/net/calxeda-xgmac.txt
deleted file mode 100644
index c8ae996bd8f2..000000000000
--- a/Documentation/devicetree/bindings/net/calxeda-xgmac.txt
+++ /dev/null
@@ -1,18 +0,0 @@ 
-* Calxeda Highbank 10Gb XGMAC Ethernet
-
-Required properties:
-- compatible : Should be "calxeda,hb-xgmac"
-- reg : Address and length of the register set for the device
-- interrupts : Should contain 3 xgmac interrupts. The 1st is main interrupt.
-  The 2nd is pwr mgt interrupt. The 3rd is low power state interrupt.
-
-Optional properties:
-- dma-coherent      : Present if dma operations are coherent
-
-Example:
-
-ethernet@fff50000 {
-        compatible = "calxeda,hb-xgmac";
-        reg = <0xfff50000 0x1000>;
-        interrupts = <0 77 4  0 78 4  0 79 4>;
-};
diff --git a/Documentation/devicetree/bindings/net/calxeda-xgmac.yaml b/Documentation/devicetree/bindings/net/calxeda-xgmac.yaml
new file mode 100644
index 000000000000..77b8be9ebb20
--- /dev/null
+++ b/Documentation/devicetree/bindings/net/calxeda-xgmac.yaml
@@ -0,0 +1,47 @@ 
+# SPDX-License-Identifier: GPL-2.0
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/net/calxeda-xgmac.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Calxeda Highbank 10Gb XGMAC Ethernet controller
+
+description: |
+  The Calxeda XGMAC Ethernet controllers are directly connected to the
+  internal machine "network fabric", which is set up, initialised and
+  managed by the firmware. So there are no PHY properties in this
+  binding. Switches in the fabric take care of routing and mapping the
+  traffic to external network ports.
+
+maintainers:
+  - Andre Przywara <andre.przywara@arm.com>
+
+properties:
+  compatible:
+    const: calxeda,hb-xgmac
+
+  reg:
+    maxItems: 1
+
+  interrupts:
+    description: |
+      Can point to at most 3 xgmac interrupts. The 1st one is the main
+      interrupt, the 2nd one is used for power management. The optional
+      3rd one is the low power state interrupt.
+    minItems: 2
+    maxItems: 3
+
+  dma-coherent: true
+
+required:
+  - compatible
+  - reg
+  - interrupts
+
+examples:
+  - |
+    ethernet@fff50000 {
+        compatible = "calxeda,hb-xgmac";
+        reg = <0xfff50000 0x1000>;
+        interrupts = <0 77 4>, <0 78 4>, <0 79 4>;
+    };