|
@@ -26,6 +26,7 @@
|
|
#include "qemu/osdep.h"
|
|
#include "qemu/osdep.h"
|
|
#include "qapi/error.h"
|
|
#include "qapi/error.h"
|
|
#include "qom/object.h"
|
|
#include "qom/object.h"
|
|
|
|
+#include "exec/memory.h"
|
|
#include "hw/sysbus.h"
|
|
#include "hw/sysbus.h"
|
|
#include "hw/block/fdc.h"
|
|
#include "hw/block/fdc.h"
|
|
#include "migration/vmstate.h"
|
|
#include "migration/vmstate.h"
|
|
@@ -52,6 +53,7 @@ struct FDCtrlSysBus {
|
|
/*< public >*/
|
|
/*< public >*/
|
|
|
|
|
|
struct FDCtrl state;
|
|
struct FDCtrl state;
|
|
|
|
+ MemoryRegion iomem;
|
|
};
|
|
};
|
|
|
|
|
|
static uint64_t fdctrl_read_mem(void *opaque, hwaddr reg, unsigned ize)
|
|
static uint64_t fdctrl_read_mem(void *opaque, hwaddr reg, unsigned ize)
|
|
@@ -146,11 +148,11 @@ static void sysbus_fdc_common_instance_init(Object *obj)
|
|
|
|
|
|
qdev_set_legacy_instance_id(dev, 0 /* io */, 2); /* FIXME */
|
|
qdev_set_legacy_instance_id(dev, 0 /* io */, 2); /* FIXME */
|
|
|
|
|
|
- memory_region_init_io(&fdctrl->iomem, obj,
|
|
|
|
|
|
+ memory_region_init_io(&sys->iomem, obj,
|
|
sbdc->use_strict_io ? &fdctrl_mem_strict_ops
|
|
sbdc->use_strict_io ? &fdctrl_mem_strict_ops
|
|
: &fdctrl_mem_ops,
|
|
: &fdctrl_mem_ops,
|
|
fdctrl, "fdc", 0x08);
|
|
fdctrl, "fdc", 0x08);
|
|
- sysbus_init_mmio(sbd, &fdctrl->iomem);
|
|
|
|
|
|
+ sysbus_init_mmio(sbd, &sys->iomem);
|
|
|
|
|
|
sysbus_init_irq(sbd, &fdctrl->irq);
|
|
sysbus_init_irq(sbd, &fdctrl->irq);
|
|
qdev_init_gpio_in(dev, fdctrl_handle_tc, 1);
|
|
qdev_init_gpio_in(dev, fdctrl_handle_tc, 1);
|