diff mbox series

[U-Boot,v3,2/7] net: eth-uclass: Fix for DM USB ethernet support

Message ID 1529670334-21974-3-git-send-email-jjhiblot@ti.com
State Superseded
Delegated to: Lukasz Majewski
Headers show
Series Fixes/Addition to use the USB Ethernet gadget with the DWC3 gadget controller | expand

Commit Message

Jean-Jacques Hiblot June 22, 2018, 12:25 p.m. UTC
When a USB ethernet device is halted, the device driver is removed. When
this happens the uclass private memory is freed and uclass_priv is set to
NULL. This causes a data abort when uclass_priv->state is then set to
ETH_STATE_PASSIVE.

Fix it by checking if uclass_priv is NULL before setting uclass_priv->state

Signed-off-by: Jean-Jacques Hiblot <jjhiblot@ti.com>
Acked-by: Joe Hershberger <joe.hershberger@ni.com>
---

Changes in v3: None
Changes in v2: None

 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 e4b4922..3a5217a 100644
--- a/net/eth-uclass.c
+++ b/net/eth-uclass.c
@@ -312,7 +312,8 @@  void eth_halt(void)
 
 	eth_get_ops(current)->stop(current);
 	priv = current->uclass_priv;
-	priv->state = ETH_STATE_PASSIVE;
+	if (priv)
+		priv->state = ETH_STATE_PASSIVE;
 }
 
 int eth_is_active(struct udevice *dev)