]> git.proxmox.com Git - mirror_qemu.git/commitdiff
hw/*: Use type casting for SysBusDevice in NPCM7XX
authorHao Wu <wuhaotsh@google.com>
Fri, 8 Jan 2021 19:09:45 +0000 (11:09 -0800)
committerPeter Maydell <peter.maydell@linaro.org>
Tue, 12 Jan 2021 21:19:02 +0000 (21:19 +0000)
A device shouldn't access its parent object which is QOM internal.
Instead it should use type cast for this purporse. This patch fixes this
issue for all NPCM7XX Devices.

Signed-off-by: Hao Wu <wuhaotsh@google.com>
Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Message-id: 20210108190945.949196-7-wuhaotsh@google.com
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
hw/arm/npcm7xx_boards.c
hw/mem/npcm7xx_mc.c
hw/misc/npcm7xx_clk.c
hw/misc/npcm7xx_gcr.c
hw/misc/npcm7xx_rng.c
hw/nvram/npcm7xx_otp.c
hw/ssi/npcm7xx_fiu.c

index 306260fa671e9e7bb62e0c58c04ca5f5fb7ac8fa..3fdd5cab01dbd248747d58cb2de1f3d616a19dbe 100644 (file)
@@ -82,7 +82,7 @@ static NPCM7xxState *npcm7xx_create_soc(MachineState *machine,
                                         uint32_t hw_straps)
 {
     NPCM7xxMachineClass *nmc = NPCM7XX_MACHINE_GET_CLASS(machine);
-    MachineClass *mc = &nmc->parent;
+    MachineClass *mc = MACHINE_CLASS(nmc);
     Object *obj;
 
     if (strcmp(machine->cpu_type, mc->default_cpu_type) != 0) {
index 0435d06ab446302d9eb02cad3676e1d70ce33075..abc5af562083a6a1c1e130accb0696c5f1d1f1c9 100644 (file)
@@ -62,7 +62,7 @@ static void npcm7xx_mc_realize(DeviceState *dev, Error **errp)
 
     memory_region_init_io(&s->mmio, OBJECT(s), &npcm7xx_mc_ops, s, "regs",
                           NPCM7XX_MC_REGS_SIZE);
-    sysbus_init_mmio(&s->parent, &s->mmio);
+    sysbus_init_mmio(SYS_BUS_DEVICE(s), &s->mmio);
 }
 
 static void npcm7xx_mc_class_init(ObjectClass *klass, void *data)
index 48bc9bdda55f35229f2b27fd8989f0015d2cb584..0bcae9ce95703b2e78b3c476dd2e9616ed16931b 100644 (file)
@@ -913,7 +913,7 @@ static void npcm7xx_clk_init(Object *obj)
 
     memory_region_init_io(&s->iomem, obj, &npcm7xx_clk_ops, s,
                           TYPE_NPCM7XX_CLK, 4 * KiB);
-    sysbus_init_mmio(&s->parent, &s->iomem);
+    sysbus_init_mmio(SYS_BUS_DEVICE(s), &s->iomem);
 }
 
 static int npcm7xx_clk_post_load(void *opaque, int version_id)
index 745f69080975d5aa10867cc9eafab78f00deb3a3..eace9e1967ac886b01590c2e052344a74a909d70 100644 (file)
@@ -220,7 +220,7 @@ static void npcm7xx_gcr_init(Object *obj)
 
     memory_region_init_io(&s->iomem, obj, &npcm7xx_gcr_ops, s,
                           TYPE_NPCM7XX_GCR, 4 * KiB);
-    sysbus_init_mmio(&s->parent, &s->iomem);
+    sysbus_init_mmio(SYS_BUS_DEVICE(s), &s->iomem);
 }
 
 static const VMStateDescription vmstate_npcm7xx_gcr = {
index f650f3401f865270c8bde7e04204eef22732deec..b01df7cdb257d4059a9b082bb71f6543deff64f7 100644 (file)
@@ -143,7 +143,7 @@ static void npcm7xx_rng_init(Object *obj)
 
     memory_region_init_io(&s->iomem, obj, &npcm7xx_rng_ops, s, "regs",
                           NPCM7XX_RNG_REGS_SIZE);
-    sysbus_init_mmio(&s->parent, &s->iomem);
+    sysbus_init_mmio(SYS_BUS_DEVICE(s), &s->iomem);
 }
 
 static const VMStateDescription vmstate_npcm7xx_rng = {
index b16ca530baaa4371a13dd84c6afe1a7857c2e4d1..c61f2fc1aa2a88ed12d989c8cf65340e43746fc1 100644 (file)
@@ -371,7 +371,7 @@ static void npcm7xx_otp_realize(DeviceState *dev, Error **errp)
 {
     NPCM7xxOTPClass *oc = NPCM7XX_OTP_GET_CLASS(dev);
     NPCM7xxOTPState *s = NPCM7XX_OTP(dev);
-    SysBusDevice *sbd = &s->parent;
+    SysBusDevice *sbd = SYS_BUS_DEVICE(dev);
 
     memset(s->array, 0, sizeof(s->array));
 
index 5040132b074ff5e416d58cd1354bcd11322dd2ba..4eedb2927e73135999b20c1edf68f58d9b975357 100644 (file)
@@ -498,7 +498,7 @@ static void npcm7xx_fiu_hold_reset(Object *obj)
 static void npcm7xx_fiu_realize(DeviceState *dev, Error **errp)
 {
     NPCM7xxFIUState *s = NPCM7XX_FIU(dev);
-    SysBusDevice *sbd = &s->parent;
+    SysBusDevice *sbd = SYS_BUS_DEVICE(dev);
     int i;
 
     if (s->cs_count <= 0) {