diff options
Diffstat (limited to 'arch')
-rw-r--r-- | arch/arm/boards/avnet-zedboard/board.c | 13 | ||||
-rw-r--r-- | arch/arm/boards/avnet-zedboard/lowlevel.c | 11 |
2 files changed, 23 insertions, 1 deletions
diff --git a/arch/arm/boards/avnet-zedboard/board.c b/arch/arm/boards/avnet-zedboard/board.c index 4e3d5a58c..7b9575469 100644 --- a/arch/arm/boards/avnet-zedboard/board.c +++ b/arch/arm/boards/avnet-zedboard/board.c @@ -29,6 +29,19 @@ static int zedboard_mem_init(void) } mem_initcall(zedboard_mem_init); +static struct macb_platform_data macb_pdata = { + .phy_interface = PHY_INTERFACE_MODE_RGMII, + .phy_addr = 0x0, +}; + +static int zedboard_device_init(void) +{ + zynq_add_eth0(&macb_pdata); + + return 0; +} +device_initcall(zedboard_device_init); + static int zedboard_console_init(void) { zynq_add_uart1(); diff --git a/arch/arm/boards/avnet-zedboard/lowlevel.c b/arch/arm/boards/avnet-zedboard/lowlevel.c index b50886ebc..fb05ef895 100644 --- a/arch/arm/boards/avnet-zedboard/lowlevel.c +++ b/arch/arm/boards/avnet-zedboard/lowlevel.c @@ -233,14 +233,23 @@ void __naked barebox_arm_reset_vector(void) /* poor mans clkctrl */ writel(0x00001403, ZYNQ_CLOCK_CTRL_BASE + ZYNQ_UART_CLK_CTRL); + /* GEM0 */ writel(0x00000001, 0xf8000138); - writel(0x00100801, 0xf8000140); + writel(0x00500801, 0xf8000140); writel(0x00000302, 0xf8000740); writel(0x00000302, 0xf8000744); writel(0x00000302, 0xf8000748); writel(0x00000302, 0xf800074C); writel(0x00000302, 0xf8000750); writel(0x00000302, 0xf8000754); + writel(0x00001303, 0xf8000758); + writel(0x00001303, 0xf800075C); + writel(0x00001303, 0xf8000760); + writel(0x00001303, 0xf8000764); + writel(0x00001303, 0xf8000768); + writel(0x00001303, 0xf800076C); + writel(0x00001280, 0xf80007D0); + writel(0x00001280, 0xf80007D4); writel(0x00000001, 0xf8000B00); |