@@ -26,6 +26,8 @@
#include "sysemu.h"
#include "sysbus.h"
#include "arm-misc.h"
+#include "net.h"
+#include "devices.h"
#include "exec-memory.h"
#include "exynos4210.h"
@@ -224,6 +226,8 @@ static void exynos4210_init(ram_addr_t ram_size,
SysBusDevice *busdev;
ram_addr_t mem_size;
int n;
+ NICInfo *nd;
+ int done_nic = 0;
switch (board_type) {
case BOARD_EXYNOS4210_NURI:
@@ -444,6 +448,20 @@ static void exynos4210_init(ram_addr_t ram_size,
exynos4210_uart_create(addr, fifo_size, channel, NULL, uart_irq);
}
+ /*** LAN adapter: this should be a 9215 but the 9118 is close enough ***/
+ if (board_type == BOARD_EXYNOS4210_SMDKC210) {
+ for (n = 0; n < nb_nics; n++) {
+ nd = &nd_table[n];
+
+ if (!done_nic && (!nd->model ||
+ strcmp(nd->model, "lan9118") == 0)) {
+ dev = lan9118_init(nd, 0x05000000,
+ qemu_irq_invert(irq_table[exynos4210_get_irq(37, 1)]));
+ qdev_prop_set_uint32(dev, "mode_16bit", 1);
+ done_nic = 1;
+ }
+ }
+ }
/*** Load kernel ***/
SMDKC210 uses lan9215 chip, but lan9118 in 16-bit mode seems to be enough. Signed-off-by: Evgeny Voevodin <e.voevodin@samsung.com> --- hw/exynos4210.c | 18 ++++++++++++++++++ 1 files changed, 18 insertions(+), 0 deletions(-)