Message ID | 20241208002105.18074-3-ansuelsmth@gmail.com (mailing list archive) |
---|---|
State | New |
Headers | show |
Series | net: dsa: Add Airoha AN8855 support | expand |
On Sun, Dec 08, 2024 at 01:20:37AM +0100, Christian Marangi wrote: > Document support for Airoha AN8855 Virtual MDIO Passtrough. This is needed > as AN8855 require special handling as the same address on the MDIO bus is > shared for both Switch and PHY and special handling for the page > configuration is needed to switch accessing to Switch address space > or PHY. > > Signed-off-by: Christian Marangi <ansuelsmth@gmail.com> > --- > .../bindings/net/airoha,an8855-mdio.yaml | 86 +++++++++++++++++++ > MAINTAINERS | 1 + > 2 files changed, 87 insertions(+) > create mode 100644 Documentation/devicetree/bindings/net/airoha,an8855-mdio.yaml > > diff --git a/Documentation/devicetree/bindings/net/airoha,an8855-mdio.yaml b/Documentation/devicetree/bindings/net/airoha,an8855-mdio.yaml > new file mode 100644 > index 000000000000..2211df3cc3b7 > --- /dev/null > +++ b/Documentation/devicetree/bindings/net/airoha,an8855-mdio.yaml > @@ -0,0 +1,86 @@ > +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) > +%YAML 1.2 > +--- > +$id: http://devicetree.org/schemas/net/airoha,an8855-mdio.yaml# > +$schema: http://devicetree.org/meta-schemas/core.yaml# > + > +title: Airoha AN8855 MDIO Passtrough > + > +maintainers: > + - Christian Marangi <ansuelsmth@gmail.com> > + > +description: > + Airoha AN8855 Virtual MDIO Passtrough. This is needed as AN8855 > + require special handling as the same address on the MDIO bus is > + shared for both Switch and PHY and special handling for the page > + configuration is needed to switch accessing to Switch address space > + or PHY. > + > +$ref: /schemas/net/mdio.yaml# > + > +properties: > + compatible: > + const: airoha,an8855-mdio > + > +required: > + - compatible > + > +unevaluatedProperties: false > + > +examples: > + - | > + mdio { > + compatible = "airoha,an8855-mdio"; > + #address-cells = <1>; > + #size-cells = <0>; > + > + internal_phy1: phy@1 { > + reg = <1>; > + > + nvmem-cells = <&shift_sel_port0_tx_a>, > + <&shift_sel_port0_tx_b>, > + <&shift_sel_port0_tx_c>, > + <&shift_sel_port0_tx_d>; > + nvmem-cell-names = "tx_a", "tx_b", "tx_c", "tx_d"; For this example nvmem is not relevant. Those are PHY properties, not MDIO properties. So you could simplify this. Andrew
diff --git a/Documentation/devicetree/bindings/net/airoha,an8855-mdio.yaml b/Documentation/devicetree/bindings/net/airoha,an8855-mdio.yaml new file mode 100644 index 000000000000..2211df3cc3b7 --- /dev/null +++ b/Documentation/devicetree/bindings/net/airoha,an8855-mdio.yaml @@ -0,0 +1,86 @@ +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/net/airoha,an8855-mdio.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Airoha AN8855 MDIO Passtrough + +maintainers: + - Christian Marangi <ansuelsmth@gmail.com> + +description: + Airoha AN8855 Virtual MDIO Passtrough. This is needed as AN8855 + require special handling as the same address on the MDIO bus is + shared for both Switch and PHY and special handling for the page + configuration is needed to switch accessing to Switch address space + or PHY. + +$ref: /schemas/net/mdio.yaml# + +properties: + compatible: + const: airoha,an8855-mdio + +required: + - compatible + +unevaluatedProperties: false + +examples: + - | + mdio { + compatible = "airoha,an8855-mdio"; + #address-cells = <1>; + #size-cells = <0>; + + internal_phy1: phy@1 { + reg = <1>; + + nvmem-cells = <&shift_sel_port0_tx_a>, + <&shift_sel_port0_tx_b>, + <&shift_sel_port0_tx_c>, + <&shift_sel_port0_tx_d>; + nvmem-cell-names = "tx_a", "tx_b", "tx_c", "tx_d"; + }; + + internal_phy2: phy@2 { + reg = <2>; + + nvmem-cells = <&shift_sel_port1_tx_a>, + <&shift_sel_port1_tx_b>, + <&shift_sel_port1_tx_c>, + <&shift_sel_port1_tx_d>; + nvmem-cell-names = "tx_a", "tx_b", "tx_c", "tx_d"; + }; + + internal_phy3: phy@3 { + reg = <3>; + + nvmem-cells = <&shift_sel_port2_tx_a>, + <&shift_sel_port2_tx_b>, + <&shift_sel_port2_tx_c>, + <&shift_sel_port2_tx_d>; + nvmem-cell-names = "tx_a", "tx_b", "tx_c", "tx_d"; + }; + + internal_phy4: phy@4 { + reg = <4>; + + nvmem-cells = <&shift_sel_port3_tx_a>, + <&shift_sel_port3_tx_b>, + <&shift_sel_port3_tx_c>, + <&shift_sel_port3_tx_d>; + nvmem-cell-names = "tx_a", "tx_b", "tx_c", "tx_d"; + }; + + internal_phy5: phy@5 { + reg = <5>; + + nvmem-cells = <&shift_sel_port4_tx_a>, + <&shift_sel_port4_tx_b>, + <&shift_sel_port4_tx_c>, + <&shift_sel_port4_tx_d>; + nvmem-cell-names = "tx_a", "tx_b", "tx_c", "tx_d"; + }; + }; diff --git a/MAINTAINERS b/MAINTAINERS index 53ef66eef473..e3569fe5f3de 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -717,6 +717,7 @@ L: linux-arm-kernel@lists.infradead.org (moderated for non-subscribers) L: linux-mediatek@lists.infradead.org (moderated for non-subscribers) L: netdev@vger.kernel.org S: Maintained +F: Documentation/devicetree/bindings/net/airoha,an8855-mdio.yaml F: Documentation/devicetree/bindings/nvmem/airoha,an8855-efuse.yaml AIROHA ETHERNET DRIVER
Document support for Airoha AN8855 Virtual MDIO Passtrough. This is needed as AN8855 require special handling as the same address on the MDIO bus is shared for both Switch and PHY and special handling for the page configuration is needed to switch accessing to Switch address space or PHY. Signed-off-by: Christian Marangi <ansuelsmth@gmail.com> --- .../bindings/net/airoha,an8855-mdio.yaml | 86 +++++++++++++++++++ MAINTAINERS | 1 + 2 files changed, 87 insertions(+) create mode 100644 Documentation/devicetree/bindings/net/airoha,an8855-mdio.yaml