dt-bindings: i2c: hisilicon,hix5hd2-i2c convert to DT schema
Subsystems (2)
PATCH 1/1 dt-bindings: i2c: hisilicon,hix5hd2-i2c convert to DT schema
--- .../bindings/i2c/hisilicon,hix5hd2-i2c.yaml | 59 +++++++++++++++++++ .../devicetree/bindings/i2c/i2c-hix5hd2.txt | 24 -------- 2 files changed, 59 insertions(+), 24 deletions(-) create mode 100644 Documentation/devicetree/bindings/i2c/hisilicon,hix5hd2-i2c.yaml delete mode 100644 Documentation/devicetree/bindings/i2c/i2c-hix5hd2.txt
Documentation/devicetree/bindings/i2c/hisilicon,hix5hd2-i2c.yaml new file +59 -0
@@ -0,0 +1,59 @@ +# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/i2c/hisilicon,hix5hd2-i2c.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# +title: I2C for HiSilicon hix5hd2 chipset platform + +maintainers: + - Wei Yan <[email protected]> + +allOf: + - $ref: /schemas/i2c/i2c-controller.yaml# + +properties: + compatible: + enum: + - hisilicon,hix5hd2-i2c + + reg: + maxItems: 1 + + interrupts: + maxItems: 1 + + clocks: + maxItems: 1 + + clock-frequency: + description: Desired I2C bus frequency in Hz + default: 100000 + + "#address-cells": + const: 1 + + "#size-cells": + const: 0 + +required: + - compatible + - reg + - interrupts + - clocks + - "#address-cells" + - "#size-cells" + +unevaluatedProperties: false + +examples: + - | + #include <dt-bindings/clock/hix5hd2-clock.h> + + i2c@f8b10000 { + compatible = "hisilicon,hix5hd2-i2c"; + reg = <0xf8b10000 0x1000>; + interrupts = <0 38 4>; + clocks = <&clock HIX5HD2_I2C0_RST>; + #address-cells = <1>; + #size-cells = <0>; + };
Documentation/devicetree/bindings/i2c/i2c-hix5hd2.txt deleted +0 -24
@@ -1,24 +0,0 @@ -I2C for Hisilicon hix5hd2 chipset platform - -Required properties: -- compatible: Must be "hisilicon,hix5hd2-i2c" -- reg: physical base address of the controller and length of memory mapped - region. -- interrupts: interrupt number to the cpu. -- #address-cells = <1>; -- #size-cells = <0>; -- clocks: phandles to input clocks. - -Optional properties: -- clock-frequency: Desired I2C bus frequency in Hz, otherwise defaults to 100000 -- Child nodes conforming to i2c bus binding - -Examples: -I2C0@f8b10000 { - compatible = "hisilicon,hix5hd2-i2c"; - reg = <0xf8b10000 0x1000>; - interrupts = <0 38 4>; - clocks = <&clock HIX5HD2_I2C0_RST>; - #address-cells = <1>; - #size-cells = <0>; -}
Signature · 1 line
2.51.0
Quoted 1 line · Kael D'Alcamo
Signed-off-by Kael D'Alcamo <[email protected]>
With a commit body,
Hi,
thanks for this conversion!
Documentation/devicetree/bindings/i2c/hisilicon,hix5hd2-i2c.yaml line 17
Quoted 4 lines
Documentation/devicetree/bindings/i2c/hisilicon,hix5hd2-i2c.yaml new file +4
-0+properties: + compatible: + enum: + - hisilicon,hix5hd2-i2c
Question for DT maintainers: Is it preferred to start with 'enum' right away or to start with 'const' and convert to 'enum' once a second user appears?
Documentation/devicetree/bindings/i2c/hisilicon,hix5hd2-i2c.yaml line 36
Quoted 5 lines
Documentation/devicetree/bindings/i2c/hisilicon,hix5hd2-i2c.yaml new file +5
-0+ "#address-cells": + const: 1 + + "#size-cells": + const: 0
These should be left out because they come from i2c-controller.yaml?
Documentation/devicetree/bindings/i2c/hisilicon,hix5hd2-i2c.yaml line 44
Quoted 7 lines
Documentation/devicetree/bindings/i2c/hisilicon,hix5hd2-i2c.yaml new file +7
-0+required: + - compatible + - reg + - interrupts + - clocks + - "#address-cells" + - "#size-cells"
Same here for the last two?
Happy hacking,
Wolfram
Quoted 4 lines · Wolfram Sang
Hi,
thanks for this conversion!
Quoted 8 lines
Documentation/devicetree/bindings/i2c/hisilicon,hix5hd2-i2c.yaml line 17
Quoted 4 lines
Documentation/devicetree/bindings/i2c/hisilicon,hix5hd2-i2c.yaml new file +4
-0+properties: + compatible: + enum: + - hisilicon,hix5hd2-i2cQuestion for DT maintainers: Is it preferred to start with 'enum' right away or to start with 'const' and convert to 'enum' once a second user appears?
I don't have preference except: I would suggest using enum if you already think there will be second variant, because it would save one re-indent/rewrite of the line.
But in this case of old schema this is unlikely, so really does not matter for me.
Quoted 8 lines
Documentation/devicetree/bindings/i2c/hisilicon,hix5hd2-i2c.yaml line 36
Quoted 6 lines
Documentation/devicetree/bindings/i2c/hisilicon,hix5hd2-i2c.yaml new file +5
-0+ "#address-cells": + const: 1 + + "#size-cells": + const: 0These should be left out because they come from
i2c-controller.yaml?
Yeah, these are redundant.
Quoted 10 lines
Documentation/devicetree/bindings/i2c/hisilicon,hix5hd2-i2c.yaml line 44
Quoted 8 lines
Documentation/devicetree/bindings/i2c/hisilicon,hix5hd2-i2c.yaml new file +7
-0+required: + - compatible + - reg + - interrupts + - clocks + - "#address-cells" + - "#size-cells"Same here for the last two?
i2c-controller.yaml does not require these I think for a reason - you could have enabled empty I2C controller node for user space and having these required without actual children causes dtc W=1 or W=2 warning.
so yeah, I would propose to drop these as well.
Best regards,
Krzysztof
v2 cover dt-bindings: i2c: hisilicon,hix5hd2-i2c convert to DT schema
Thanks everybody for your feedback, here is the updated patch.
Changelog v1 -> v2:
* removed redundant "#address-cells" and "#size-cells" properties
Kael D'Alcamo (1):
dt-bindings: i2c: hisilicon,hix5hd2-i2c convert to DT schema
.../bindings/i2c/hisilicon,hix5hd2-i2c.yaml | 51 +++++++++++++++++++ .../devicetree/bindings/i2c/i2c-hix5hd2.txt | 24 --------- 2 files changed, 51 insertions(+), 24 deletions(-) create mode 100644 Documentation/devicetree/bindings/i2c/hisilicon,hix5hd2-i2c.yaml delete mode 100644 Documentation/devicetree/bindings/i2c/i2c-hix5hd2.txt
Signature · 1 line
2.51.0
PATCH v2 1/1 dt-bindings: i2c: hisilicon,hix5hd2-i2c convert to DT schema
Convert the Devicetree binding documentation for:
* hisilicon,hix5hd2-i2c
from plain text to DT binding schema.
--- .../bindings/i2c/hisilicon,hix5hd2-i2c.yaml | 51 +++++++++++++++++++ .../devicetree/bindings/i2c/i2c-hix5hd2.txt | 24 --------- 2 files changed, 51 insertions(+), 24 deletions(-) create mode 100644 Documentation/devicetree/bindings/i2c/hisilicon,hix5hd2-i2c.yaml delete mode 100644 Documentation/devicetree/bindings/i2c/i2c-hix5hd2.txt
Documentation/devicetree/bindings/i2c/hisilicon,hix5hd2-i2c.yaml new file +51 -0
@@ -0,0 +1,51 @@ +# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/i2c/hisilicon,hix5hd2-i2c.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# +title: I2C for HiSilicon hix5hd2 chipset platform + +maintainers: + - Wei Yan <[email protected]> + +allOf: + - $ref: /schemas/i2c/i2c-controller.yaml# + +properties: + compatible: + enum: + - hisilicon,hix5hd2-i2c + + reg: + maxItems: 1 + + interrupts: + maxItems: 1 + + clocks: + maxItems: 1 + + clock-frequency: + description: Desired I2C bus frequency in Hz + default: 100000 + +required: + - compatible + - reg + - interrupts + - clocks + +unevaluatedProperties: false + +examples: + - | + #include <dt-bindings/clock/hix5hd2-clock.h> + + i2c@f8b10000 { + compatible = "hisilicon,hix5hd2-i2c"; + reg = <0xf8b10000 0x1000>; + interrupts = <0 38 4>; + clocks = <&clock HIX5HD2_I2C0_RST>; + #address-cells = <1>; + #size-cells = <0>; + };
Documentation/devicetree/bindings/i2c/i2c-hix5hd2.txt deleted +0 -24
@@ -1,24 +0,0 @@ -I2C for Hisilicon hix5hd2 chipset platform - -Required properties: -- compatible: Must be "hisilicon,hix5hd2-i2c" -- reg: physical base address of the controller and length of memory mapped - region. -- interrupts: interrupt number to the cpu. -- #address-cells = <1>; -- #size-cells = <0>; -- clocks: phandles to input clocks. - -Optional properties: -- clock-frequency: Desired I2C bus frequency in Hz, otherwise defaults to 100000 -- Child nodes conforming to i2c bus binding - -Examples: -I2C0@f8b10000 { - compatible = "hisilicon,hix5hd2-i2c"; - reg = <0xf8b10000 0x1000>; - interrupts = <0 38 4>; - clocks = <&clock HIX5HD2_I2C0_RST>; - #address-cells = <1>; - #size-cells = <0>; -}
Signature · 1 line
2.51.0
Quoted 6 lines · Kael D'Alcamo
Convert the Devicetree binding documentation for:
* hisilicon,hix5hd2-i2c
from plain text to DT binding schema.Signed-off-by Kael D'Alcamo <[email protected]>---
<form letter>
This is an automated instruction, just in case, because many review tags are being ignored. If you know the process, just skip it entirely (please do not feel offended by me posting it here - no bad intentions intended, no patronizing, I just want to avoid wasted efforts). If you do not know the process, here is a short explanation:
Please add Acked-by/Reviewed-by/Tested-by tags when posting new versions of patchset, under or above your Signed-off-by tag, unless patch changed significantly (e.g. new properties added to the DT bindings). Tag is "received", when provided in a message replied to you on the mailing list. Tools like b4 can help here ('b4 trailers -u ...'). However, there's no need to repost patches *only* to add the tags. The upstream maintainer will do that for tags received on the version they apply.
Full context and explanation:
https://elixir.bootlin.com/linux/v6.15/source/Documentation/process/submitting-patches.rst#L591
</form letter>
Best regards,
Krzysztof
Wolfram Sang
AppliedQuoted 5 lines · Kael D'Alcamo
Convert the Devicetree binding documentation for:
* hisilicon,hix5hd2-i2c
from plain text to DT binding schema.Signed-off-by Kael D'Alcamo <[email protected]>
Applied to for-next, thanks!