[Top][All Lists]
[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
- [Qemu-devel] [RFC 0/9] Virtio-mmio refactoring., Evgeny Voevodin, 2012/04/25
- [Qemu-devel] [RFC 1/9] virtio: Add support for guest setting of queue size, Evgeny Voevodin, 2012/04/25
- [Qemu-devel] [RFC 5/9] hw/virtio-serial-bus.c: Add virtio-serial device., Evgeny Voevodin, 2012/04/25
- [Qemu-devel] [RFC 2/9] virtio: Support transports which can specify the vring alignment, Evgeny Voevodin, 2012/04/25
- [Qemu-devel] [RFC 3/9] Virtio: Add transport bindings., Evgeny Voevodin, 2012/04/25
- [Qemu-devel] [RFC 7/9] hw/virtio-net.c: Add virtio-net device., Evgeny Voevodin, 2012/04/25
- [Qemu-devel] [RFC 8/9] hw/virtio-blk.c: Add virtio-blk device., Evgeny Voevodin, 2012/04/25
- [Qemu-devel] [RFC 6/9] hw/virtio-balloon.c: Add virtio-balloon device., Evgeny Voevodin, 2012/04/25
- [Qemu-devel] [RFC 4/9] Add MMIO based virtio transport, Evgeny Voevodin, 2012/04/25
- [Qemu-devel] [RFC 9/9] hw/exynos4210.c: Create two virtio-mmio transport instances.,
Evgeny Voevodin <=