freebsd-nq/sys/powerpc/booke
Marcel Moolenaar dbb95048da Add cpu_flush_dcache() for use after non-DMA based I/O so that a
possible future I-cache coherency operation can succeed. On ARM
for example the L1 cache can be (is) virtually mapped, which
means that any I/O that uses temporary mappings will not see the
I-cache made coherent. On ia64 a similar behaviour has been
observed. By flushing the D-cache, execution of binaries backed
by md(4) and/or NFS work reliably.
For Book-E (powerpc), execution over NFS exhibits SIGILL once in
a while as well, though cpu_flush_dcache() hasn't been implemented
yet.

Doing an explicit D-cache flush as part of the non-DMA based I/O
read operation eliminates the need to do it as part of the
I-cache coherency operation itself and as such avoids pessimizing
the DMA-based I/O read operations for which D-cache are already
flushed/invalidated. It also allows future optimizations whereby
the bcopy() followed by the D-cache flush can be integrated in a
single operation, which could be implemented using on-chips DMA
engines, by-passing the D-cache altogether.
2009-05-18 18:37:18 +00:00
..
clock.c PowerPC common SMP startup and time base rework. 2009-05-14 16:48:25 +00:00
copyinout.c
interrupt.c Minor clean up of BookE/MPC85XX: iprove naming and style(9). 2008-12-17 15:31:15 +00:00
locore.S Centralize setting HID0/1 for E500. Rename HID defines which are specific 2009-04-22 13:11:38 +00:00
machdep.c Add cpu_flush_dcache() for use after non-DMA based I/O so that a 2009-05-18 18:37:18 +00:00
platform_bare.c Factor out platform dependent things unrelated to device drivers into a 2009-05-14 00:34:26 +00:00
pmap.c Factor out platform dependent things unrelated to device drivers into a 2009-05-14 00:34:26 +00:00
swtch.S Minor style consistency fix. 2009-04-22 13:18:04 +00:00
trap_subr.S Prefer register usage style to be more consistent with the rest of the 2009-02-27 12:18:17 +00:00
trap.c Make Book-E debug register state part of the PCB context. 2009-02-27 12:08:24 +00:00
vm_machdep.c Factor out platform dependent things unrelated to device drivers into a 2009-05-14 00:34:26 +00:00