qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Qemu-devel] [RFC 9/9] hw/exynos4210.c: Create two virtio-mmio transport


From: Evgeny Voevodin
Subject: [Qemu-devel] [RFC 9/9] hw/exynos4210.c: Create two virtio-mmio transport instances.
Date: Wed, 25 Apr 2012 09:54:17 +0400

NB: This is for test purposes only.

Signed-off-by: Evgeny Voevodin <address@hidden>
---
 hw/exynos4210.c |   12 ++++++++++++
 1 files changed, 12 insertions(+), 0 deletions(-)

diff --git a/hw/exynos4210.c b/hw/exynos4210.c
index afc4bdc..e065a86 100644
--- a/hw/exynos4210.c
+++ b/hw/exynos4210.c
@@ -26,6 +26,7 @@
 #include "sysbus.h"
 #include "arm-misc.h"
 #include "loader.h"
+#include "virtio-mmio.h"
 #include "exynos4210.h"
 
 #define EXYNOS4210_CHIPID_ADDR         0x10000000
@@ -62,6 +63,11 @@
 /* Display controllers (FIMD) */
 #define EXYNOS4210_FIMD0_BASE_ADDR          0x11C00000
 
+/* VirtIO BLK */
+#define EXYNOS4210_VIRTIO_BLK_BASE_ADDR     0x10AD0000
+/* VirtIO NET */
+#define EXYNOS4210_VIRTIO_NET_BASE_ADDR     0x10AC0000
+
 static uint8_t chipid_and_omr[] = { 0x11, 0x02, 0x21, 0x43,
                                     0x09, 0x00, 0x00, 0x00 };
 
@@ -105,6 +111,7 @@ Exynos4210State *exynos4210_init(MemoryRegion *system_mem,
     unsigned long mem_size;
     DeviceState *dev;
     SysBusDevice *busdev;
+    BusState *virtio_bus;
 
     for (n = 0; n < EXYNOS4210_NCPUS; n++) {
         s->env[n] = cpu_init("cortex-a9");
@@ -296,5 +303,10 @@ Exynos4210State *exynos4210_init(MemoryRegion *system_mem,
             s->irq_table[exynos4210_get_irq(11, 2)],
             NULL);
 
+    virtio_bus = virtio_mmio_bus_init();
+    virtio_mmio_create_transport(virtio_bus, EXYNOS4210_VIRTIO_BLK_BASE_ADDR,
+            s->irq_table[exynos4210_get_irq(37, 3)]);
+    virtio_mmio_create_transport(virtio_bus, EXYNOS4210_VIRTIO_NET_BASE_ADDR,
+            s->irq_table[exynos4210_get_irq(37, 2)]);
     return s;
 }
-- 
1.7.5.4




reply via email to

[Prev in Thread] Current Thread [Next in Thread]