[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH v3 11/14] hw/exynos4210.c: Add LAN support for S
From: |
Peter Maydell |
Subject: |
Re: [Qemu-devel] [PATCH v3 11/14] hw/exynos4210.c: Add LAN support for SMDKC210. |
Date: |
Tue, 13 Dec 2011 12:01:06 +0000 |
On 12 December 2011 06:43, Evgeny Voevodin <address@hidden> wrote:
> SMDKC210 uses lan9215 chip, but lan9118 in 16-bit mode seems to
> be enough.
>
> Signed-off-by: Evgeny Voevodin <address@hidden>
> ---
> hw/exynos4210.c | 18 ++++++++++++++++++
> 1 files changed, 18 insertions(+), 0 deletions(-)
>
> diff --git a/hw/exynos4210.c b/hw/exynos4210.c
> index 055205d..0a93866 100644
> --- a/hw/exynos4210.c
> +++ b/hw/exynos4210.c
> @@ -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"
>
> @@ -226,6 +228,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:
> @@ -458,6 +462,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;
> + }
> + }
> + }
This whole loop is overkill for the straightforward case of
"we only allow one NIC and this is it". Look at hw/vexpress.c,
but basically you want:
nd = &nd_table[0];
if (nd->vlan) {
initialise lan9118 based on nd;
}
As noted in previous patch, you can't set qdev properties after
the device has been initialised, only before.
>
> /*** Load kernel ***/
>
> --
> 1.7.4.1
>
>
- [Qemu-devel] [PATCH v3 03/14] ARM: exynos4210: UART support, (continued)
[Qemu-devel] [PATCH v3 11/14] hw/exynos4210.c: Add LAN support for SMDKC210., Evgeny Voevodin, 2011/12/12
- Re: [Qemu-devel] [PATCH v3 11/14] hw/exynos4210.c: Add LAN support for SMDKC210.,
Peter Maydell <=
[Qemu-devel] [PATCH v3 05/14] ARM: exynos4210: IRQ subsystem support., Evgeny Voevodin, 2011/12/12
[Qemu-devel] [PATCH v3 08/14] ARM: exynos4210: MCT support., Evgeny Voevodin, 2011/12/12
[Qemu-devel] [PATCH v3 12/14] hw/sd.c, hw/sd.h: add receive ready query routine to SD/MMC API, Evgeny Voevodin, 2011/12/12
[Qemu-devel] [PATCH v3 13/14] ARM: exynos4210: added SD/MMC host controller, Evgeny Voevodin, 2011/12/12
[Qemu-devel] [PATCH v3 14/14] ARM: exynos4210: added display controller implementation, Evgeny Voevodin, 2011/12/12