mirror of
https://github.com/smaeul/u-boot.git
synced 2025-10-14 12:56:00 +01:00
net: dsa: return early if there is no master
It doesn't make sense to have DSA without a master port. Error out early if there is no master port. Fixes: fc054d563bfb ("net: Introduce DSA class for Ethernet switches") Signed-off-by: Michael Walle <michael@walle.cc> Reviewed-by: Vladimir Oltean <vladimir.oltean@nxp.com> Reviewed-by: Ramon Fried <rfried.dev@gmail.com> Reviewed-by: Priyanka Jain <priyanka.jain@nxp.com>
This commit is contained in:
parent
6ce33e2288
commit
a02dcbbb5a
@ -280,6 +280,10 @@ static int dsa_port_probe(struct udevice *pdev)
|
|||||||
if (!port_pdata->phy)
|
if (!port_pdata->phy)
|
||||||
return -ENODEV;
|
return -ENODEV;
|
||||||
|
|
||||||
|
master = dsa_get_master(dev);
|
||||||
|
if (!master)
|
||||||
|
return -ENODEV;
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Inherit port's hwaddr from the DSA master, unless the port already
|
* Inherit port's hwaddr from the DSA master, unless the port already
|
||||||
* has a unique MAC address specified in the environment.
|
* has a unique MAC address specified in the environment.
|
||||||
@ -288,10 +292,6 @@ static int dsa_port_probe(struct udevice *pdev)
|
|||||||
if (!is_zero_ethaddr(env_enetaddr))
|
if (!is_zero_ethaddr(env_enetaddr))
|
||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
master = dsa_get_master(dev);
|
|
||||||
if (!master)
|
|
||||||
return 0;
|
|
||||||
|
|
||||||
master_pdata = dev_get_plat(master);
|
master_pdata = dev_get_plat(master);
|
||||||
eth_pdata = dev_get_plat(pdev);
|
eth_pdata = dev_get_plat(pdev);
|
||||||
memcpy(eth_pdata->enetaddr, master_pdata->enetaddr, ARP_HLEN);
|
memcpy(eth_pdata->enetaddr, master_pdata->enetaddr, ARP_HLEN);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user