El jue, 23 mar 2023 a las 21:10, Paul Geurts (<paul.geurts@xxxxxxxxxxxxxxxxxxxxxxxxx>) escribió: > > > -----Original Message----- > > From: Florian Fainelli <f.fainelli@xxxxxxxxx> > > Sent: donderdag 23 maart 2023 17:43 > > To: Álvaro Fernández Rojas <noltari@xxxxxxxxx>; Paul Geurts > > <paul.geurts@xxxxxxxxxxxxxxxxxxxxxxxxx>; jonas.gorski@xxxxxxxxx; > > andrew@xxxxxxx; olteanv@xxxxxxxxx; davem@xxxxxxxxxxxxx; > > edumazet@xxxxxxxxxx; kuba@xxxxxxxxxx; pabeni@xxxxxxxxxx; > > robh+dt@xxxxxxxxxx; krzysztof.kozlowski+dt@xxxxxxxxxx; > > netdev@xxxxxxxxxxxxxxx; devicetree@xxxxxxxxxxxxxxx; linux- > > kernel@xxxxxxxxxxxxxxx > > Subject: Re: [PATCH 2/2] net: dsa: b53: mdio: add support for BCM53134 > > > > On 3/23/23 05:18, Álvaro Fernández Rojas wrote: > > > From: Paul Geurts <paul.geurts@xxxxxxxxxxxxxxxxxxxxxxxxx> > > > > > > Add support for the BCM53134 Ethernet switch in the existing b53 dsa > > driver. > > > BCM53134 is very similar to the BCM58XX series. > > > > > > Signed-off-by: Paul Geurts <paul.geurts@xxxxxxxxxxxxxxxxxxxxxxxxx> > > > Signed-off-by: Álvaro Fernández Rojas <noltari@xxxxxxxxx> > > > --- > > > drivers/net/dsa/b53/b53_common.c | 53 > > +++++++++++++++++++++++++++++++- > > > drivers/net/dsa/b53/b53_mdio.c | 5 ++- > > > drivers/net/dsa/b53/b53_priv.h | 9 +++++- > > > 3 files changed, 64 insertions(+), 3 deletions(-) > > > > > > diff --git a/drivers/net/dsa/b53/b53_common.c > > > b/drivers/net/dsa/b53/b53_common.c > > > index 1f9b251a5452..aaa0813e6f59 100644 > > > --- a/drivers/net/dsa/b53/b53_common.c > > > +++ b/drivers/net/dsa/b53/b53_common.c > > > @@ -1282,6 +1282,42 @@ static void b53_adjust_link(struct dsa_switch > > *ds, int port, > > > if (is63xx(dev) && port >= B53_63XX_RGMII0) > > > b53_adjust_63xx_rgmii(ds, port, phydev->interface); > > > > > > + if (is53134(dev) && phy_interface_is_rgmii(phydev)) { > > > > Why is not this in the same code block as the one for the is531x5() device like > > this: > > > > diff --git a/drivers/net/dsa/b53/b53_common.c > > b/drivers/net/dsa/b53/b53_common.c > > index 59cdfc51ce06..1c64b6ce7e78 100644 > > --- a/drivers/net/dsa/b53/b53_common.c > > +++ b/drivers/net/dsa/b53/b53_common.c > > @@ -1235,7 +1235,7 @@ static void b53_adjust_link(struct dsa_switch *ds, > > int port, > > tx_pause, rx_pause); > > b53_force_link(dev, port, phydev->link); > > > > - if (is531x5(dev) && phy_interface_is_rgmii(phydev)) { > > + if ((is531x5(dev) || is53134(dev)) && > > phy_interface_is_rgmii(phydev)) { > > if (port == dev->imp_port) > > off = B53_RGMII_CTRL_IMP; > > else > > > > Other than that, LGTM! > > -- > > Florian > > I think the only reason is that the BCM53134 does not support the > RGMII_CTRL_TIMING_SEL bit, which is set in the original block. I agree > Putting a if statement around > rgmii_ctrl |= RGMII_CTRL_TIMING_SEL; > would prevent a lot of code duplication. _however_, after looking at it again, > I don’t think the device does not support the bit. When looking at the datasheet, > The same bit in the this register is called BYPASS_2NS_DEL. It's very uncommon > For Broadcom to make such a change in the register interface, so maybe they > Just renamed it. Do you think this could be the same bit? What happens if you add that bit on your device? It doesn't work? I will try with my device and see what happens when I add it... > > --- > Paul -- Álvaro