Use mainline zynq-gem driver.
Signed-off-by: Michal Simek <monstr@monstr.eu>
int board_init(void)
{
- /* temporary hack to clear pending irqs before Linux as it
+ /* temporary hack to clear pending irqs before Linux as it
will hang Linux */
XIo_Out32(0xe0001014, 0x26d);
#ifdef CONFIG_CMD_NET
int board_eth_init(bd_t *bis)
{
- return 0;
+ u32 ret = 0;
+
+#if defined(CONFIG_ZYNQ_GEM)
+# if defined(CONFIG_ZYNQ_GEM_BASEADDR0)
+ ret |= zynq_gem_initialize(bis, CONFIG_ZYNQ_GEM_BASEADDR0);
+# endif
+# if defined(CONFIG_ZYNQ_GEM_BASEADDR1)
+ ret |= zynq_gem_initialize(bis, CONFIG_ZYNQ_GEM_BASEADDR1);
+# endif
+#endif
+
+ return ret;
}
#endif
#define CONFIG_ZYNQ_SERIAL
#endif
+/* Ethernet driver */
+#ifdef CONFIG_ZYNQ_GEM0
+# define CONFIG_ZYNQ_GEM_BASEADDR0 0xE000B000
+#endif
+
+#ifdef CONFIG_ZYNQ_GEM1
+# define CONFIG_ZYNQ_GEM_BASEADDR1 0xE000C000
+#endif
+
+#if defined(CONFIG_ZYNQ_GEM0) || defined(CONFIG_ZYNQ_GEM1)
+# define CONFIG_NET_MULTI
+# define CONFIG_ZYNQ_GEM
+# define CONFIG_MII
+# define CONFIG_SYS_FAULT_ECHO_LINK_DOWN
+# define CONFIG_PHYLIB
+# define CONFIG_PHY_MARVELL
+#endif
+
#include <asm/arch/xparameters.h>
#define CONFIG_SYS_TEXT_BASE 0x04000000
#define CONFIG_EP107 /* Board */
#define CONFIG_ZYNQ_SERIAL_UART0
+#define CONFIG_ZYNQ_GEM0
+#define CONFIG_PHY_ADDR 23
#include <configs/zynq_common.h>
/* HW to use */
#define CONFIG_TTC0
-#define CONFIG_GEM0
-#define CONFIG_ZYNQ_GEM
-#define CONFIG_XGMAC_PHY_ADDR 0x17
/*
* Physical Memory map
#define __CONFIG_ZYNQ_ZC70X_H
#define CONFIG_ZYNQ_SERIAL_UART1
+#define CONFIG_ZYNQ_GEM0
+#define CONFIG_PHY_ADDR 7
#include <configs/zynq_common.h>
/* HW to use */
#define CONFIG_TTC0
-#define CONFIG_GEM0
-#define CONFIG_ZYNQ_GEM
-#define CONFIG_XGMAC_PHY_ADDR 0x7
/*
* Physical Memory map
#if defined(CONFIG_ZC770_XM010)
# define CONFIG_ZYNQ_SERIAL_UART1
+# define CONFIG_ZYNQ_GEM0
+# define CONFIG_PHY_ADDR 7
#elif defined(CONFIG_ZC770_XM011)
# define CONFIG_ZYNQ_SERIAL_UART1
#elif defined(CONFIG_ZC770_XM012)
# define CONFIG_ZYNQ_SERIAL_UART1
+#elif defined(CONFIG_ZC770_XM013)
+# define CONFIG_ZYNQ_SERIAL_UART0
+# define CONFIG_ZYNQ_GEM1
+# define CONFIG_PHY_ADDR 7
+
#else
# define CONFIG_ZYNQ_SERIAL_UART0
#endif
*/
#if defined(CONFIG_ZC770_XM010) || defined(CONFIG_ZC770_XM013)
#define CONFIG_CMD_PING
-#define CONFIG_ZYNQ_GEM
-#define CONFIG_XGMAC_PHY_ADDR 0x7
#else
#undef CONFIG_CMD_NET
#undef CONFIG_CMD_NFS
#endif
#if defined(CONFIG_ZC770_XM013)
-#define CONFIG_GEM1
#define CONFIG_TTC1
#define CONFIG_SPI_FLASH_SPANSION
#endif
#if defined(CONFIG_ZC770_XM010)
-#define CONFIG_GEM0
#define CONFIG_TTC0
#define CONFIG_SPI_FLASH_STMICRO
#endif
#define __CONFIG_ZYNQ_ZED_H
#define CONFIG_ZYNQ_SERIAL_UART1
+#define CONFIG_ZYNQ_GEM0
+#define CONFIG_PHY_ADDR 0
#include <configs/zynq_common.h>
/* HW to use */
#define CONFIG_TTC0
-#define CONFIG_GEM0
-#define CONFIG_ZYNQ_GEM
-#define CONFIG_XGMAC_PHY_ADDR 0
/*
* Physical Memory map