[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [RFC 3/6] hw/core/platform-bus: add base_address field
From: |
Baptiste Reynal |
Subject: |
[Qemu-devel] [RFC 3/6] hw/core/platform-bus: add base_address field |
Date: |
Fri, 12 Jun 2015 16:20:07 +0200 |
Add base_address field to platform_bus structure and initialize it.
As the platform devices addresses are relative to the platform bus, we
need it to get the absolute address of a device.
Signed-off-by: Baptiste Reynal <address@hidden>
---
hw/arm/virt.c | 4 ++++
include/hw/platform-bus.h | 2 ++
2 files changed, 6 insertions(+)
diff --git a/hw/arm/virt.c b/hw/arm/virt.c
index 1b1cc71..33361c5 100644
--- a/hw/arm/virt.c
+++ b/hw/arm/virt.c
@@ -740,6 +740,7 @@ static void create_platform_bus(VirtBoardInfo *vbi,
qemu_irq *pic)
{
DeviceState *dev;
SysBusDevice *s;
+ PlatformBusDevice *pbus;
int i;
ARMPlatformBusFDTParams *fdt_params = g_new(ARMPlatformBusFDTParams, 1);
MemoryRegion *sysmem = get_system_memory();
@@ -766,6 +767,9 @@ static void create_platform_bus(VirtBoardInfo *vbi,
qemu_irq *pic)
platform_bus_params.platform_bus_size);
qdev_init_nofail(dev);
s = SYS_BUS_DEVICE(dev);
+ pbus = PLATFORM_BUS_DEVICE(dev);
+
+ pbus->base_address = vbi->memmap[VIRT_PLATFORM_BUS].base;
for (i = 0; i < platform_bus_params.platform_bus_num_irqs; i++) {
int irqn = platform_bus_params.platform_bus_first_irq + i;
diff --git a/include/hw/platform-bus.h b/include/hw/platform-bus.h
index 3c3f96b..13efc82 100644
--- a/include/hw/platform-bus.h
+++ b/include/hw/platform-bus.h
@@ -41,6 +41,8 @@ struct PlatformBusDevice {
bool done_gathering;
/*< public >*/
+ hwaddr base_address;
+
uint32_t mmio_size;
MemoryRegion mmio;
--
2.4.3
- [Qemu-devel] [RFC 0/6] vSMMU initialization, Baptiste Reynal, 2015/06/12
- [Qemu-devel] [RFC 1/6] headers sync, Baptiste Reynal, 2015/06/12
- [Qemu-devel] [RFC 2/6] hw/core/platform-bus: initialization notifier, Baptiste Reynal, 2015/06/12
- [Qemu-devel] [RFC 3/6] hw/core/platform-bus: add base_address field,
Baptiste Reynal <=
- [Qemu-devel] [RFC 4/6] hw/vfio: vsmmu device, Baptiste Reynal, 2015/06/12
- [Qemu-devel] [RFC 5/6] hw/arm/sysbus-fdt: enable vsmmu dynamic instantiation, Baptiste Reynal, 2015/06/12
- [Qemu-devel] [RFC 6/6] hw/arm/sysbus-fdt: add smmu masters in device tree, Baptiste Reynal, 2015/06/12
- Re: [Qemu-devel] [RFC 0/6] vSMMU initialization, Will Deacon, 2015/06/12