]> git.sur5r.net Git - u-boot/blobdiff - drivers/net/cs8900.c
NET: move legacy enc28j60.c to sidetrack as enc28j60_lpc2292.c
[u-boot] / drivers / net / cs8900.c
index 587f7f62a760308fc3c39331d68f600056d42e35..9424fb2bb69cc697ea0fb3ab1a1dc54f511d7aec 100644 (file)
@@ -56,7 +56,7 @@
 #define REG_READ(a) readl((a))
 
 /* we don't need 16 bit initialisation on 32 bit bus */
-#define get_reg_init_bus(x) get_reg((x))
+#define get_reg_init_bus(r,d) get_reg((r),(d))
 
 #else
 
@@ -308,28 +308,28 @@ int cs8900_initialize(u8 dev_num, int base_addr)
 
        dev = malloc(sizeof(*dev));
        if (!dev) {
-               free(dev);
                return 0;
        }
        memset(dev, 0, sizeof(*dev));
 
        priv = malloc(sizeof(*priv));
        if (!priv) {
-               free(priv);
+               free(dev);
                return 0;
        }
        memset(priv, 0, sizeof(*priv));
        priv->regs = (struct cs8900_regs *)base_addr;
 
-       /* Load MAC address from EEPROM */
-       cs8900_get_enetaddr(dev);
-
        dev->iobase = base_addr;
        dev->priv = priv;
        dev->init = cs8900_init;
        dev->halt = cs8900_halt;
        dev->send = cs8900_send;
        dev->recv = cs8900_recv;
+
+       /* Load MAC address from EEPROM */
+       cs8900_get_enetaddr(dev);
+
        sprintf(dev->name, "%s-%hu", CS8900_DRIVERNAME, dev_num);
 
        eth_register(dev);