diff options
author | Tom Rini <trini@konsulko.com> | 2020-05-11 09:46:43 -0400 |
---|---|---|
committer | Tom Rini <trini@konsulko.com> | 2020-05-11 09:46:43 -0400 |
commit | 1bccb23b7bb67e029cc6b22bf7d25243ef71c43c (patch) | |
tree | 9fe0b6397d88359177131348a077aad28836285d /net/eth-uclass.c | |
parent | 951db64186b2b9ad2e3ee30e2093deea005bdd8a (diff) | |
parent | d52a03b130565e6b01dcbe656ebeb611d5ee1aa1 (diff) |
Merge tag 'u-boot-imx-20200511' of https://gitlab.denx.de/u-boot/custodians/u-boot-imx
i.MX for 2020.07
----------------
- i.MX NAND and nandbxb for i.MX8M
- imx8MM : new beacon devkit
- imx8MQ : new pico-imx8MQ
- imx8QXP : extend to enable M4, fixes
- add thermal support
- caches in SPL (missing board)
- Fixes
Travis: https://travis-ci.org/github/sbabic/u-boot-imx/builds/685391011
Diffstat (limited to 'net/eth-uclass.c')
-rw-r--r-- | net/eth-uclass.c | 17 |
1 files changed, 15 insertions, 2 deletions
diff --git a/net/eth-uclass.c b/net/eth-uclass.c index 8bf2eabe902..48560d59f66 100644 --- a/net/eth-uclass.c +++ b/net/eth-uclass.c @@ -13,6 +13,7 @@ #include <dm/uclass-internal.h> #include <net/pcap.h> #include "eth_internal.h" +#include <eth_phy.h> DECLARE_GLOBAL_DATA_PTR; @@ -40,8 +41,12 @@ static int eth_errno; static struct eth_uclass_priv *eth_get_uclass_priv(void) { struct uclass *uc; + int ret; + + ret = uclass_get(UCLASS_ETH, &uc); + if (ret) + return NULL; - uclass_get(UCLASS_ETH, &uc); assert(uc); return uc->priv; } @@ -102,6 +107,7 @@ struct udevice *eth_get_dev_by_name(const char *devname) struct udevice *it; struct uclass *uc; int len = strlen("eth"); + int ret; /* Must be longer than 3 to be an alias */ if (!strncmp(devname, "eth", len) && strlen(devname) > len) { @@ -109,7 +115,10 @@ struct udevice *eth_get_dev_by_name(const char *devname) seq = simple_strtoul(startp, &endp, 10); } - uclass_get(UCLASS_ETH, &uc); + ret = uclass_get(UCLASS_ETH, &uc); + if (ret) + return NULL; + uclass_foreach_dev(it, uc) { /* * We need the seq to be valid, so try to probe it. @@ -453,6 +462,10 @@ static int eth_post_bind(struct udevice *dev) return -EINVAL; } +#ifdef CONFIG_DM_ETH_PHY + eth_phy_binds_nodes(dev); +#endif + return 0; } |