Hi,
On 13/01/2026 08:43, Maxime Chevallier wrote:
> In ucc_geth's .mac_config(), we configure the TBI block represented by a
> struct phy_device that we get from firmware.
>
> While porting to phylink, a check was missed to make sure we don't try
> to access the TBI PHY if we can't get it. Let's add it and return early
> in case of error
>
> Reported-by: kernel test robot <[email protected]>
> Reported-by: Dan Carpenter <[email protected]>
> Closes: https://lore.kernel.org/r/[email protected]/
> Fixes: 53036aa8d031 ("net: freescale: ucc_geth: phylink conversion")
> Signed-off-by: Maxime Chevallier <[email protected]>
Heh that's what I get from sending patches while having mild fever, the
patch title is all wrong and should be :
net: freescale: ucc_geth: Return early when TBI PHY can't be found
I'll wait for the 24h cooldown, grab some honey + milk and resend after :)
Maxime
> ---
> drivers/net/ethernet/freescale/ucc_geth.c | 4 +++-
> 1 file changed, 3 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/net/ethernet/freescale/ucc_geth.c
> b/drivers/net/ethernet/freescale/ucc_geth.c
> index affd5a6c44e7..131d1210dc4a 100644
> --- a/drivers/net/ethernet/freescale/ucc_geth.c
> +++ b/drivers/net/ethernet/freescale/ucc_geth.c
> @@ -1602,8 +1602,10 @@ static void ugeth_mac_config(struct phylink_config
> *config, unsigned int mode,
> pr_warn("TBI mode requires that the device tree specify
> a tbi-handle\n");
>
> tbiphy = of_phy_find_device(ug_info->tbi_node);
> - if (!tbiphy)
> + if (!tbiphy) {
> pr_warn("Could not get TBI device\n");
> + return;
> + }
>
> value = phy_read(tbiphy, ENET_TBI_MII_CR);
> value &= ~0x1000; /* Turn off autonegotiation */