Message ID | 20220922040102.1554459-13-colin.foster@in-advantage.com (mailing list archive) |
---|---|
State | Superseded |
Delegated to: | Netdev Maintainers |
Headers | show |
Series | add support for the the vsc7512 internal copper phys | expand |
On 22/09/2022 06:01, Colin Foster wrote: > The ocelot-ext driver is another sub-device of the Ocelot / Felix driver > system, which currently supports the four internal copper phys. > > Signed-off-by: Colin Foster <colin.foster@in-advantage.com> > --- > > v2 > * New patch > > --- > .../bindings/net/dsa/mscc,ocelot.yaml | 58 +++++++++++++++++++ > 1 file changed, 58 insertions(+) > > diff --git a/Documentation/devicetree/bindings/net/dsa/mscc,ocelot.yaml b/Documentation/devicetree/bindings/net/dsa/mscc,ocelot.yaml > index 8d93ed9c172c..bed575236261 100644 > --- a/Documentation/devicetree/bindings/net/dsa/mscc,ocelot.yaml > +++ b/Documentation/devicetree/bindings/net/dsa/mscc,ocelot.yaml > @@ -54,9 +54,21 @@ description: | > - phy-mode = "1000base-x": on ports 0, 1, 2, 3 > - phy-mode = "2500base-x": on ports 0, 1, 2, 3 > > + VSC7412 (Ocelot-Ext): > + > + The Ocelot family consists of four devices, the VSC7511, VSC7512, VSC7513, > + and the VSC7514. The VSC7513 and VSC7514 both have an internal MIPS > + processor that natively support Linux. Additionally, all four devices > + support control over external interfaces, SPI and PCIe. The Ocelot-Ext > + driver is for the external control portion. > + > + The following PHY interface type are currently supported: > + - phy-mode = "internal": on ports 0, 1, 2, 3 "Currently supported" by hardware or by some specific, chosen implementation? If the latter, drop it. If the former, maybe this should be constrained in allOf:if:then. Best regards, Krzysztof
On Fri, Sep 23, 2022 at 08:08:53PM +0200, Krzysztof Kozlowski wrote: > On 22/09/2022 06:01, Colin Foster wrote: > > diff --git a/Documentation/devicetree/bindings/net/dsa/mscc,ocelot.yaml b/Documentation/devicetree/bindings/net/dsa/mscc,ocelot.yaml > > index 8d93ed9c172c..bed575236261 100644 > > --- a/Documentation/devicetree/bindings/net/dsa/mscc,ocelot.yaml > > +++ b/Documentation/devicetree/bindings/net/dsa/mscc,ocelot.yaml > > @@ -54,9 +54,21 @@ description: | > > - phy-mode = "1000base-x": on ports 0, 1, 2, 3 > > - phy-mode = "2500base-x": on ports 0, 1, 2, 3 > > > > + VSC7412 (Ocelot-Ext): > > + > > + The Ocelot family consists of four devices, the VSC7511, VSC7512, VSC7513, > > + and the VSC7514. The VSC7513 and VSC7514 both have an internal MIPS > > + processor that natively support Linux. Additionally, all four devices > > + support control over external interfaces, SPI and PCIe. The Ocelot-Ext > > + driver is for the external control portion. > > + > > + The following PHY interface type are currently supported: > > + - phy-mode = "internal": on ports 0, 1, 2, 3 > > "Currently supported" by hardware or by some specific, chosen > implementation? If the latter, drop it. If the former, maybe this should > be constrained in allOf:if:then. Hi Krzysztof, Currently supported by the software. This patch set explicitly adds support for the four internal ports. There'll be another patch set right around the corner that'll add QSGMII to ports 4-7. I see your point though. I'll drop "currently" and have it match the wording of the other drivers.
On 23/09/2022 20:18, Colin Foster wrote: >> "Currently supported" by hardware or by some specific, chosen >> implementation? If the latter, drop it. If the former, maybe this should >> be constrained in allOf:if:then. > > Hi Krzysztof, > > Currently supported by the software. This patch set explicitly adds > support for the four internal ports. There'll be another patch set right > around the corner that'll add QSGMII to ports 4-7. Then it is not related to the bindings. > > I see your point though. I'll drop "currently" and have it match the > wording of the other drivers. Drop entirely that sentence. One, chosen implementation in a very specific moment should not be referred by bindings. Best regards, Krzysztof
diff --git a/Documentation/devicetree/bindings/net/dsa/mscc,ocelot.yaml b/Documentation/devicetree/bindings/net/dsa/mscc,ocelot.yaml index 8d93ed9c172c..bed575236261 100644 --- a/Documentation/devicetree/bindings/net/dsa/mscc,ocelot.yaml +++ b/Documentation/devicetree/bindings/net/dsa/mscc,ocelot.yaml @@ -54,9 +54,21 @@ description: | - phy-mode = "1000base-x": on ports 0, 1, 2, 3 - phy-mode = "2500base-x": on ports 0, 1, 2, 3 + VSC7412 (Ocelot-Ext): + + The Ocelot family consists of four devices, the VSC7511, VSC7512, VSC7513, + and the VSC7514. The VSC7513 and VSC7514 both have an internal MIPS + processor that natively support Linux. Additionally, all four devices + support control over external interfaces, SPI and PCIe. The Ocelot-Ext + driver is for the external control portion. + + The following PHY interface type are currently supported: + - phy-mode = "internal": on ports 0, 1, 2, 3 + properties: compatible: enum: + - mscc,vsc7512-switch - mscc,vsc9953-switch - pci1957,eef0 @@ -258,3 +270,49 @@ examples: }; }; }; + # Ocelot-ext VSC7512 + - | + spi { + soc@0 { + compatible = "mscc,vsc7512"; + #address-cells = <1>; + #size-cells = <1>; + + ethernet-switch@0 { + compatible = "mscc,vsc7512-switch"; + reg = <0 0>; + + ethernet-ports { + #address-cells = <1>; + #size-cells = <0>; + + port@0 { + reg = <0>; + label = "cpu"; + ethernet = <&mac_sw>; + phy-handle = <&phy0>; + phy-mode = "internal"; + }; + + port@1 { + reg = <1>; + label = "swp1"; + phy-mode = "internal"; + phy-handle = <&phy1>; + }; + + port@2 { + reg = <2>; + phy-mode = "internal"; + phy-handle = <&phy2>; + }; + + port@3 { + reg = <3>; + phy-mode = "internal"; + phy-handle = <&phy3>; + }; + }; + }; + }; + };
The ocelot-ext driver is another sub-device of the Ocelot / Felix driver system, which currently supports the four internal copper phys. Signed-off-by: Colin Foster <colin.foster@in-advantage.com> --- v2 * New patch --- .../bindings/net/dsa/mscc,ocelot.yaml | 58 +++++++++++++++++++ 1 file changed, 58 insertions(+)