From: Nobuhiro Iwamatsu <iwamatsu@nigauri.org>
Date: Tue, 19 Oct 2010 05:03:39 +0000 (+0900)
Subject: net: rtl8139: Add initialized eth_device structure
X-Git-Tag: v2025.01-rc5-pxa1908~19891
X-Git-Url: http://git.dujemihanovic.xyz/img/html/index.html?a=commitdiff_plain;h=986f72789de17c11772686a2294179b20250299f;p=u-boot.git

net: rtl8139: Add initialized eth_device structure

rtl8139 driver does not have write_hwaddr function.
However, eth stuff executes write_hwaddr function
because eth_device structure has not been initialized.

Signed-off-by: Nobuhiro Iwamatsu <iwamatsu@nigauri.org>
CC: Ben Warren <biggerbadderben@gmail.com>
---

diff --git a/drivers/net/rtl8139.c b/drivers/net/rtl8139.c
index db8a727c89..c2779db0a5 100644
--- a/drivers/net/rtl8139.c
+++ b/drivers/net/rtl8139.c
@@ -220,6 +220,11 @@ int rtl8139_initialize(bd_t *bis)
 		debug ("rtl8139: REALTEK RTL8139 @0x%x\n", iobase);
 
 		dev = (struct eth_device *)malloc(sizeof *dev);
+		if (!dev) {
+			printf("Can not allocate memory of rtl8139\n");
+			break;
+		}
+		memset(dev, 0, sizeof(*dev));
 
 		sprintf (dev->name, "RTL8139#%d", card_number);