From 962b03fcf509db25c847aa67c4eff574c240dcfe Mon Sep 17 00:00:00 2001 From: Jan Kiszka Date: Sat, 22 Jun 2013 08:07:03 +0200 Subject: xen: Mark fixed platform I/O as unaligned Before switching to the memory core dispatcher, we need to make sure that this pv-device will continue to receive unaligned portio accesses. Signed-off-by: Jan Kiszka Signed-off-by: Paolo Bonzini --- hw/xen/xen_platform.c | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'hw/xen/xen_platform.c') diff --git a/hw/xen/xen_platform.c b/hw/xen/xen_platform.c index b6c6793..f8f5dd5 100644 --- a/hw/xen/xen_platform.c +++ b/hw/xen/xen_platform.c @@ -262,9 +262,13 @@ static void platform_fixed_ioport_write(void *opaque, hwaddr addr, static const MemoryRegionOps platform_fixed_io_ops = { .read = platform_fixed_ioport_read, .write = platform_fixed_ioport_write, + .valid = { + .unaligned = true, + }, .impl = { .min_access_size = 1, .max_access_size = 4, + .unaligned = true, }, .endianness = DEVICE_LITTLE_ENDIAN, }; -- cgit v1.1 From 2c9b15cab12c21e32dffb67c5e18f3dc407ca224 Mon Sep 17 00:00:00 2001 From: Paolo Bonzini Date: Thu, 6 Jun 2013 05:41:28 -0400 Subject: memory: add owner argument to initialization functions Signed-off-by: Paolo Bonzini --- hw/xen/xen_platform.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'hw/xen/xen_platform.c') diff --git a/hw/xen/xen_platform.c b/hw/xen/xen_platform.c index f8f5dd5..8855309 100644 --- a/hw/xen/xen_platform.c +++ b/hw/xen/xen_platform.c @@ -275,7 +275,7 @@ static const MemoryRegionOps platform_fixed_io_ops = { static void platform_fixed_ioport_init(PCIXenPlatformState* s) { - memory_region_init_io(&s->fixed_io, &platform_fixed_io_ops, s, + memory_region_init_io(&s->fixed_io, NULL, &platform_fixed_io_ops, s, "xen-fixed", 16); memory_region_add_subregion(get_system_io(), XEN_PLATFORM_IOPORT, &s->fixed_io); @@ -319,7 +319,7 @@ static const MemoryRegionOps xen_pci_io_ops = { static void platform_ioport_bar_setup(PCIXenPlatformState *d) { - memory_region_init_io(&d->bar, &xen_pci_io_ops, d, "xen-pci", 0x100); + memory_region_init_io(&d->bar, NULL, &xen_pci_io_ops, d, "xen-pci", 0x100); } static uint64_t platform_mmio_read(void *opaque, hwaddr addr, @@ -347,7 +347,7 @@ static const MemoryRegionOps platform_mmio_handler = { static void platform_mmio_setup(PCIXenPlatformState *d) { - memory_region_init_io(&d->mmio_bar, &platform_mmio_handler, d, + memory_region_init_io(&d->mmio_bar, NULL, &platform_mmio_handler, d, "xen-mmio", 0x1000000); } -- cgit v1.1 From 22fc860b0a0b689eacf4a01f5aa2ccbf36043a12 Mon Sep 17 00:00:00 2001 From: Paolo Bonzini Date: Thu, 6 Jun 2013 21:25:08 -0400 Subject: hw/[u-x]*: pass owner to memory_region_init* functions Signed-off-by: Paolo Bonzini --- hw/xen/xen_platform.c | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) (limited to 'hw/xen/xen_platform.c') diff --git a/hw/xen/xen_platform.c b/hw/xen/xen_platform.c index 8855309..15d7cf0 100644 --- a/hw/xen/xen_platform.c +++ b/hw/xen/xen_platform.c @@ -275,7 +275,7 @@ static const MemoryRegionOps platform_fixed_io_ops = { static void platform_fixed_ioport_init(PCIXenPlatformState* s) { - memory_region_init_io(&s->fixed_io, NULL, &platform_fixed_io_ops, s, + memory_region_init_io(&s->fixed_io, OBJECT(s), &platform_fixed_io_ops, s, "xen-fixed", 16); memory_region_add_subregion(get_system_io(), XEN_PLATFORM_IOPORT, &s->fixed_io); @@ -319,7 +319,8 @@ static const MemoryRegionOps xen_pci_io_ops = { static void platform_ioport_bar_setup(PCIXenPlatformState *d) { - memory_region_init_io(&d->bar, NULL, &xen_pci_io_ops, d, "xen-pci", 0x100); + memory_region_init_io(&d->bar, OBJECT(d), &xen_pci_io_ops, d, + "xen-pci", 0x100); } static uint64_t platform_mmio_read(void *opaque, hwaddr addr, @@ -347,7 +348,7 @@ static const MemoryRegionOps platform_mmio_handler = { static void platform_mmio_setup(PCIXenPlatformState *d) { - memory_region_init_io(&d->mmio_bar, NULL, &platform_mmio_handler, d, + memory_region_init_io(&d->mmio_bar, OBJECT(d), &platform_mmio_handler, d, "xen-mmio", 0x1000000); } -- cgit v1.1