summaryrefslogtreecommitdiff
path: root/board/logicpd/zoom1/zoom1.c
diff options
context:
space:
mode:
authorNishanth Menon <nm@ti.com>2014-04-08 09:50:52 -0500
committerTom Rini <trini@ti.com>2014-04-17 17:24:39 -0400
commitc2800b162bdf9ffa74bbff793bd7beb5bd903773 (patch)
treefe19f85988c4da104ba2ee0c11b559aae0f06944 /board/logicpd/zoom1/zoom1.c
parentae3248a3fdb262b6e1d62d0602a008c46089b842 (diff)
OMAP3: zoom1: Configure GPMC for Ethernet
zoom1 uses LAN9211 configured over GPMC Chip Select 1. Signed-off-by: Nishanth Menon <nm@ti.com>
Diffstat (limited to 'board/logicpd/zoom1/zoom1.c')
-rw-r--r--board/logicpd/zoom1/zoom1.c18
1 files changed, 18 insertions, 0 deletions
diff --git a/board/logicpd/zoom1/zoom1.c b/board/logicpd/zoom1/zoom1.c
index 9846f24661..56e512fe05 100644
--- a/board/logicpd/zoom1/zoom1.c
+++ b/board/logicpd/zoom1/zoom1.c
@@ -18,6 +18,7 @@
#include <netdev.h>
#include <twl4030.h>
#include <asm/io.h>
+#include <asm/arch/mem.h>
#include <asm/arch/mmc_host_def.h>
#include <asm/arch/mux.h>
#include <asm/arch/sys_proto.h>
@@ -26,6 +27,20 @@
DECLARE_GLOBAL_DATA_PTR;
+/* gpmc_cfg is initialized by gpmc_init and we use it here */
+extern struct gpmc *gpmc_cfg;
+
+/* GPMC definitions for Ethenet Controller LAN9211 */
+static const u32 gpmc_lab_enet[] = {
+ ZOOM1_ENET_GPMC_CONF1,
+ ZOOM1_ENET_GPMC_CONF2,
+ ZOOM1_ENET_GPMC_CONF3,
+ ZOOM1_ENET_GPMC_CONF4,
+ ZOOM1_ENET_GPMC_CONF5,
+ ZOOM1_ENET_GPMC_CONF6,
+ /*CONF7- computed as params */
+};
+
/*
* Routine: board_init
* Description: Early hardware init.
@@ -33,6 +48,9 @@ DECLARE_GLOBAL_DATA_PTR;
int board_init(void)
{
gpmc_init(); /* in SRAM or SDRAM, finish GPMC */
+ /* CS1 is Ethernet LAN9211 */
+ enable_gpmc_cs_config(gpmc_lab_enet, &gpmc_cfg->cs[1],
+ DEBUG_BASE, GPMC_SIZE_16M);
/* board id for Linux */
gd->bd->bi_arch_number = MACH_TYPE_OMAP_LDP;
/* boot param addr */