Skip to contentSkip to conversation

dt-bindings-aspeed-i2 Convert to yaml format

PATCH Superseded Jamin Lin 3 participants 6 messages May 27, 2021 – Jun 3, 2021

Subsystems (4)

v2 of 3 Superseded Latest is v3 →

lore
Share & tools
lore

Jamin Lin

author
#0 lore raw

v2 cover dt-bindings-aspeed-i2 Convert to yaml format

Change review issue since v1
1. add multi-master to boolean type property
2. add maxItems to reset and clock property

Jamin Lin (1):
dt-bindings: aspeed-i2c: Convert txt to yaml format

 .../devicetree/bindings/i2c/aspeed,i2c.yaml   | 86 +++++++++++++++++++
 .../devicetree/bindings/i2c/i2c-aspeed.txt    | 49 -----------
 2 files changed, 86 insertions(+), 49 deletions(-)
 create mode 100644 Documentation/devicetree/bindings/i2c/aspeed,i2c.yaml
 delete mode 100644 Documentation/devicetree/bindings/i2c/i2c-aspeed.txt
Signature · 1 line
2.17.1
author
#1 lore raw

PATCH v2 1/1 dt-bindings: aspeed-i2c: Convert txt to yaml format

Convert aspeed i2c to yaml.

---
 .../devicetree/bindings/i2c/aspeed,i2c.yaml   | 86 +++++++++++++++++++
 .../devicetree/bindings/i2c/i2c-aspeed.txt    | 49 -----------
 2 files changed, 86 insertions(+), 49 deletions(-)
 create mode 100644 Documentation/devicetree/bindings/i2c/aspeed,i2c.yaml
 delete mode 100644 Documentation/devicetree/bindings/i2c/i2c-aspeed.txt
Documentation/devicetree/bindings/i2c/aspeed,i2c.yaml new file +86 -0
new file mode 100644
index 000000000000..1f7064d77708
@@ -0,0 +1,86 @@
+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/i2c/aspeed,i2c.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: ASPEED I2C on the AST24XX, AST25XX, and AST26XX SoCs Device Tree Bindings
+
+maintainers:
+  - Rayn Chen <[email protected]>
+
+allOf:
+  - $ref: /schemas/i2c/i2c-controller.yaml#
+
+properties:
+  compatible:
+    enum:
+      - aspeed,ast2400-i2c-bus
+      - aspeed,ast2500-i2c-bus
+      - aspeed,ast2600-i2c-bus
+
+  "#size-cells":
+    const: 0
+
+  "#address-cells":
+    const: 1
+
+  reg:
+    minItems: 1
+    maxItems: 2
+    items:
+      - description: address offset and range of bus
+      - description: address offset and range of bus buffer
+
+  interrupts:
+    maxItems: 1
+    description: interrupt number
+
+  clocks:
+    maxItems: 1
+    description:
+      root clock of bus, should reference the APB
+      clock in the second cell
+
+  reset:
+    maxItems: 1
+    description: phandle to reset controller with the reset number in
+      the second cell
+
+  bus-frequency:
+    minimum: 500
+    maximum: 4000000
+    default: 100000
+    description: frequency of the bus clock in Hz defaults to 100 kHz when not
+      specified
+
+  multi-master:
+    type: boolean
+    description:
+      states that there is another master active on this bus
+
+required:
+  - reg
+  - compatible
+  - clocks
+  - resets
+
+unevaluatedProperties: false
+
+examples:
+  - |
+    #include <dt-bindings/clock/aspeed-clock.h>
+    i2c0: i2c-bus at 40 {
+      #address-cells = <1>;
+      #size-cells = <0>;
+      #interrupt-cells = <1>;
+      reg = <0x40 0x40>;
+      compatible = "aspeed,ast2500-i2c-bus";
+      clocks = <&syscon ASPEED_CLK_APB>;
+      resets = <&syscon ASPEED_RESET_I2C>;
+      bus-frequency = <100000>;
+      interrupts = <0>;
+      interrupt-parent = <&i2c_ic>;
+      status = "disabled";
+      /* Does not need pinctrl properties */
+    };
Documentation/devicetree/bindings/i2c/i2c-aspeed.txt deleted +0 -49

49 lines not on this page · raw message

Signature · 1 line
2.17.1
#2 lore raw

Re: [PATCH v2 1/1] dt-bindings: aspeed-i2c: Convert txt to yaml format

Quoted 94 lines · Jamin Lin

Convert aspeed i2c to yaml.

---
 .../devicetree/bindings/i2c/aspeed,i2c.yaml   | 86 +++++++++++++++++++
 .../devicetree/bindings/i2c/i2c-aspeed.txt    | 49 -----------
 2 files changed, 86 insertions(+), 49 deletions(-)
 create mode 100644 Documentation/devicetree/bindings/i2c/aspeed,i2c.yaml
 delete mode 100644 Documentation/devicetree/bindings/i2c/i2c-aspeed.txt
Documentation/devicetree/bindings/i2c/aspeed,i2c.yaml new file +7 -0
new file mode 100644
index 000000000000..1f7064d77708
@@ -0,0 +1,86 @@
+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/i2c/aspeed,i2c.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: ASPEED I2C on the AST24XX, AST25XX, and AST26XX SoCs Device 

Tree Bindings

Documentation/devicetree/bindings/i2c/aspeed,i2c.yaml new file +47 -0
+
+maintainers:
+  - Rayn Chen <[email protected]>
+
+allOf:
+  - $ref: /schemas/i2c/i2c-controller.yaml#
+
+properties:
+  compatible:
+    enum:
+      - aspeed,ast2400-i2c-bus
+      - aspeed,ast2500-i2c-bus
+      - aspeed,ast2600-i2c-bus
+
+  "#size-cells":
+    const: 0
+
+  "#address-cells":
+    const: 1
+
+  reg:
+    minItems: 1
+    maxItems: 2
+    items:
+      - description: address offset and range of bus
+      - description: address offset and range of bus buffer
+
+  interrupts:
+    maxItems: 1
+    description: interrupt number
+
+  clocks:
+    maxItems: 1
+    description:
+      root clock of bus, should reference the APB
+      clock in the second cell
+
+  reset:
+    maxItems: 1
+    description: phandle to reset controller with the reset number in
+      the second cell
+
+  bus-frequency:
+    minimum: 500
+    maximum: 4000000
+    default: 100000
+    description: frequency of the bus clock in Hz defaults to 100 kHz 

when not

Documentation/devicetree/bindings/i2c/aspeed,i2c.yaml new file +21 -0
+      specified
+
+  multi-master:
+    type: boolean
+    description:
+      states that there is another master active on this bus
+
+required:
+  - reg
+  - compatible
+  - clocks
+  - resets
+
+unevaluatedProperties: false
+
+examples:
+  - |
+    #include <dt-bindings/clock/aspeed-clock.h>
+    i2c0: i2c-bus at 40 {
+      #address-cells = <1>;
+      #size-cells = <0>;

Documentation/devicetree/bindings/i2c/aspeed,i2c.yaml line 85

Quoted 10 lines
Documentation/devicetree/bindings/i2c/aspeed,i2c.yaml new file +10 -0
+      #interrupt-cells = <1>;
+      reg = <0x40 0x40>;
+      compatible = "aspeed,ast2500-i2c-bus";
+      clocks = <&syscon ASPEED_CLK_APB>;
+      resets = <&syscon ASPEED_RESET_I2C>;
+      bus-frequency = <100000>;
+      interrupts = <0>;
+      interrupt-parent = <&i2c_ic>;
+      status = "disabled";
+      /* Does not need pinctrl properties */

Note this actually isn't right and someone (me?) needs to send a patch to fix the devicetree(s) - the I2C mux properties for bus 0 and 1 just don't have a group, and so SCL and SDA need to be muxed individually.

I expect we wound up with this comment by a lack of a match for an erroneous grep.

Andrew

author
#3 lore raw

Re: [PATCH v2 1/1] dt-bindings: aspeed-i2c: Convert txt to yaml format

Quoted 112 lines · Andrew Jeffery
Quoted 94 lines · Jamin Lin

Convert aspeed i2c to yaml.

---
 .../devicetree/bindings/i2c/aspeed,i2c.yaml   | 86 +++++++++++++++++++
 .../devicetree/bindings/i2c/i2c-aspeed.txt    | 49 -----------
 2 files changed, 86 insertions(+), 49 deletions(-)
 create mode 100644 Documentation/devicetree/bindings/i2c/aspeed,i2c.yaml
 delete mode 100644 Documentation/devicetree/bindings/i2c/i2c-aspeed.txt
Documentation/devicetree/bindings/i2c/aspeed,i2c.yaml new file +7 -0
new file mode 100644
index 000000000000..1f7064d77708
@@ -0,0 +1,86 @@
+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/i2c/aspeed,i2c.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: ASPEED I2C on the AST24XX, AST25XX, and AST26XX SoCs Device 

Tree Bindings

Documentation/devicetree/bindings/i2c/aspeed,i2c.yaml new file +47 -0
+
+maintainers:
+  - Rayn Chen <[email protected]>
+
+allOf:
+  - $ref: /schemas/i2c/i2c-controller.yaml#
+
+properties:
+  compatible:
+    enum:
+      - aspeed,ast2400-i2c-bus
+      - aspeed,ast2500-i2c-bus
+      - aspeed,ast2600-i2c-bus
+
+  "#size-cells":
+    const: 0
+
+  "#address-cells":
+    const: 1
+
+  reg:
+    minItems: 1
+    maxItems: 2
+    items:
+      - description: address offset and range of bus
+      - description: address offset and range of bus buffer
+
+  interrupts:
+    maxItems: 1
+    description: interrupt number
+
+  clocks:
+    maxItems: 1
+    description:
+      root clock of bus, should reference the APB
+      clock in the second cell
+
+  reset:
+    maxItems: 1
+    description: phandle to reset controller with the reset number in
+      the second cell
+
+  bus-frequency:
+    minimum: 500
+    maximum: 4000000
+    default: 100000
+    description: frequency of the bus clock in Hz defaults to 100 kHz 

when not

Documentation/devicetree/bindings/i2c/aspeed,i2c.yaml new file +21 -0
+      specified
+
+  multi-master:
+    type: boolean
+    description:
+      states that there is another master active on this bus
+
+required:
+  - reg
+  - compatible
+  - clocks
+  - resets
+
+unevaluatedProperties: false
+
+examples:
+  - |
+    #include <dt-bindings/clock/aspeed-clock.h>
+    i2c0: i2c-bus at 40 {
+      #address-cells = <1>;
+      #size-cells = <0>;

Documentation/devicetree/bindings/i2c/aspeed,i2c.yaml line 85

Quoted 10 lines
Documentation/devicetree/bindings/i2c/aspeed,i2c.yaml new file +10 -0
+      #interrupt-cells = <1>;
+      reg = <0x40 0x40>;
+      compatible = "aspeed,ast2500-i2c-bus";
+      clocks = <&syscon ASPEED_CLK_APB>;
+      resets = <&syscon ASPEED_RESET_I2C>;
+      bus-frequency = <100000>;
+      interrupts = <0>;
+      interrupt-parent = <&i2c_ic>;
+      status = "disabled";
+      /* Does not need pinctrl properties */

Note this actually isn't right and someone (me?) needs to send a patch to fix the devicetree(s) - the I2C mux properties for bus 0 and 1 just don't have a group, and so SCL and SDA need to be muxed individually.

Quoted 4 lines

I expect we wound up with this comment by a lack of a match for an erroneous grep.

Andrew

Understand. Can I change the example as the following or can you give me any suggestion?

i2c0: i2c-bus at 40 {
#address-cells = <1>;
#size-cells = <0>;
#interrupt-cells = <1>;
reg = <0x40 0x40>;
compatible = "aspeed,ast2500-i2c-bus";
clocks = <&syscon ASPEED_CLK_APB>;
resets = <&syscon ASPEED_RESET_I2C>;
bus-frequency = <100000>;
interrupts = <0>;
interrupt-parent = <&i2c_ic>;

Thanks-Jamin

maintainer
#4 lore raw

Re: [PATCH v2 1/1] dt-bindings: aspeed-i2c: Convert txt to yaml format

In reply to Jamin Lin
Quoted 32 lines · Jamin Lin

Convert aspeed i2c to yaml.

---
 .../devicetree/bindings/i2c/aspeed,i2c.yaml   | 86 +++++++++++++++++++
 .../devicetree/bindings/i2c/i2c-aspeed.txt    | 49 -----------
 2 files changed, 86 insertions(+), 49 deletions(-)
 create mode 100644 Documentation/devicetree/bindings/i2c/aspeed,i2c.yaml
 delete mode 100644 Documentation/devicetree/bindings/i2c/i2c-aspeed.txt
Documentation/devicetree/bindings/i2c/aspeed,i2c.yaml new file +16 -0
new file mode 100644
index 000000000000..1f7064d77708
@@ -0,0 +1,86 @@
+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/i2c/aspeed,i2c.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: ASPEED I2C on the AST24XX, AST25XX, and AST26XX SoCs Device Tree Bindings
+
+maintainers:
+  - Rayn Chen <[email protected]>
+
+allOf:
+  - $ref: /schemas/i2c/i2c-controller.yaml#
+
+properties:
+  compatible:

Documentation/devicetree/bindings/i2c/aspeed,i2c.yaml line 26

Quoted 10 lines
Documentation/devicetree/bindings/i2c/aspeed,i2c.yaml new file +10 -0
+    enum:
+      - aspeed,ast2400-i2c-bus
+      - aspeed,ast2500-i2c-bus
+      - aspeed,ast2600-i2c-bus
+
+  "#size-cells":
+    const: 0
+
+  "#address-cells":
+    const: 1

These 2 are covered by i2c-controller.yaml.

Documentation/devicetree/bindings/i2c/aspeed,i2c.yaml line 37

Quoted 11 lines
Documentation/devicetree/bindings/i2c/aspeed,i2c.yaml new file +11 -0
+
+  reg:
+    minItems: 1
+    maxItems: 2
+    items:
+      - description: address offset and range of bus
+      - description: address offset and range of bus buffer
+
+  interrupts:
+    maxItems: 1
+    description: interrupt number

Drop. Not a useful description.

Documentation/devicetree/bindings/i2c/aspeed,i2c.yaml line 45

Quoted 8 lines
Documentation/devicetree/bindings/i2c/aspeed,i2c.yaml new file +8 -0
+
+  clocks:
+    maxItems: 1
+    description:
+      root clock of bus, should reference the APB
+      clock in the second cell
+
+  reset:

resets

Documentation/devicetree/bindings/i2c/aspeed,i2c.yaml line 48

Quoted 3 lines
Documentation/devicetree/bindings/i2c/aspeed,i2c.yaml new file +3 -0
+    maxItems: 1
+    description: phandle to reset controller with the reset number in
+      the second cell

No need to describe the format of 'resets'.

Quoted 20 lines
Documentation/devicetree/bindings/i2c/aspeed,i2c.yaml new file +20 -0
+
+  bus-frequency:
+    minimum: 500
+    maximum: 4000000
+    default: 100000
+    description: frequency of the bus clock in Hz defaults to 100 kHz when not
+      specified
+
+  multi-master:
+    type: boolean
+    description:
+      states that there is another master active on this bus
+
+required:
+  - reg
+  - compatible
+  - clocks
+  - resets
+
+unevaluatedProperties: false

Documentation/devicetree/bindings/i2c/aspeed,i2c.yaml line 78

Quoted 10 lines
Documentation/devicetree/bindings/i2c/aspeed,i2c.yaml new file +10 -0
+
+examples:
+  - |
+    #include <dt-bindings/clock/aspeed-clock.h>
+    i2c0: i2c-bus at 40 {
+      #address-cells = <1>;
+      #size-cells = <0>;
+      #interrupt-cells = <1>;
+      reg = <0x40 0x40>;
+      compatible = "aspeed,ast2500-i2c-bus";

Convention is compatible first in the list of properties.

Documentation/devicetree/bindings/i2c/aspeed,i2c.yaml line 84

Quoted 6 lines
Documentation/devicetree/bindings/i2c/aspeed,i2c.yaml new file +6 -0
+      clocks = <&syscon ASPEED_CLK_APB>;
+      resets = <&syscon ASPEED_RESET_I2C>;
+      bus-frequency = <100000>;
+      interrupts = <0>;
+      interrupt-parent = <&i2c_ic>;
+      status = "disabled";

Don't show status in examples especially when disabling disables some validation...

Quoted 2 lines
Documentation/devicetree/bindings/i2c/aspeed,i2c.yaml new file +2 -0
+      /* Does not need pinctrl properties */
+    };
author
#5 lore raw

Re: [PATCH v2 1/1] dt-bindings: aspeed-i2c: Convert txt to yaml format

Quoted 37 lines · Rob Herring
Quoted 36 lines · Jamin Lin

Convert aspeed i2c to yaml.

---
 .../devicetree/bindings/i2c/aspeed,i2c.yaml   | 86 +++++++++++++++++++
 .../devicetree/bindings/i2c/i2c-aspeed.txt    | 49 -----------
 2 files changed, 86 insertions(+), 49 deletions(-)
 create mode 100644 Documentation/devicetree/bindings/i2c/aspeed,i2c.yaml
 delete mode 100644 Documentation/devicetree/bindings/i2c/i2c-aspeed.txt
Documentation/devicetree/bindings/i2c/aspeed,i2c.yaml new file +20 -0
new file mode 100644
index 000000000000..1f7064d77708
@@ -0,0 +1,86 @@
+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/i2c/aspeed,i2c.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: ASPEED I2C on the AST24XX, AST25XX, and AST26XX SoCs Device Tree Bindings
+
+maintainers:
+  - Rayn Chen <[email protected]>
+
+allOf:
+  - $ref: /schemas/i2c/i2c-controller.yaml#
+
+properties:
+  compatible:
+    enum:
+      - aspeed,ast2400-i2c-bus
+      - aspeed,ast2500-i2c-bus
+      - aspeed,ast2600-i2c-bus
Quoted 9 lines

Documentation/devicetree/bindings/i2c/aspeed,i2c.yaml line 26

Quoted 6 lines
Documentation/devicetree/bindings/i2c/aspeed,i2c.yaml new file +6 -0
+
+  "#size-cells":
+    const: 0
+
+  "#address-cells":
+    const: 1

These 2 are covered by i2c-controller.yaml.

Will remove them.

Quoted 5 lines
Quoted 5 lines
Documentation/devicetree/bindings/i2c/aspeed,i2c.yaml new file +5 -0
+
+  reg:
+    minItems: 1
+    maxItems: 2
+    items:
Quoted 9 lines

Documentation/devicetree/bindings/i2c/aspeed,i2c.yaml line 37

Quoted 6 lines
Documentation/devicetree/bindings/i2c/aspeed,i2c.yaml new file +6 -0
+      - description: address offset and range of bus
+      - description: address offset and range of bus buffer
+
+  interrupts:
+    maxItems: 1
+    description: interrupt number

Drop. Not a useful description.

Will remove it.

Quoted 11 lines

Documentation/devicetree/bindings/i2c/aspeed,i2c.yaml line 45

Quoted 8 lines
Documentation/devicetree/bindings/i2c/aspeed,i2c.yaml new file +8 -0
+
+  clocks:
+    maxItems: 1
+    description:
+      root clock of bus, should reference the APB
+      clock in the second cell
+
+  reset:

resets

Thanks to find the typo.

Quoted 30 lines

Documentation/devicetree/bindings/i2c/aspeed,i2c.yaml line 48

Quoted 3 lines
Documentation/devicetree/bindings/i2c/aspeed,i2c.yaml new file +3 -0
+    maxItems: 1
+    description: phandle to reset controller with the reset number in
+      the second cell

No need to describe the format of 'resets'.

Quoted 24 lines
Documentation/devicetree/bindings/i2c/aspeed,i2c.yaml new file +24 -0
+
+  bus-frequency:
+    minimum: 500
+    maximum: 4000000
+    default: 100000
+    description: frequency of the bus clock in Hz defaults to 100 kHz when not
+      specified
+
+  multi-master:
+    type: boolean
+    description:
+      states that there is another master active on this bus
+
+required:
+  - reg
+  - compatible
+  - clocks
+  - resets
+
+unevaluatedProperties: false
+
+examples:
+  - |
+    #include <dt-bindings/clock/aspeed-clock.h>
Quoted 9 lines

Documentation/devicetree/bindings/i2c/aspeed,i2c.yaml line 78

Quoted 6 lines
Documentation/devicetree/bindings/i2c/aspeed,i2c.yaml new file +6 -0
+    i2c0: i2c-bus at 40 {
+      #address-cells = <1>;
+      #size-cells = <0>;
+      #interrupt-cells = <1>;
+      reg = <0x40 0x40>;
+      compatible = "aspeed,ast2500-i2c-bus";

Convention is compatible first in the list of properties.

Will move compatible first in the list of properties.

Quoted 10 lines

Documentation/devicetree/bindings/i2c/aspeed,i2c.yaml line 84

Quoted 6 lines
Documentation/devicetree/bindings/i2c/aspeed,i2c.yaml new file +6 -0
+      clocks = <&syscon ASPEED_CLK_APB>;
+      resets = <&syscon ASPEED_RESET_I2C>;
+      bus-frequency = <100000>;
+      interrupts = <0>;
+      interrupt-parent = <&i2c_ic>;
+      status = "disabled";

Don't show status in examples especially when disabling disables some validation...

Will remove it.

Quoted 2 lines

Documentation/devicetree/bindings/i2c/aspeed,i2c.yaml line 86

Quoted 2 lines
Documentation/devicetree/bindings/i2c/aspeed,i2c.yaml new file +2 -0
+      /* Does not need pinctrl properties */
+    };

Thanks for your suggestion. I will send v3 patch.