RE: [EXT] Re: [PATCH net-next v3 7/7] arm64: dts: add serdes and mdio description
From: Florinel Iordache
Date: Mon Jun 29 2020 - 17:21:45 EST
> -----Original Message-----
> From: Florian Fainelli <f.fainelli@xxxxxxxxx>
> Sent: Friday, June 26, 2020 10:08 PM
> To: Florinel Iordache <florinel.iordache@xxxxxxx>; davem@xxxxxxxxxxxxx;
> netdev@xxxxxxxxxxxxxxx; andrew@xxxxxxx; hkallweit1@xxxxxxxxx;
> linux@xxxxxxxxxxxxxxx
> Cc: devicetree@xxxxxxxxxxxxxxx; linux-doc@xxxxxxxxxxxxxxx;
> robh+dt@xxxxxxxxxx; mark.rutland@xxxxxxx; kuba@xxxxxxxxxx;
> corbet@xxxxxxx; shawnguo@xxxxxxxxxx; Leo Li <leoyang.li@xxxxxxx>; Madalin
> Bucur (OSS) <madalin.bucur@xxxxxxxxxxx>; Ioana Ciornei
> <ioana.ciornei@xxxxxxx>; linux-kernel@xxxxxxxxxxxxxxx
> Subject: [EXT] Re: [PATCH net-next v3 7/7] arm64: dts: add serdes and mdio
> description
>
> Caution: EXT Email
>
> On 6/22/20 6:35 AM, Florinel Iordache wrote:
> > Add dt nodes with serdes, lanes, mdio generic description for
> > supported
> > platform: ls1046. This is a prerequisite to enable backplane on device
> > tree for these platforms.
> >
> > Signed-off-by: Florinel Iordache <florinel.iordache@xxxxxxx>
> > ---
>
> [snip]
>
> > @@ -21,7 +22,7 @@ fman@1a00000 {
> > fsl,fman-10g-port;
> > };
> >
> > - ethernet@f2000 {
> > + mac10: ethernet@f2000 {
> > cell-index = <0x9>;
> > compatible = "fsl,fman-memac";
> > reg = <0xf2000 0x1000>;
> > @@ -29,7 +30,7 @@ fman@1a00000 {
> > pcsphy-handle = <&pcsphy7>;
> > };
> >
> > - mdio@f3000 {
> > + mdio10: mdio@f3000 {
> > #address-cells = <1>;
> > #size-cells = <0>;
> > compatible = "fsl,fman-memac-mdio", "fsl,fman-xmdio";
>
> That part of the patch does not seem to have any users, there is nothing in your
> patch series that references mac9, mdio9 or mac10, mdio10 AFAICT. Maybe you
> can split it up and send it aside from this series?
> --
> Florian
Hi Florian,
These labels are used in the platform DTS (e.g.: fsl-ls1046a-rdb.dts for DPAA1 / LS1046).
They are not used in the patch because backplane mode is NOT the default mode.
Backplane mode is enabled by users for custom boards by editing the DTS.
Interfaces must be used by default with a PHY like: phy-handle = <&aqr106_phy>
How to enable backplane mode in DTS is described in devicetree bindings file: ethernet-phy.yaml
(which includes an example at the end).
Here is an example of how the labels are used to enable backplane mode:
&mdio9 {
pcsphy6: ethernet-phy@0 {
compatible = "ethernet-phy-ieee802.3-c45";
eq-algorithm = "bee";
/* 10G Short cables setup: up to 30 cm cable */
eq-init = <0x2 0x29 0x5>;
eq-params = <0>;
reg = <0x0>;
lane-handle = <&lane_d>; /* lane D */
};
};
/* Update MAC connections to backplane PHYs */
&mac9 {
phy-connection-type = "10gbase-kr";
phy-handle = <&pcsphy6>;
};
However, the users could write DTS by using ethernet@f0000 instead of &mac9.
Something like this:
ethernet@f0000 { /* 10GEC1 */
phy-connection-type = "10gbase-kr";
phy-handle = <&pcsphy6>;
};
(and similar for mdio9/mdio10)
So ultimately that part of the patch could be removed indeed.
I put it there just to be more user friendly to enable backplane in DTS.
Thank you for feedback.
Florinel.