qemu/include/exec
Alexander Graf a94b36ddd6 roms: Flush icache when writing roms to guest memory
We use the rom infrastructure to write firmware and/or initial kernel
blobs into guest address space. So we're basically emulating the cache
off phase on very early system bootup.

That phase is usually responsible for clearing the instruction cache for
anything it writes into cachable memory, to ensure that after reboot we
don't happen to execute stale bits from the instruction cache.

So we need to invalidate the icache every time we write a rom into guest
address space. We do not need to do this for every DMA since the guest
expects it has to flush the icache manually in that case.

This fixes random reboot issues on e5500 (booke ppc) for me.

Signed-off-by: Alexander Graf <agraf@suse.de>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2013-12-13 13:38:50 +01:00
..
user abitypes.h: Remove incorrect ARM ABI_LLONG_ALIGNMENT 2013-09-10 19:09:33 +01:00
address-spaces.h exec: move include files to include/exec/ 2012-12-19 08:31:31 +01:00
cpu-all.h exec: Reduce ifdeffery around -mem-path 2013-09-12 11:45:31 -05:00
cpu-common.h roms: Flush icache when writing roms to guest memory 2013-12-13 13:38:50 +01:00
cpu-defs.h cpu: Drop cpu_model_str from CPU_COMMON 2013-10-07 11:48:47 +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 tcg: Put target helper data into an array. 2013-10-10 11:44:25 -07:00
exec-all.h exec: Fix prototype of phys_mem_set_alloc and related functions 2013-10-14 08:50:34 -07:00
gdbstub.h cpu: Introduce CPUClass::gdb_{read,write}_register() 2013-07-27 00:04:17 +02:00
gen-icount.h tcg: Change tcg_gen_exit_tb argument to uintptr_t 2013-09-02 09:08:30 -07:00
hwaddr.h hwaddr: Make hwaddr type usable beyond softmmu 2013-06-28 13:25:13 +02:00
ioport.h portio: Allow to mark portio lists as coalesced MMIO flushing 2013-10-17 17:24:15 +02:00
memory-internal.h ioport: Switch dispatching to memory core layer 2013-07-04 17:42:44 +02:00
memory.h memory: Change MemoryRegion priorities from unsigned to signed 2013-10-14 17:11:44 +03:00
poison.h exec: Remove env from list of poisoned names 2013-07-27 11:22:54 +04:00
softmmu_exec.h exec: Split softmmu_defs.h 2013-09-02 09:08:30 -07:00
softmmu_header.h exec: move include files to include/exec/ 2012-12-19 08:31:31 +01:00
softmmu_template.h exec: Add both big- and little-endian memory helpers 2013-10-10 13:19:21 -07:00
softmmu-semi.h exec: Change cpu_memory_rw_debug() argument to CPUState 2013-07-23 02:41:33 +02:00
spinlock.h exec: move include files to include/exec/ 2012-12-19 08:31:31 +01:00