Message ID | 20220920052050.582321-1-sergio.paracuellos@gmail.com |
---|---|
State | Accepted, archived |
Headers | show |
Series | [v3] dt-bindings: i2c: migrate mt7621 text bindings to YAML | expand |
Context | Check | Description |
---|---|---|
robh/checkpatch | warning | total: 0 errors, 2 warnings, 69 lines checked |
robh/patch-applied | success | |
robh/dtbs-check | warning | build log |
robh/dt-meta-schema | success |
On 20/09/2022 07:20, Sergio Paracuellos wrote: > SoC MT7621 I2C bindings used text format, so migrate them to YAML. > There are some additions to the binding that were not in the original > txt file. This binding is used in MT7621 and MT7628a Ralink SoCs. To > properly match both dts nodes in tree we need to add to the schema > 'clocks', 'clock-names' and 'reset-names'. Both 'clock-names' and > 'reset-names' use 'i2c' as string so maintain that as const in > the schema. Also, Properly update MAINTAINERS file to align the > changes. > > Signed-off-by: Sergio Paracuellos <sergio.paracuellos@gmail.com> Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> plus two comments: > --- > Changes in v3: > - Address review comment from Krzysztof: > - Rebase onto last kernel version. > - Drop address-cells and size-cells. > - Properly explain deviations from txt in commit message. > - Drop reset-names as required property. > - Squash previous series two commits in one to be bisectable. > (...) > --- /dev/null > +++ b/Documentation/devicetree/bindings/i2c/mediatek,mt7621-i2c.yaml > @@ -0,0 +1,61 @@ > +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) > +%YAML 1.2 > +--- > +$id: http://devicetree.org/schemas/i2c/mediatek,mt7621-i2c.yaml# > +$schema: http://devicetree.org/meta-schemas/core.yaml# > + > +maintainers: > + - Stefan Roese <sr@denx.de> You can also add yourself if you have the interest, the hardware or the datasheets. > + > +title: Mediatek MT7621/MT7628 I2C master controller > + > +allOf: > + - $ref: /schemas/i2c/i2c-controller.yaml# > + > +properties: > + compatible: > + const: mediatek,mt7621-i2c > + > + reg: > + maxItems: 1 > + > + clocks: > + maxItems: 1 > + > + clock-names: > + const: i2c > + > + resets: > + maxItems: 1 > + > + reset-names: > + const: i2c > + > +required: > + - compatible > + - reg > + - resets > + - "#address-cells" > + - "#size-cells" Similarly to spi, the clocks might be added to required properties, if they are really needed. Best regards, Krzysztof
On Wed, Sep 21, 2022 at 8:47 AM Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> wrote: > > On 20/09/2022 07:20, Sergio Paracuellos wrote: > > SoC MT7621 I2C bindings used text format, so migrate them to YAML. > > There are some additions to the binding that were not in the original > > txt file. This binding is used in MT7621 and MT7628a Ralink SoCs. To > > properly match both dts nodes in tree we need to add to the schema > > 'clocks', 'clock-names' and 'reset-names'. Both 'clock-names' and > > 'reset-names' use 'i2c' as string so maintain that as const in > > the schema. Also, Properly update MAINTAINERS file to align the > > changes. > > > > Signed-off-by: Sergio Paracuellos <sergio.paracuellos@gmail.com> > > Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> Thanks! > > plus two comments: > > > --- > > Changes in v3: > > - Address review comment from Krzysztof: > > - Rebase onto last kernel version. > > - Drop address-cells and size-cells. > > - Properly explain deviations from txt in commit message. > > - Drop reset-names as required property. > > - Squash previous series two commits in one to be bisectable. > > > > (...) > > > --- /dev/null > > +++ b/Documentation/devicetree/bindings/i2c/mediatek,mt7621-i2c.yaml > > @@ -0,0 +1,61 @@ > > +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) > > +%YAML 1.2 > > +--- > > +$id: http://devicetree.org/schemas/i2c/mediatek,mt7621-i2c.yaml# > > +$schema: http://devicetree.org/meta-schemas/core.yaml# > > + > > +maintainers: > > + - Stefan Roese <sr@denx.de> > > You can also add yourself if you have the interest, the hardware or the > datasheets. Ok, thanks. > > > + > > +title: Mediatek MT7621/MT7628 I2C master controller > > + > > +allOf: > > + - $ref: /schemas/i2c/i2c-controller.yaml# > > + > > +properties: > > + compatible: > > + const: mediatek,mt7621-i2c > > + > > + reg: > > + maxItems: 1 > > + > > + clocks: > > + maxItems: 1 > > + > > + clock-names: > > + const: i2c > > + > > + resets: > > + maxItems: 1 > > + > > + reset-names: > > + const: i2c > > + > > +required: > > + - compatible > > + - reg > > + - resets > > + - "#address-cells" > > + - "#size-cells" > > Similarly to spi, the clocks might be added to required properties, if > they are really needed. CLocks are required by MT7621 SoC but MT7628 is not using them in current DTS: https://elixir.bootlin.com/linux/v6.0-rc5/source/arch/mips/boot/dts/ralink/mt7628a.dtsi#L203 That is the reason to not include them as required. Thanks, Sergio Paracuellos > > Best regards, > Krzysztof
On Tue, 20 Sep 2022 07:20:50 +0200, Sergio Paracuellos wrote: > SoC MT7621 I2C bindings used text format, so migrate them to YAML. > There are some additions to the binding that were not in the original > txt file. This binding is used in MT7621 and MT7628a Ralink SoCs. To > properly match both dts nodes in tree we need to add to the schema > 'clocks', 'clock-names' and 'reset-names'. Both 'clock-names' and > 'reset-names' use 'i2c' as string so maintain that as const in > the schema. Also, Properly update MAINTAINERS file to align the > changes. > > Signed-off-by: Sergio Paracuellos <sergio.paracuellos@gmail.com> > --- > Changes in v3: > - Address review comment from Krzysztof: > - Rebase onto last kernel version. > - Drop address-cells and size-cells. > - Properly explain deviations from txt in commit message. > - Drop reset-names as required property. > - Squash previous series two commits in one to be bisectable. > > Changes in v2: > - Maintain current maintainer Stefan Rose as listed in kernel MAINTAINERS file. > .../devicetree/bindings/i2c/i2c-mt7621.txt | 25 -------- > .../bindings/i2c/mediatek,mt7621-i2c.yaml | 61 +++++++++++++++++++ > MAINTAINERS | 2 +- > 3 files changed, 62 insertions(+), 26 deletions(-) > delete mode 100644 Documentation/devicetree/bindings/i2c/i2c-mt7621.txt > create mode 100644 Documentation/devicetree/bindings/i2c/mediatek,mt7621-i2c.yaml > Applied, thanks!
diff --git a/Documentation/devicetree/bindings/i2c/i2c-mt7621.txt b/Documentation/devicetree/bindings/i2c/i2c-mt7621.txt deleted file mode 100644 index bc36f0eb94cd..000000000000 --- a/Documentation/devicetree/bindings/i2c/i2c-mt7621.txt +++ /dev/null @@ -1,25 +0,0 @@ -MediaTek MT7621/MT7628 I2C master controller - -Required properties: - -- compatible: Should be one of the following: - - "mediatek,mt7621-i2c": for MT7621/MT7628/MT7688 platforms -- #address-cells: should be 1. -- #size-cells: should be 0. -- reg: Address and length of the register set for the device -- resets: phandle to the reset controller asserting this device in - reset - See ../reset/reset.txt for details. - -Optional properties : - -Example: - -i2c: i2c@900 { - compatible = "mediatek,mt7621-i2c"; - reg = <0x900 0x100>; - #address-cells = <1>; - #size-cells = <0>; - resets = <&rstctrl 16>; - reset-names = "i2c"; -}; diff --git a/Documentation/devicetree/bindings/i2c/mediatek,mt7621-i2c.yaml b/Documentation/devicetree/bindings/i2c/mediatek,mt7621-i2c.yaml new file mode 100644 index 000000000000..118ec00fc190 --- /dev/null +++ b/Documentation/devicetree/bindings/i2c/mediatek,mt7621-i2c.yaml @@ -0,0 +1,61 @@ +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/i2c/mediatek,mt7621-i2c.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +maintainers: + - Stefan Roese <sr@denx.de> + +title: Mediatek MT7621/MT7628 I2C master controller + +allOf: + - $ref: /schemas/i2c/i2c-controller.yaml# + +properties: + compatible: + const: mediatek,mt7621-i2c + + reg: + maxItems: 1 + + clocks: + maxItems: 1 + + clock-names: + const: i2c + + resets: + maxItems: 1 + + reset-names: + const: i2c + +required: + - compatible + - reg + - resets + - "#address-cells" + - "#size-cells" + +unevaluatedProperties: false + +examples: + - | + #include <dt-bindings/clock/mt7621-clk.h> + #include <dt-bindings/reset/mt7621-reset.h> + + i2c: i2c@900 { + compatible = "mediatek,mt7621-i2c"; + reg = <0x900 0x100>; + clocks = <&sysc MT7621_CLK_I2C>; + clock-names = "i2c"; + resets = <&sysc MT7621_RST_I2C>; + reset-names = "i2c"; + + #address-cells = <1>; + #size-cells = <0>; + + pinctrl-names = "default"; + pinctrl-0 = <&i2c_pins>; + }; diff --git a/MAINTAINERS b/MAINTAINERS index 08620b9a44fc..bac21d599181 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -12669,7 +12669,7 @@ MEDIATEK MT7621/28/88 I2C DRIVER M: Stefan Roese <sr@denx.de> L: linux-i2c@vger.kernel.org S: Maintained -F: Documentation/devicetree/bindings/i2c/i2c-mt7621.txt +F: Documentation/devicetree/bindings/i2c/mediatek,mt7621-i2c.yaml F: drivers/i2c/busses/i2c-mt7621.c MEDIATEK MT7621 PCIE CONTROLLER DRIVER
SoC MT7621 I2C bindings used text format, so migrate them to YAML. There are some additions to the binding that were not in the original txt file. This binding is used in MT7621 and MT7628a Ralink SoCs. To properly match both dts nodes in tree we need to add to the schema 'clocks', 'clock-names' and 'reset-names'. Both 'clock-names' and 'reset-names' use 'i2c' as string so maintain that as const in the schema. Also, Properly update MAINTAINERS file to align the changes. Signed-off-by: Sergio Paracuellos <sergio.paracuellos@gmail.com> --- Changes in v3: - Address review comment from Krzysztof: - Rebase onto last kernel version. - Drop address-cells and size-cells. - Properly explain deviations from txt in commit message. - Drop reset-names as required property. - Squash previous series two commits in one to be bisectable. Changes in v2: - Maintain current maintainer Stefan Rose as listed in kernel MAINTAINERS file. .../devicetree/bindings/i2c/i2c-mt7621.txt | 25 -------- .../bindings/i2c/mediatek,mt7621-i2c.yaml | 61 +++++++++++++++++++ MAINTAINERS | 2 +- 3 files changed, 62 insertions(+), 26 deletions(-) delete mode 100644 Documentation/devicetree/bindings/i2c/i2c-mt7621.txt create mode 100644 Documentation/devicetree/bindings/i2c/mediatek,mt7621-i2c.yaml