aboutsummaryrefslogtreecommitdiff
path: root/net/dsa-uclass.c
diff options
context:
space:
mode:
authorTom Rini <trini@konsulko.com>2021-07-17 10:52:21 -0400
committerTom Rini <trini@konsulko.com>2021-07-17 10:52:21 -0400
commitd5dbc661c3041e910e161a95fca9e615d85730ac (patch)
treeaff587483c785b8384de496d6670e9824eb3e703 /net/dsa-uclass.c
parentc39946a2e2d062025c9fc8b34587dfdd45fd8703 (diff)
parentedf95bdeddeab8f0fd7b88d4865fbc6e99071c73 (diff)
Merge tag 'u-boot-imx-20210717' of https://gitlab.denx.de/u-boot/custodians/u-boot-imx
i.MX ---- - mx7ulp : fix WDOG - imx8 : Phytec - USB3 support for i.MX8 CI: https://source.denx.de/u-boot/custodians/u-boot-imx/-/pipelines/8277
Diffstat (limited to 'net/dsa-uclass.c')
-rw-r--r--net/dsa-uclass.c9
1 files changed, 8 insertions, 1 deletions
diff --git a/net/dsa-uclass.c b/net/dsa-uclass.c
index 7ea1cb6949..694664d81b 100644
--- a/net/dsa-uclass.c
+++ b/net/dsa-uclass.c
@@ -277,8 +277,15 @@ static int dsa_port_probe(struct udevice *pdev)
* has a unique MAC address specified in the environment.
*/
eth_env_get_enetaddr_by_index("eth", dev_seq(pdev), env_enetaddr);
- if (!is_zero_ethaddr(env_enetaddr))
+ if (!is_zero_ethaddr(env_enetaddr)) {
+ /* individual port mac addrs require master to be promisc */
+ struct eth_ops *eth_ops = eth_get_ops(master);
+
+ if (eth_ops->set_promisc)
+ eth_ops->set_promisc(master, 1);
+
return 0;
+ }
master_pdata = dev_get_plat(master);
eth_pdata = dev_get_plat(pdev);