diff mbox

[RFC,v2,12/12] hw/exynos4210.c: Create two virtio-mmio transport instances.

Message ID 1347876042-22609-13-git-send-email-e.voevodin@samsung.com
State New
Headers show

Commit Message

Evgeny Voevodin Sept. 17, 2012, 10 a.m. UTC
NB: This is for test purposes only.

Signed-off-by: Evgeny Voevodin <e.voevodin@samsung.com>
---
 hw/exynos4210.c |   13 +++++++++++++
 1 file changed, 13 insertions(+)
diff mbox

Patch

diff --git a/hw/exynos4210.c b/hw/exynos4210.c
index 00d4db8..70fcdd6 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-transport.h"
 #include "exynos4210.h"
 
 #define EXYNOS4210_CHIPID_ADDR         0x10000000
@@ -72,6 +73,10 @@ 
 /* Display controllers (FIMD) */
 #define EXYNOS4210_FIMD0_BASE_ADDR          0x11C00000
 
+/* VirtIO MMIO */
+#define EXYNOS4210_VIRTIO_MMIO0_BASE_ADDR   0x10AD0000
+#define EXYNOS4210_VIRTIO_MMIO1_BASE_ADDR   0x10AC0000
+
 static uint8_t chipid_and_omr[] = { 0x11, 0x02, 0x21, 0x43,
                                     0x09, 0x00, 0x00, 0x00 };
 
@@ -334,5 +339,13 @@  Exynos4210State *exynos4210_init(MemoryRegion *system_mem,
             s->irq_table[exynos4210_get_irq(11, 2)],
             NULL);
 
+    sysbus_create_simple(VIRTIO_MMIO,
+                         EXYNOS4210_VIRTIO_MMIO0_BASE_ADDR,
+                         s->irq_table[exynos4210_get_irq(37, 3)]);
+
+    sysbus_create_simple(VIRTIO_MMIO,
+                         EXYNOS4210_VIRTIO_MMIO1_BASE_ADDR,
+                         s->irq_table[exynos4210_get_irq(37, 2)]);
+
     return s;
 }