qemu-patch-raspberry4/include/exec
Jan Kiszka b40acf99be ioport: Switch dispatching to memory core layer
The current ioport dispatcher is a complex beast, mostly due to the
need to deal with old portio interface users. But we can overcome it
without converting all portio users by embedding the required base
address of a MemoryRegionPortio access into that data structure. That
removes the need to have the additional MemoryRegionIORange structure
in the loop on every access.

To handle old portio memory ops, we simply install dispatching handlers
for portio memory regions when registering them with the memory core.
This removes the need for the old_portio field.

We can drop the additional aliasing of ioport regions and also the
special address space listener. cpu_in and cpu_out now simply call
address_space_read/write. And we can concentrate portio handling in a
single source file.

Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2013-07-04 17:42:44 +02:00
..
user elfload: use abi_llong/ullong instead of target_llong/ullong 2013-04-18 14:12:31 +02:00
address-spaces.h exec: move include files to include/exec/ 2012-12-19 08:31:31 +01:00
cpu-all.h cpu: Turn cpu_dump_{state,statistics}() into CPUState hooks 2013-06-28 13:25:12 +02:00
cpu-common.h hwaddr: Make hwaddr type usable beyond softmmu 2013-06-28 13:25:13 +02:00
cpu-defs.h hwaddr: Make hwaddr type usable beyond softmmu 2013-06-28 13:25:13 +02:00
cputlb.h exec: Resolve subpages in one step except for IOTLB fills 2013-06-20 16:32:46 +02:00
def-helper.h exec: move include files to include/exec/ 2012-12-19 08:31:31 +01:00
exec-all.h tcg/aarch64: implement new TCG target for aarch64 2013-06-12 16:20:22 +01:00
gdbstub.h gdbstub: Set gdb_set_stop_cpu() argument to CPUState 2013-06-28 13:25:13 +02:00
gen-icount.h tcg: Don't make exitreq flag a local temporary 2013-03-09 18:16:43 +01:00
hwaddr.h hwaddr: Make hwaddr type usable beyond softmmu 2013-06-28 13:25:13 +02:00
ioport.h ioport: Switch dispatching to memory core layer 2013-07-04 17:42:44 +02:00
iorange.h exec: move include files to include/exec/ 2012-12-19 08:31:31 +01:00
memory-internal.h ioport: Switch dispatching to memory core layer 2013-07-04 17:42:44 +02:00
memory.h ioport: Switch dispatching to memory core layer 2013-07-04 17:42:44 +02:00
poison.h exec: eliminate stq_phys_notdirty 2013-05-24 18:42:27 +02:00
softmmu-semi.h exec: move include files to include/exec/ 2012-12-19 08:31:31 +01:00
softmmu_defs.h exec: move include files to include/exec/ 2012-12-19 08:31:31 +01:00
softmmu_exec.h exec: move include files to include/exec/ 2012-12-19 08:31:31 +01:00
softmmu_header.h exec: move include files to include/exec/ 2012-12-19 08:31:31 +01:00
softmmu_template.h memory: propagate errors on I/O dispatch 2013-05-29 16:27:32 +02:00
spinlock.h exec: move include files to include/exec/ 2012-12-19 08:31:31 +01:00