[U-Boot] [PATCH] ARM: OMAP3: Refactors the SM911x driver
Dirk Behme
dirk.behme at googlemail.com
Tue Oct 20 18:21:18 CEST 2009
From: Steve Sakoman <sakoman at gmail.com>
Move the test up in the function to not hang on systems without ethernet.
Signed-off-by: Steve Sakoman <sakoman at gmail.com>
Acked-by: Ben Warren <biggerbadderben at gmail.com>
---
drivers/net/smc911x.c | 12 ++++++------
1 file changed, 6 insertions(+), 6 deletions(-)
Index: u-boot-arm/drivers/net/smc911x.c
===================================================================
--- u-boot-arm.orig/drivers/net/smc911x.c
+++ u-boot-arm/drivers/net/smc911x.c
@@ -249,6 +249,12 @@ int smc911x_initialize(u8 dev_num, int b
dev->iobase = base_addr;
+ /* Try to detect chip. Will fail if not present. */
+ if (smc911x_detect_chip(dev)) {
+ free(dev);
+ return 0;
+ }
+
addrh = smc911x_get_mac_csr(dev, ADDRH);
addrl = smc911x_get_mac_csr(dev, ADDRL);
dev->enetaddr[0] = addrl;
@@ -264,12 +270,6 @@ int smc911x_initialize(u8 dev_num, int b
dev->recv = smc911x_rx;
sprintf(dev->name, "%s-%hu", DRIVERNAME, dev_num);
- /* Try to detect chip. Will fail if not present. */
- if (smc911x_detect_chip(dev)) {
- free(dev);
- return 0;
- }
-
eth_register(dev);
return 0;
}
More information about the U-Boot
mailing list