[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH v3 15/20] xlnx_zynqmp: Convert to DEFINE_PROP_LINK
From: |
Fam Zheng |
Subject: |
[Qemu-devel] [PATCH v3 15/20] xlnx_zynqmp: Convert to DEFINE_PROP_LINK |
Date: |
Tue, 4 Jul 2017 14:43:42 +0800 |
Signed-off-by: Fam Zheng <address@hidden>
---
hw/arm/xlnx-zynqmp.c | 12 ++++--------
include/hw/arm/xlnx-zynqmp.h | 3 ++-
2 files changed, 6 insertions(+), 9 deletions(-)
diff --git a/hw/arm/xlnx-zynqmp.c b/hw/arm/xlnx-zynqmp.c
index 64f52f8..2ce9cad 100644
--- a/hw/arm/xlnx-zynqmp.c
+++ b/hw/arm/xlnx-zynqmp.c
@@ -140,11 +140,6 @@ static void xlnx_zynqmp_init(Object *obj)
&error_abort);
}
- object_property_add_link(obj, "ddr-ram", TYPE_MEMORY_REGION,
- (Object **)&s->ddr_ram,
- qdev_prop_allow_set_link_before_realize,
- OBJ_PROP_LINK_UNREF_ON_RELEASE, &error_abort);
-
object_initialize(&s->gic, sizeof(s->gic), gic_class_name());
qdev_set_parent_bus(DEVICE(&s->gic), sysbus_get_default());
@@ -192,7 +187,7 @@ static void xlnx_zynqmp_realize(DeviceState *dev, Error
**errp)
qemu_irq gic_spi[GIC_NUM_SPI_INTR];
Error *err = NULL;
- ram_size = memory_region_size(s->ddr_ram);
+ ram_size = memory_region_size(MEMORY_REGION(s->ddr_ram));
/* Create the DDR Memory Regions. User friendly checks should happen at
* the board level
@@ -206,7 +201,7 @@ static void xlnx_zynqmp_realize(DeviceState *dev, Error
**errp)
ddr_high_size = ram_size - XLNX_ZYNQMP_MAX_LOW_RAM_SIZE;
memory_region_init_alias(&s->ddr_ram_high, NULL,
- "ddr-ram-high", s->ddr_ram,
+ "ddr-ram-high", MEMORY_REGION(s->ddr_ram),
ddr_low_size, ddr_high_size);
memory_region_add_subregion(get_system_memory(),
XLNX_ZYNQMP_HIGH_RAM_START,
@@ -218,7 +213,7 @@ static void xlnx_zynqmp_realize(DeviceState *dev, Error
**errp)
}
memory_region_init_alias(&s->ddr_ram_low, NULL,
- "ddr-ram-low", s->ddr_ram,
+ "ddr-ram-low", MEMORY_REGION(s->ddr_ram),
0, ddr_low_size);
memory_region_add_subregion(get_system_memory(), 0, &s->ddr_ram_low);
@@ -434,6 +429,7 @@ static Property xlnx_zynqmp_props[] = {
DEFINE_PROP_STRING("boot-cpu", XlnxZynqMPState, boot_cpu),
DEFINE_PROP_BOOL("secure", XlnxZynqMPState, secure, false),
DEFINE_PROP_BOOL("has_rpu", XlnxZynqMPState, has_rpu, false),
+ DEFINE_PROP_LINK("ddr-ram", XlnxZynqMPState, ddr_ram, TYPE_MEMORY_REGION),
DEFINE_PROP_END_OF_LIST()
};
diff --git a/include/hw/arm/xlnx-zynqmp.h b/include/hw/arm/xlnx-zynqmp.h
index c2931bf..efd4c1a 100644
--- a/include/hw/arm/xlnx-zynqmp.h
+++ b/include/hw/arm/xlnx-zynqmp.h
@@ -75,7 +75,8 @@ typedef struct XlnxZynqMPState {
MemoryRegion ocm_ram[XLNX_ZYNQMP_NUM_OCM_BANKS];
- MemoryRegion *ddr_ram;
+ /* A MemoryRegion pointer to be filled by link property */
+ Object *ddr_ram;
MemoryRegion ddr_ram_low, ddr_ram_high;
CadenceGEMState gem[XLNX_ZYNQMP_NUM_GEMS];
--
2.9.4
- [Qemu-devel] [PATCH v3 06/20] virtio-blk: Convert to DEFINE_PROP_LINK, (continued)
- [Qemu-devel] [PATCH v3 06/20] virtio-blk: Convert to DEFINE_PROP_LINK, Fam Zheng, 2017/07/04
- [Qemu-devel] [PATCH v3 08/20] virtio-rng: Convert to DEFINE_PROP_LINK, Fam Zheng, 2017/07/04
- [Qemu-devel] [PATCH v3 09/20] virtio-crypto: Convert to DEFINE_PROP_LINK, Fam Zheng, 2017/07/04
- [Qemu-devel] [PATCH v3 10/20] dimm: Convert to DEFINE_PROP_LINK, Fam Zheng, 2017/07/04
- [Qemu-devel] [PATCH v3 12/20] armv7m: Convert bitband.source-mamory to DEFINE_PROP_LINK, Fam Zheng, 2017/07/04
- [Qemu-devel] [PATCH v3 11/20] ivshmem: Convert to DEFINE_PROP_LINK, Fam Zheng, 2017/07/04
- [Qemu-devel] [PATCH v3 13/20] armv7m: Convert armv7m.memory to DEFINE_PROP_LINK, Fam Zheng, 2017/07/04
- [Qemu-devel] [PATCH v3 14/20] gicv3: Convert to DEFINE_PROP_LINK, Fam Zheng, 2017/07/04
- [Qemu-devel] [PATCH v3 15/20] xlnx_zynqmp: Convert to DEFINE_PROP_LINK,
Fam Zheng <=
- [Qemu-devel] [PATCH v3 17/20] xilinx_axidma: Convert to DEFINE_PROP_LINK, Fam Zheng, 2017/07/04
- [Qemu-devel] [PATCH v3 18/20] mips_cmgcr: Convert to DEFINE_PROP_LINK, Fam Zheng, 2017/07/04
- [Qemu-devel] [PATCH v3 16/20] xilinx_axienet: Convert to DEFINE_PROP_LINK, Fam Zheng, 2017/07/04
- [Qemu-devel] [PATCH v3 19/20] cpu: Convert to DEFINE_PROP_LINK, Fam Zheng, 2017/07/04
- [Qemu-devel] [PATCH v3 20/20] spapr_rng: Convert to DEFINE_PROP_LINK, Fam Zheng, 2017/07/04