/* 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: