summary refs log tree commit diff stats
diff options
context:
space:
mode:
authorBernhard Beschow <shentey@gmail.com>2023-01-25 14:00:24 +0100
committerDaniel Henrique Barboza <danielhb413@gmail.com>2023-02-05 06:40:28 -0300
commit4e921beac9e70962685e2cc314e770f89b341f5b (patch)
treead915eff60b2475c49c5b1e48e8f888c864d7f8e
parent4348a3aff0c8f443891dcf6764830249d0a53e86 (diff)
downloadfocaccia-qemu-4e921beac9e70962685e2cc314e770f89b341f5b.tar.gz
focaccia-qemu-4e921beac9e70962685e2cc314e770f89b341f5b.zip
hw/ppc/e500.c: Attach eSDHC unimplemented region to ccsr_addr_space
Makes the unimplemented region move together with the CCSR address space
if moved by a bootloader. Moving the CCSR address space isn't
implemented yet but this patch is a preparation for it.

Signed-off-by: Bernhard Beschow <shentey@gmail.com>
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Message-Id: <20230125130024.158721-5-shentey@gmail.com>
Signed-off-by: Daniel Henrique Barboza <danielhb413@gmail.com>
-rw-r--r--hw/ppc/e500.c10
1 files changed, 7 insertions, 3 deletions
diff --git a/hw/ppc/e500.c b/hw/ppc/e500.c
index e3b29d1d97..117c9c08ed 100644
--- a/hw/ppc/e500.c
+++ b/hw/ppc/e500.c
@@ -1022,9 +1022,13 @@ void ppce500_init(MachineState *machine)
 
     /* eSDHC */
     if (pmc->has_esdhc) {
-        create_unimplemented_device("esdhc",
-                                    pmc->ccsrbar_base + MPC85XX_ESDHC_REGS_OFFSET,
-                                    MPC85XX_ESDHC_REGS_SIZE);
+        dev = qdev_new(TYPE_UNIMPLEMENTED_DEVICE);
+        qdev_prop_set_string(dev, "name", "esdhc");
+        qdev_prop_set_uint64(dev, "size", MPC85XX_ESDHC_REGS_SIZE);
+        s = SYS_BUS_DEVICE(dev);
+        sysbus_realize_and_unref(s, &error_fatal);
+        memory_region_add_subregion(ccsr_addr_space, MPC85XX_ESDHC_REGS_OFFSET,
+                                    sysbus_mmio_get_region(s, 0));
 
         /*
          * Compatible with: