[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <20251209205034.GB1056291-robh@kernel.org>
Date: Tue, 9 Dec 2025 14:50:34 -0600
From: Rob Herring <robh@...nel.org>
To: Andrew Lunn <andrew@...n.ch>
Cc: Jacky Chou <jacky_chou@...eedtech.com>,
Andrew Lunn <andrew+netdev@...n.ch>,
"David S. Miller" <davem@...emloft.net>,
Eric Dumazet <edumazet@...gle.com>,
Jakub Kicinski <kuba@...nel.org>, Paolo Abeni <pabeni@...hat.com>,
Krzysztof Kozlowski <krzk+dt@...nel.org>,
Conor Dooley <conor+dt@...nel.org>,
Po-Yu Chuang <ratbert@...aday-tech.com>,
Joel Stanley <joel@....id.au>,
Andrew Jeffery <andrew@...econstruct.com.au>,
netdev@...r.kernel.org, devicetree@...r.kernel.org,
linux-kernel@...r.kernel.org, linux-arm-kernel@...ts.infradead.org,
linux-aspeed@...ts.ozlabs.org, taoren@...a.com
Subject: Re: [PATCH net-next v5 3/4] net: ftgmac100: Add RGMII delay support
for AST2600
On Sat, Dec 06, 2025 at 07:30:30PM +0100, Andrew Lunn wrote:
> > @@ -1907,6 +2179,10 @@ static int ftgmac100_probe(struct platform_device *pdev)
> > priv->rxdes0_edorr_mask = BIT(30);
> > priv->txdes0_edotr_mask = BIT(30);
> > priv->is_aspeed = true;
> > + /* Configure RGMII delay if there are the corresponding compatibles */
> > + err = ftgmac100_set_internal_delay(priv, &phy_intf);
> > + if (err)
> > + goto err_phy_connect;
>
> Thinking forward to when you add 2700 support, i really think you need
> to break the probe up into helpers for 2500 and before, 2600 and in
> the future 2700. You currently have a couple of tests on the
> compatible which you can reduce to one.
>
> In fact, this driver has 10 calls to of_device_is_compatible(). I
> think you should first refactor the code to list each compatible in
> ftgmac100_of_match[], and add a data structure which contains an enum
> of the MAC type. You can then transfer this to priv, and replace all
> the of_device_is_compatible() tests to just look at the enum value.
Better yet, define a structure which defines the different settings
directly. Such as:
priv->rxdes0_edorr_mask
priv->txdes0_edotr_mask
priv->is_aspeed
And anything else needed...
Rob
Powered by blists - more mailing lists