net: introduce per device index
Instead of counting the device index everytime a functions needs it, store
it in the eth_device struct. eth_register() keeps track of the indices and
updates the device's index number. This simplifies some functions in
net/eth.c.
Additionally, a network driver can now query its index, eg. to get the
correct environment ethaddr name.
Signed-off-by: Michael Walle <michael@walle.cc>
Cc: Prafulla Wadaskar <prafulla@marvell.com>
Cc: Mike Frysinger <vapier@gentoo.com>
Cc: Wolfgang Denk <wd@denx.de>
Acked-by: Mike Frysinger <vapier@gentoo.org>
diff --git a/include/net.h b/include/net.h
index fa5d525..e4d42c2 100644
--- a/include/net.h
+++ b/include/net.h
@@ -90,6 +90,7 @@
#endif
int (*write_hwaddr) (struct eth_device*);
struct eth_device *next;
+ int index;
void *priv;
};