Re: [RFC 3/9] dt-bindings: spi: meson: convert to yaml
From: Rob Herring <robh+dt@kernel.org>
Date: 2019-08-01 14:42:23
Also in:
linux-amlogic, linux-devicetree, linux-spi
On Thu, Aug 1, 2019 at 7:56 AM Neil Armstrong [off-list ref] wrote:
quoted hunk ↗ jump to hunk
Signed-off-by: Neil Armstrong <redacted> --- .../bindings/spi/amlogic,meson-gx-spicc.yaml | 74 +++++++++++++++++++ .../bindings/spi/amlogic,meson6-spifc.yaml | 57 ++++++++++++++ .../devicetree/bindings/spi/spi-meson.txt | 55 -------------- 3 files changed, 131 insertions(+), 55 deletions(-) create mode 100644 Documentation/devicetree/bindings/spi/amlogic,meson-gx-spicc.yaml create mode 100644 Documentation/devicetree/bindings/spi/amlogic,meson6-spifc.yaml delete mode 100644 Documentation/devicetree/bindings/spi/spi-meson.txtdiff --git a/Documentation/devicetree/bindings/spi/amlogic,meson-gx-spicc.yaml b/Documentation/devicetree/bindings/spi/amlogic,meson-gx-spicc.yaml new file mode 100644 index 000000000000..6e2c41c730b5 --- /dev/null +++ b/Documentation/devicetree/bindings/spi/amlogic,meson-gx-spicc.yaml@@ -0,0 +1,74 @@ +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) +# Copyright 2019 BayLibre, SAS +%YAML 1.2 +--- +$id: "http://devicetree.org/schemas/spi/amlogic,meson-gx-spicc.yaml#" +$schema: "http://devicetree.org/meta-schemas/core.yaml#" + +title: Amlogic Meson SPI Communication Controller + +maintainers: + - Neil Armstrong <narmstrong@baylibre.com> + +allOf: + - $ref: "spi-controller.yaml#" + +description: | + The Meson SPICC is a generic SPI controller for general purpose Full-Duplex + communications with dedicated 16 words RX/TX PIO FIFOs. + +properties: + compatible: + oneOf: + - description: SPICC controller on Amlogic GX and compatible SoCs + enum: + - amlogic,meson-gx-spicc + - description: SPICC controller on Amlogic AXG and compatible SoCs + enum: + - amlogic,meson-axg-spicc
'oneOf' results in vague error messages and can be avoided here. Plus I don't think the descriptions add much as I could pretty much generate the desc "<block> controller on <vendor> <soc> and compatible SoCs" from <vendor>,<soc>-<block>. Though, if you want to keep the description, do it as a comment: enum: - amlogic,meson-gx-spicc # SPICC controller on Amlogic GX and compatible SoCs - amlogic,meson-axg-spicc # SPICC controller on Amlogic AXG and compatible SoCs
+ + interrupts: + maxItems: 1 + + reg: + maxItems: 1 + + resets: + description: phandle of the internal reset line
Standard property, don't need a description unless there's something special about this binding.
+ maxItems: 1 + + clocks: + maxItems: 1 + + clock-names: + description: input clock for the baud rate generator + items: + - const: core +
+ "#address-cells": + const: 1 + + "#size-cells": + const: 0
These 2 can be dropped as they are covered by spi-controller.yaml.
+
+required:
+ - compatible
+ - reg
+ - interrupts
+ - clocks
+ - clock-names
+ - "#address-cells"
+ - "#size-cells"
+
+examples:
+ - |
+ spi@c1108d80 {
+ compatible = "amlogic,meson-gx-spicc";
+ reg = <0xc1108d80 0x80>;
+ interrupts = <112>;
+ clocks = <&clk81>;
+ clock-names = "core";
+ #address-cells = <1>;
+ #size-cells = <0>;Probably should add a slave node. Once I figure out how to always build the examples with W=12, the lack of a chlid node will throw a dtc warning.
quoted hunk ↗ jump to hunk
+ }; +diff --git a/Documentation/devicetree/bindings/spi/amlogic,meson6-spifc.yaml b/Documentation/devicetree/bindings/spi/amlogic,meson6-spifc.yaml new file mode 100644 index 000000000000..5f34aed1ad40 --- /dev/null +++ b/Documentation/devicetree/bindings/spi/amlogic,meson6-spifc.yaml
Some of the same comments apply to this one.
quoted hunk ↗ jump to hunk
@@ -0,0 +1,57 @@ +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) +# Copyright 2019 BayLibre, SAS +%YAML 1.2 +--- +$id: "http://devicetree.org/schemas/spi/amlogic,meson6-spifc.yaml#" +$schema: "http://devicetree.org/meta-schemas/core.yaml#" + +title: Amlogic Meson SPI Flash Controller + +maintainers: + - Neil Armstrong <narmstrong@baylibre.com> + +allOf: + - $ref: "spi-controller.yaml#" + +description: | + The Meson SPIFC is a controller optimized for communication with SPI + NOR memories, without DMA support and a 64-byte unified transmit / + receive buffer. + +properties: + compatible: + oneOf: + - enum: + - amlogic,meson6-spifc + - enum: + - amlogic,meson-gxbb-spifc
Drop the oneOf. A single enum is sufficient.
+
+ reg:
+ maxItems: 1
+
+ clocks:
+ maxItems: 1
+
+ "#address-cells":
+ const: 1
+
+ "#size-cells":
+ const: 0
+
+required:
+ - compatible
+ - reg
+ - clocks
+ - "#address-cells"
+ - "#size-cells"
+
+examples:
+ - |
+ spi@c1108c80 {
+ compatible = "amlogic,meson6-spifc";
+ reg = <0xc1108c80 0x80>;
+ clocks = <&clk81>;
+ #address-cells = <1>;
+ #size-cells = <0>;
+ };
+_______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel