Message ID | 1588055482-13012-1-git-send-email-hayashi.kunihiko@socionext.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | [net] dt-bindings: net: Convert UniPhier AVE4 controller to json-schema | expand |
From: Kunihiko Hayashi <hayashi.kunihiko@socionext.com> Date: Tue, 28 Apr 2020 15:31:22 +0900 > Convert the UniPhier AVE4 controller binding to DT schema format. > This changes phy-handle property to required. > > Signed-off-by: Kunihiko Hayashi <hayashi.kunihiko@socionext.com> DT folks, is it ok if I take this into net-next or do you folks want to take it instead? Thanks.
Hi David, Rob, On 2020/05/02 7:21, David Miller wrote: > From: Kunihiko Hayashi <hayashi.kunihiko@socionext.com> > Date: Tue, 28 Apr 2020 15:31:22 +0900 > >> Convert the UniPhier AVE4 controller binding to DT schema format. >> This changes phy-handle property to required. >> >> Signed-off-by: Kunihiko Hayashi <hayashi.kunihiko@socionext.com> > > DT folks, is it ok if I take this into net-next or do you folks want to > take it instead? Rob, how about this? I think net-next is preferable. Thank you, --- Best Regards Kunihiko Hayashi
On Tue, Apr 28, 2020 at 03:31:22PM +0900, Kunihiko Hayashi wrote: > Convert the UniPhier AVE4 controller binding to DT schema format. > This changes phy-handle property to required. > > Signed-off-by: Kunihiko Hayashi <hayashi.kunihiko@socionext.com> > --- > .../bindings/net/socionext,uniphier-ave4.txt | 64 ------------ > .../bindings/net/socionext,uniphier-ave4.yaml | 109 +++++++++++++++++++++ > MAINTAINERS | 2 +- > 3 files changed, 110 insertions(+), 65 deletions(-) > delete mode 100644 Documentation/devicetree/bindings/net/socionext,uniphier-ave4.txt > create mode 100644 Documentation/devicetree/bindings/net/socionext,uniphier-ave4.yaml > > diff --git a/Documentation/devicetree/bindings/net/socionext,uniphier-ave4.txt b/Documentation/devicetree/bindings/net/socionext,uniphier-ave4.txt > deleted file mode 100644 > index 4e85fc4..0000000 > --- a/Documentation/devicetree/bindings/net/socionext,uniphier-ave4.txt > +++ /dev/null > @@ -1,64 +0,0 @@ > -* Socionext AVE ethernet controller > - > -This describes the devicetree bindings for AVE ethernet controller > -implemented on Socionext UniPhier SoCs. > - > -Required properties: > - - compatible: Should be > - - "socionext,uniphier-pro4-ave4" : for Pro4 SoC > - - "socionext,uniphier-pxs2-ave4" : for PXs2 SoC > - - "socionext,uniphier-ld11-ave4" : for LD11 SoC > - - "socionext,uniphier-ld20-ave4" : for LD20 SoC > - - "socionext,uniphier-pxs3-ave4" : for PXs3 SoC > - - reg: Address where registers are mapped and size of region. > - - interrupts: Should contain the MAC interrupt. > - - phy-mode: See ethernet.txt in the same directory. Allow to choose > - "rgmii", "rmii", "mii", or "internal" according to the PHY. > - The acceptable mode is SoC-dependent. > - - phy-handle: Should point to the external phy device. > - See ethernet.txt file in the same directory. > - - clocks: A phandle to the clock for the MAC. > - For Pro4 SoC, that is "socionext,uniphier-pro4-ave4", > - another MAC clock, GIO bus clock and PHY clock are also required. > - - clock-names: Should contain > - - "ether", "ether-gb", "gio", "ether-phy" for Pro4 SoC > - - "ether" for others > - - resets: A phandle to the reset control for the MAC. For Pro4 SoC, > - GIO bus reset is also required. > - - reset-names: Should contain > - - "ether", "gio" for Pro4 SoC > - - "ether" for others > - - socionext,syscon-phy-mode: A phandle to syscon with one argument > - that configures phy mode. The argument is the ID of MAC instance. > - > -The MAC address will be determined using the optional properties > -defined in ethernet.txt. > - > -Required subnode: > - - mdio: A container for child nodes representing phy nodes. > - See phy.txt in the same directory. > - > -Example: > - > - ether: ethernet@65000000 { > - compatible = "socionext,uniphier-ld20-ave4"; > - reg = <0x65000000 0x8500>; > - interrupts = <0 66 4>; > - phy-mode = "rgmii"; > - phy-handle = <ðphy>; > - clock-names = "ether"; > - clocks = <&sys_clk 6>; > - reset-names = "ether"; > - resets = <&sys_rst 6>; > - socionext,syscon-phy-mode = <&soc_glue 0>; > - local-mac-address = [00 00 00 00 00 00]; > - > - mdio { > - #address-cells = <1>; > - #size-cells = <0>; > - > - ethphy: ethphy@1 { > - reg = <1>; > - }; > - }; > - }; > diff --git a/Documentation/devicetree/bindings/net/socionext,uniphier-ave4.yaml b/Documentation/devicetree/bindings/net/socionext,uniphier-ave4.yaml > new file mode 100644 > index 0000000..fd31e87 > --- /dev/null > +++ b/Documentation/devicetree/bindings/net/socionext,uniphier-ave4.yaml > @@ -0,0 +1,109 @@ > +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) > +%YAML 1.2 > +--- > +$id: http://devicetree.org/schemas/net/socionext,uniphier-ave4.yaml# > +$schema: http://devicetree.org/meta-schemas/core.yaml# > + > +title: Socionext AVE ethernet controller > + > +maintainers: > + - Kunihiko Hayashi <hayashi.kunihiko@socionext.com> > + > +description: | > + This describes the devicetree bindings for AVE ethernet controller > + implemented on Socionext UniPhier SoCs. > + > +allOf: > + - $ref: ethernet-controller.yaml# > + > +properties: > + compatible: > + enum: > + - socionext,uniphier-pro4-ave4 > + - socionext,uniphier-pxs2-ave4 > + - socionext,uniphier-ld11-ave4 > + - socionext,uniphier-ld20-ave4 > + - socionext,uniphier-pxs3-ave4 > + > + reg: > + maxItems: 1 > + > + interrupts: > + maxItems: 1 > + > + phy-mode: > + $ref: ethernet-controller.yaml#/properties/phy-mode > + > + phy-handle: > + $ref: ethernet-controller.yaml#/properties/phy-handle No need for these $ref, the 1st reference did this. Just: phy-mode: true > + > + clocks: > + minItems: 1 > + maxItems: 4 > + > + clock-names: > + oneOf: > + - items: # for Pro4 > + - const: gio > + - const: ether > + - const: ether-gb > + - const: ether-phy > + - const: ether # for others > + > + resets: > + minItems: 1 > + maxItems: 2 > + > + reset-names: > + oneOf: > + - items: # for Pro4 > + - const: gio > + - const: ether > + - const: ether # for others > + > + socionext,syscon-phy-mode: > + $ref: /schemas/types.yaml#definitions/phandle-array > + description: > + A phandle to syscon with one argument that configures phy mode. > + The argument is the ID of MAC instance. > + > + mdio: > + $ref: mdio.yaml# > + > +required: > + - compatible > + - reg > + - interrupts > + - phy-mode > + - phy-handle > + - clocks > + - clock-names > + - resets > + - reset-names > + - mdio > + > +additionalProperties: false > + > +examples: > + - | > + ether: ethernet@65000000 { > + compatible = "socionext,uniphier-ld20-ave4"; > + reg = <0x65000000 0x8500>; > + interrupts = <0 66 4>; > + phy-mode = "rgmii"; > + phy-handle = <ðphy>; > + clock-names = "ether"; > + clocks = <&sys_clk 6>; > + reset-names = "ether"; > + resets = <&sys_rst 6>; > + socionext,syscon-phy-mode = <&soc_glue 0>; > + > + mdio { > + #address-cells = <1>; > + #size-cells = <0>; > + > + ethphy: ethernet-phy@1 { > + reg = <1>; > + }; > + }; > + }; > diff --git a/MAINTAINERS b/MAINTAINERS > index a1558eb..0ee65e2 100644 > --- a/MAINTAINERS > +++ b/MAINTAINERS > @@ -15590,7 +15590,7 @@ SOCIONEXT (SNI) AVE NETWORK DRIVER > M: Kunihiko Hayashi <hayashi.kunihiko@socionext.com> > L: netdev@vger.kernel.org > S: Maintained > -F: Documentation/devicetree/bindings/net/socionext,uniphier-ave4.txt > +F: Documentation/devicetree/bindings/net/socionext,uniphier-ave4.yaml > F: drivers/net/ethernet/socionext/sni_ave.c > > SOCIONEXT (SNI) NETSEC NETWORK DRIVER > -- > 2.7.4 >
Hi Rob, On 2020/05/12 11:01, Rob Herring wrote: > On Tue, Apr 28, 2020 at 03:31:22PM +0900, Kunihiko Hayashi wrote: >> Convert the UniPhier AVE4 controller binding to DT schema format. >> This changes phy-handle property to required. >> >> Signed-off-by: Kunihiko Hayashi <hayashi.kunihiko@socionext.com> >> --- (snip) >> + phy-mode: >> + $ref: ethernet-controller.yaml#/properties/phy-mode >> + >> + phy-handle: >> + $ref: ethernet-controller.yaml#/properties/phy-handle > > No need for these $ref, the 1st reference did this. Just: > > phy-mode: true Okay, "phy-handle" also replaces with "true". I'll fix it in v2. Thank you, --- Best Regards Kunihiko Hayashi
diff --git a/Documentation/devicetree/bindings/net/socionext,uniphier-ave4.txt b/Documentation/devicetree/bindings/net/socionext,uniphier-ave4.txt deleted file mode 100644 index 4e85fc4..0000000 --- a/Documentation/devicetree/bindings/net/socionext,uniphier-ave4.txt +++ /dev/null @@ -1,64 +0,0 @@ -* Socionext AVE ethernet controller - -This describes the devicetree bindings for AVE ethernet controller -implemented on Socionext UniPhier SoCs. - -Required properties: - - compatible: Should be - - "socionext,uniphier-pro4-ave4" : for Pro4 SoC - - "socionext,uniphier-pxs2-ave4" : for PXs2 SoC - - "socionext,uniphier-ld11-ave4" : for LD11 SoC - - "socionext,uniphier-ld20-ave4" : for LD20 SoC - - "socionext,uniphier-pxs3-ave4" : for PXs3 SoC - - reg: Address where registers are mapped and size of region. - - interrupts: Should contain the MAC interrupt. - - phy-mode: See ethernet.txt in the same directory. Allow to choose - "rgmii", "rmii", "mii", or "internal" according to the PHY. - The acceptable mode is SoC-dependent. - - phy-handle: Should point to the external phy device. - See ethernet.txt file in the same directory. - - clocks: A phandle to the clock for the MAC. - For Pro4 SoC, that is "socionext,uniphier-pro4-ave4", - another MAC clock, GIO bus clock and PHY clock are also required. - - clock-names: Should contain - - "ether", "ether-gb", "gio", "ether-phy" for Pro4 SoC - - "ether" for others - - resets: A phandle to the reset control for the MAC. For Pro4 SoC, - GIO bus reset is also required. - - reset-names: Should contain - - "ether", "gio" for Pro4 SoC - - "ether" for others - - socionext,syscon-phy-mode: A phandle to syscon with one argument - that configures phy mode. The argument is the ID of MAC instance. - -The MAC address will be determined using the optional properties -defined in ethernet.txt. - -Required subnode: - - mdio: A container for child nodes representing phy nodes. - See phy.txt in the same directory. - -Example: - - ether: ethernet@65000000 { - compatible = "socionext,uniphier-ld20-ave4"; - reg = <0x65000000 0x8500>; - interrupts = <0 66 4>; - phy-mode = "rgmii"; - phy-handle = <ðphy>; - clock-names = "ether"; - clocks = <&sys_clk 6>; - reset-names = "ether"; - resets = <&sys_rst 6>; - socionext,syscon-phy-mode = <&soc_glue 0>; - local-mac-address = [00 00 00 00 00 00]; - - mdio { - #address-cells = <1>; - #size-cells = <0>; - - ethphy: ethphy@1 { - reg = <1>; - }; - }; - }; diff --git a/Documentation/devicetree/bindings/net/socionext,uniphier-ave4.yaml b/Documentation/devicetree/bindings/net/socionext,uniphier-ave4.yaml new file mode 100644 index 0000000..fd31e87 --- /dev/null +++ b/Documentation/devicetree/bindings/net/socionext,uniphier-ave4.yaml @@ -0,0 +1,109 @@ +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/net/socionext,uniphier-ave4.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Socionext AVE ethernet controller + +maintainers: + - Kunihiko Hayashi <hayashi.kunihiko@socionext.com> + +description: | + This describes the devicetree bindings for AVE ethernet controller + implemented on Socionext UniPhier SoCs. + +allOf: + - $ref: ethernet-controller.yaml# + +properties: + compatible: + enum: + - socionext,uniphier-pro4-ave4 + - socionext,uniphier-pxs2-ave4 + - socionext,uniphier-ld11-ave4 + - socionext,uniphier-ld20-ave4 + - socionext,uniphier-pxs3-ave4 + + reg: + maxItems: 1 + + interrupts: + maxItems: 1 + + phy-mode: + $ref: ethernet-controller.yaml#/properties/phy-mode + + phy-handle: + $ref: ethernet-controller.yaml#/properties/phy-handle + + clocks: + minItems: 1 + maxItems: 4 + + clock-names: + oneOf: + - items: # for Pro4 + - const: gio + - const: ether + - const: ether-gb + - const: ether-phy + - const: ether # for others + + resets: + minItems: 1 + maxItems: 2 + + reset-names: + oneOf: + - items: # for Pro4 + - const: gio + - const: ether + - const: ether # for others + + socionext,syscon-phy-mode: + $ref: /schemas/types.yaml#definitions/phandle-array + description: + A phandle to syscon with one argument that configures phy mode. + The argument is the ID of MAC instance. + + mdio: + $ref: mdio.yaml# + +required: + - compatible + - reg + - interrupts + - phy-mode + - phy-handle + - clocks + - clock-names + - resets + - reset-names + - mdio + +additionalProperties: false + +examples: + - | + ether: ethernet@65000000 { + compatible = "socionext,uniphier-ld20-ave4"; + reg = <0x65000000 0x8500>; + interrupts = <0 66 4>; + phy-mode = "rgmii"; + phy-handle = <ðphy>; + clock-names = "ether"; + clocks = <&sys_clk 6>; + reset-names = "ether"; + resets = <&sys_rst 6>; + socionext,syscon-phy-mode = <&soc_glue 0>; + + mdio { + #address-cells = <1>; + #size-cells = <0>; + + ethphy: ethernet-phy@1 { + reg = <1>; + }; + }; + }; diff --git a/MAINTAINERS b/MAINTAINERS index a1558eb..0ee65e2 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -15590,7 +15590,7 @@ SOCIONEXT (SNI) AVE NETWORK DRIVER M: Kunihiko Hayashi <hayashi.kunihiko@socionext.com> L: netdev@vger.kernel.org S: Maintained -F: Documentation/devicetree/bindings/net/socionext,uniphier-ave4.txt +F: Documentation/devicetree/bindings/net/socionext,uniphier-ave4.yaml F: drivers/net/ethernet/socionext/sni_ave.c SOCIONEXT (SNI) NETSEC NETWORK DRIVER
Convert the UniPhier AVE4 controller binding to DT schema format. This changes phy-handle property to required. Signed-off-by: Kunihiko Hayashi <hayashi.kunihiko@socionext.com> --- .../bindings/net/socionext,uniphier-ave4.txt | 64 ------------ .../bindings/net/socionext,uniphier-ave4.yaml | 109 +++++++++++++++++++++ MAINTAINERS | 2 +- 3 files changed, 110 insertions(+), 65 deletions(-) delete mode 100644 Documentation/devicetree/bindings/net/socionext,uniphier-ave4.txt create mode 100644 Documentation/devicetree/bindings/net/socionext,uniphier-ave4.yaml