summaryrefslogtreecommitdiff
path: root/board/atmel
diff options
context:
space:
mode:
authorJens Scharsig <js_at_ng@scharsoft.de>2010-01-23 12:03:45 +0100
committerBen Warren <biggerbadderben@gmail.com>2010-01-31 22:37:12 -0800
commitc041e9d212162f6c85cd3b6a40ad6ba9d9292451 (patch)
treef9a2b58cb9922db443bc1b917e39ba9ee578297e /board/atmel
parent594d57d0ccce649d6ccd881b8d9c5ea8d0c307ef (diff)
downloadu-boot-imx-c041e9d212162f6c85cd3b6a40ad6ba9d9292451.zip
u-boot-imx-c041e9d212162f6c85cd3b6a40ad6ba9d9292451.tar.gz
u-boot-imx-c041e9d212162f6c85cd3b6a40ad6ba9d9292451.tar.bz2
new at91_emac network driver (NET_MULTI api)
* add's at91_emac (AT91RM9200) network driver (NET_MULTI api) * enable driver with CONFIG_DRIVER_AT91EMAC * generic PHY initialization * modify AT91RM9200 boards to use NET_MULTI driver * the drivers has been tested with LXT971 Phy and DM9161 Phy at MII and RMII interface Signed-off-by: Jens Scharsig <js_at_ng@scharsoft.de> Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
Diffstat (limited to 'board/atmel')
-rw-r--r--board/atmel/at91rm9200dk/at91rm9200dk.c15
-rw-r--r--board/atmel/at91rm9200ek/at91rm9200ek.c14
2 files changed, 29 insertions, 0 deletions
diff --git a/board/atmel/at91rm9200dk/at91rm9200dk.c b/board/atmel/at91rm9200dk/at91rm9200dk.c
index c761dd7..49b5fe3 100644
--- a/board/atmel/at91rm9200dk/at91rm9200dk.c
+++ b/board/atmel/at91rm9200dk/at91rm9200dk.c
@@ -23,9 +23,15 @@
*/
#include <common.h>
+#include <exports.h>
+#include <netdev.h>
#include <asm/arch/AT91RM9200.h>
+#include <asm/io.h>
+
+#if defined(CONFIG_DRIVER_ETHER)
#include <at91rm9200_net.h>
#include <dm9161.h>
+#endif
DECLARE_GLOBAL_DATA_PTR;
@@ -95,6 +101,15 @@ void at91rm9200_GetPhyInterface(AT91PS_PhyOps p_phyops)
#endif
#endif /* CONFIG_DRIVER_ETHER */
+#ifdef CONFIG_DRIVER_AT91EMAC
+int board_eth_init(bd_t *bis)
+{
+ int rc = 0;
+ rc = at91emac_register(bis, 0);
+ return rc;
+}
+#endif
+
/*
* Disk On Chip (NAND) Millenium initialization.
* The NAND lives in the CS2* space
diff --git a/board/atmel/at91rm9200ek/at91rm9200ek.c b/board/atmel/at91rm9200ek/at91rm9200ek.c
index ea684e9..570a09a 100644
--- a/board/atmel/at91rm9200ek/at91rm9200ek.c
+++ b/board/atmel/at91rm9200ek/at91rm9200ek.c
@@ -23,9 +23,14 @@
*/
#include <common.h>
+#include <exports.h>
+#include <netdev.h>
#include <asm/arch/AT91RM9200.h>
+#include <asm/io.h>
+#if defined(CONFIG_DRIVER_ETHER)
#include <at91rm9200_net.h>
#include <dm9161.h>
+#endif
DECLARE_GLOBAL_DATA_PTR;
@@ -84,3 +89,12 @@ void at91rm9200_GetPhyInterface(AT91PS_PhyOps p_phyops)
p_phyops->AutoNegotiate = dm9161_AutoNegotiate;
}
#endif
+
+#ifdef CONFIG_DRIVER_AT91EMAC
+int board_eth_init(bd_t *bis)
+{
+ int rc = 0;
+ rc = at91emac_register(bis, 0);
+ return rc;
+}
+#endif