From mboxrd@z Thu Jan 1 00:00:00 1970 From: Andrew Lunn Subject: Re: [PATCH net-next 2/2] net: phy: aquantia: add USXGMII support Date: Wed, 22 May 2019 22:58:51 +0200 Message-ID: <20190522205851.GA15257@lunn.ch> References: <110a1e45-56a7-a646-7b63-f39fe3083c28@gmail.com> <2c68bdb1-9b53-ce0b-74d3-c7ea2d9e7ac0@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Return-path: Content-Disposition: inline In-Reply-To: <2c68bdb1-9b53-ce0b-74d3-c7ea2d9e7ac0@gmail.com> Sender: netdev-owner@vger.kernel.org To: Heiner Kallweit Cc: Madalin-cristian Bucur , Shawn Guo , Li Yang , Rob Herring , Mark Rutland , Florian Fainelli , David Miller , "netdev@vger.kernel.org" , "linux-arm-kernel@lists.infradead.org" , "devicetree@vger.kernel.org" List-Id: devicetree@vger.kernel.org On Wed, May 22, 2019 at 09:58:32PM +0200, Heiner Kallweit wrote: > So far we didn't support mode USXGMII, and in order to not break the > two Freescale boards mode XGMII was accepted for the AQR107 family > even though it doesn't support XGMII. Add USXGMII support to the > Aquantia PHY driver and change the phy connection type for the two > boards. > > As an additional note: Even though the handle is named aqr106 > there seem to be LS1046A boards with an AQR107. > > Signed-off-by: Heiner Kallweit > --- > arch/arm64/boot/dts/freescale/fsl-ls1043a-rdb.dts | 2 +- > arch/arm64/boot/dts/freescale/fsl-ls1046a-rdb.dts | 2 +- > drivers/net/phy/aquantia_main.c | 6 +++++- > 3 files changed, 7 insertions(+), 3 deletions(-) > > diff --git a/arch/arm64/boot/dts/freescale/fsl-ls1043a-rdb.dts b/arch/arm64/boot/dts/freescale/fsl-ls1043a-rdb.dts > index 4223a2352..c2ce1a611 100644 > --- a/arch/arm64/boot/dts/freescale/fsl-ls1043a-rdb.dts > +++ b/arch/arm64/boot/dts/freescale/fsl-ls1043a-rdb.dts > @@ -139,7 +139,7 @@ > > ethernet@f0000 { /* 10GEC1 */ > phy-handle = <&aqr105_phy>; > - phy-connection-type = "xgmii"; > + phy-connection-type = "usxgmii"; > }; > > mdio@fc000 { > diff --git a/arch/arm64/boot/dts/freescale/fsl-ls1046a-rdb.dts b/arch/arm64/boot/dts/freescale/fsl-ls1046a-rdb.dts > index 6a6514d0e..f927a8a25 100644 > --- a/arch/arm64/boot/dts/freescale/fsl-ls1046a-rdb.dts > +++ b/arch/arm64/boot/dts/freescale/fsl-ls1046a-rdb.dts > @@ -147,7 +147,7 @@ > > ethernet@f0000 { /* 10GEC1 */ > phy-handle = <&aqr106_phy>; > - phy-connection-type = "xgmii"; > + phy-connection-type = "usxgmii"; > }; > > ethernet@f2000 { /* 10GEC2 */ > diff --git a/drivers/net/phy/aquantia_main.c b/drivers/net/phy/aquantia_main.c > index 0fedd28fd..3f24c42a8 100644 > @@ -487,7 +491,7 @@ static int aqr107_config_init(struct phy_device *phydev) > /* Check that the PHY interface type is compatible */ > if (phydev->interface != PHY_INTERFACE_MODE_SGMII && > phydev->interface != PHY_INTERFACE_MODE_2500BASEX && > - phydev->interface != PHY_INTERFACE_MODE_XGMII && > + phydev->interface != PHY_INTERFACE_MODE_USXGMII && > phydev->interface != PHY_INTERFACE_MODE_10GKR) > return -ENODEV; Hi Heiner Just to reiterate Florian's point. We need to be careful with device tree blobs. We should try not to break them, at least not for a few cycles. I would much prefer to see a WARN_ON(phydev->interface == PHY_INTERFACE_MODE_XGMII, "Your devicetree is out of date, please update it"); and accept XGMII for this cycle. These are development boards, so in theory users are developers, so should know how to update the DT. Andrew