diff mbox series

[U-Boot,02/14] net: eth-uclass: call stop only for active devices

Message ID 20190806103844.25277-3-j-keerthy@ti.com
State Changes Requested
Delegated to: Tom Rini
Headers show
Series net: ti: icssg: Add prueth support | expand

Commit Message

Keerthy Aug. 6, 2019, 10:38 a.m. UTC
Currently stop is being called unconditionally without even
checking if start is called which will result in crash where
multiple instances are present and stop gets called even
without calling start.

Signed-off-by: Keerthy <j-keerthy@ti.com>
---
 net/eth-uclass.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)
diff mbox series

Patch

diff --git a/net/eth-uclass.c b/net/eth-uclass.c
index f11c307b8c..58d6f26e04 100644
--- a/net/eth-uclass.c
+++ b/net/eth-uclass.c
@@ -557,7 +557,8 @@  static int eth_pre_remove(struct udevice *dev)
 {
 	struct eth_pdata *pdata = dev->platdata;
 
-	eth_get_ops(dev)->stop(dev);
+	if (eth_is_active(dev))
+		eth_get_ops(dev)->stop(dev);
 
 	/* clear the MAC address */
 	memset(pdata->enetaddr, 0, ARP_HLEN);