linux/arch/sh/include/asm
Paul Mundt 0906a3ad33 sh: Fix up and optimize the kmap_coherent() interface.
This fixes up the kmap_coherent/kunmap_coherent() interface for recent
changes both in the page fault path and the shared cache flushers, as
well as adding in some optimizations.

One of the key things to note here is that the TLB flush itself is
deferred until the unmap, and the call in to update_mmu_cache() itself
goes away, relying on the regular page fault path to handle the lazy
dcache writeback if necessary.

Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2009-09-03 17:21:10 +09:00
..
.gitignore sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
Kbuild sh: Add sys_cacheflush() call for SH CPUs. 2009-08-24 18:16:56 +09:00
adc.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
addrspace.h sh: Support fixed 32-bit PMB mappings from bootloader. 2009-03-10 15:49:54 +09:00
atomic-grb.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
atomic-irq.h sh: Make the atomic functions safe for irqsoff tracing 2009-06-15 00:31:17 +09:00
atomic-llsc.h sh: Fix sh4a llsc-based cmpxchg() 2009-06-11 09:31:55 +03:00
atomic.h sh: Use generic atomic64_t implementation. 2009-06-17 10:43:13 +09:00
auxvec.h sh: Make sure AT_SYSINFO_EHDR is exposed to userspace in asm/auxvec.h. 2008-07-29 23:12:25 +09:00
bitops-grb.h sh: Convert to generic bitops for IRQ-toggling implementation. 2008-12-22 18:42:53 +09:00
bitops-llsc.h sh: Relax inline assembly constraints 2009-01-29 11:57:09 +09:00
bitops-op32.h sh: Provide optimized non-atomic bitops for SH-2A. 2008-12-22 18:42:54 +09:00
bitops.h sh: Provide optimized non-atomic bitops for SH-2A. 2008-12-22 18:42:54 +09:00
bitsperlong.h asm-generic: introduce asm/bitsperlong.h 2009-06-11 21:02:14 +02:00
bug.h sh64: dummy unwinder BUG wrappers. 2009-08-22 05:31:45 +09:00
bugs.h sh: Track the CPU family in sh_cpuinfo. 2009-08-15 10:48:13 +09:00
byteorder.h byteorder: make swab.h include asm/swab.h like a regular header 2009-01-14 19:56:50 -08:00
cache.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
cachectl.h sh: fix sys_cacheflush error checking 2009-08-24 18:59:09 +09:00
cacheflush.h sh: Fix up and optimize the kmap_coherent() interface. 2009-09-03 17:21:10 +09:00
checksum.h sh: Convert sh64 to use the generic checksum code. 2009-06-15 00:00:42 +09:00
checksum_32.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
clock.h sh: add enable()/disable()/set_rate() to div6 code 2009-06-11 09:12:58 +03:00
cmpxchg-grb.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
cmpxchg-irq.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
cmpxchg-llsc.h sh: Fix sh4a llsc-based cmpxchg() 2009-06-11 09:31:55 +03:00
cpu-features.h sh: Support for extended ASIDs on PTEAEX-capable SH-X3 cores. 2009-03-17 17:49:49 +09:00
cputime.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
current.h sh: Convert to asm-generic/current.h. 2009-06-14 21:34:26 +09:00
delay.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
device.h sh: Runtime PM for SuperH Mobile platform bus devices 2009-08-23 18:03:17 +09:00
div64.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
dma-mapping.h sh: Fix up more dma-mapping fallout. 2009-06-23 17:36:23 +09:00
dma-sh.h sh: Add SH7724 DMAC support. 2009-08-04 14:41:49 +09:00
dma.h sh: Convert to asm-generic/dma.h. 2009-06-14 21:45:06 +09:00
dmabrg.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
dwarf.h sh: unwinder: Fix up uninitialized variable warnings on sh2a build. 2009-08-31 13:47:06 +09:00
elf.h Merge branch 'for-linus' of git://git390.osdl.marist.edu/pub/scm/linux-2.6 2008-12-28 12:33:21 -08:00
emergency-restart.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
entry-macros.S sh: Remove implicit sign extension from assembler immediates 2009-08-24 17:09:53 +09:00
errno.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
fb.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
fcntl.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
fixmap.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
flat.h flat: fix data sections alignment 2009-05-29 08:40:02 -07:00
fpu.h sh: Add FPU registers to regset interface. 2008-09-21 19:04:55 +09:00
freq.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
ftrace.h sh: Fix an off-by-1 in FTRACE_SYSCALL_MAX. 2009-08-25 18:39:33 +09:00
futex-irq.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
futex.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
gpio.h sh: use gpiolib 2009-01-27 14:49:10 +09:00
hardirq.h sh: convert to asm-generic/hardirq.h 2009-08-05 17:56:07 +09:00
hd64461.h sh: mach-hp6xx: Fix up the hp6xx build for hd64461 changes. 2009-05-20 11:27:13 +09:00
heartbeat.h sh: Prevent heartbeat from scribbling over non-LED bits. 2009-08-18 21:16:29 +09:00
hugetlb.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
hw_irq.h sh: Move the shared INTC code out to drivers/sh/ 2008-10-01 16:13:54 +09:00
hwblk.h sh: Runtime PM for SuperH Mobile platform bus devices 2009-08-23 18:03:17 +09:00
i2c-sh7760.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
ilsel.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
io.h sh: Read from CCN_PVR instead of ROM for delay. 2009-08-24 17:13:52 +09:00
io_generic.h sh: More I/O routine overhauling. 2008-10-04 05:25:52 +09:00
io_trapped.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
ioctl.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
ioctls.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
ipcbuf.h sh: Convert ipc/shm bits to their asm-generic versions. 2009-06-14 23:20:27 +09:00
irq.h sh: Tidy up duplication in irq/swab/timex.h. 2009-06-14 23:21:54 +09:00
irq_regs.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
irqflags.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
irqflags_32.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
irqflags_64.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
kdebug.h sh: nmi_debug support. 2009-09-01 17:38:32 +09:00
kexec.h kexec jump: rename KEXEC_CONTROL_CODE_SIZE to KEXEC_CONTROL_PAGE_SIZE 2008-08-15 08:35:42 -07:00
kgdb.h sh: Kill off kgdb's magical NMI debouncing. 2009-09-01 17:45:35 +09:00
kmap_types.h kmap_types: make most arches use generic header file 2009-06-16 19:47:51 -07:00
kprobes.h sh: Rename opcode_t to insn_size_t. 2009-05-09 16:02:08 +09:00
linkage.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
lmb.h sh: Use bootmem ontop of lmb 2009-07-03 16:16:54 +09:00
local.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
machvec.h sh: boot word / mode pin support V2 2009-06-01 15:44:49 +09:00
mc146818rtc.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
mman.h sh: Switch to asm-generic versions for identical headers. 2009-06-14 23:26:48 +09:00
mmu.h sh: Sanitize asm/mmu.h for assembly use. 2009-03-31 07:42:37 +09:00
mmu_context.h sh: Use local TLB flush for get_mmu_context() ASID exhaustion. 2009-08-20 17:24:40 +09:00
mmu_context_32.h sh: Support for extended ASIDs on PTEAEX-capable SH-X3 cores. 2009-03-17 17:49:49 +09:00
mmu_context_64.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
mmzone.h sh: Fix up NUMA build error with se7722_defconfig. 2008-09-12 22:41:30 +09:00
module.h sh: Convert to asm-generic/module.h. 2009-06-14 23:24:14 +09:00
msgbuf.h sh: Convert ipc/shm bits to their asm-generic versions. 2009-06-14 23:20:27 +09:00
mutex-llsc.h sh: Fix up T-bit error handling in SH-4A mutex fastpath. 2009-01-29 11:56:03 +09:00
mutex.h sh: Add SH-4A optimized fastpath mutex implementation. 2008-12-22 18:42:55 +09:00
page.h sh: Convert cache disabled SH-5 over to new cache interface. 2009-08-16 00:53:56 +09:00
param.h sh: Switch to asm-generic versions for identical headers. 2009-06-14 23:26:48 +09:00
parport.h sh: Switch to asm-generic versions for identical headers. 2009-06-14 23:26:48 +09:00
pci.h Delete pcibios_select_root 2009-06-17 14:04:42 -07:00
percpu.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
perf_counter.h sh: define PERF_COUNTER_INDEX_OFFSET. 2009-07-03 13:08:28 +09:00
pgalloc.h mm: Remove duplicate definitions in MIPS and SH 2009-07-27 17:26:44 -07:00
pgtable.h sh: Provide the kmap_coherent() interface generically. 2009-08-15 09:19:19 +09:00
pgtable_32.h sh: Fix up and optimize the kmap_coherent() interface. 2009-09-03 17:21:10 +09:00
pgtable_64.h sh: Fix up and optimize the kmap_coherent() interface. 2009-09-03 17:21:10 +09:00
poll.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
posix_types.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
posix_types_32.h sh: Convert to asm-generic/posix_types.h. 2009-06-14 23:16:27 +09:00
posix_types_64.h sh: Convert to asm-generic/posix_types.h. 2009-06-14 23:16:27 +09:00
processor.h Merge branch 'master' into sh/smp 2009-09-01 13:54:14 +09:00
processor_32.h sh: Fix up DSP context save/restore. 2009-04-04 11:48:11 -04:00
processor_64.h SH: fix start_thread and user_stack_pointer macros 2009-01-29 15:41:15 +09:00
ptrace.h sh: Add in some ptrace definitions from GDB. 2009-05-09 00:06:03 +09:00
push-switch.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
resource.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
rtc.h sh: rtc-generic support. 2009-04-27 17:34:39 +09:00
rwsem.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
scatterlist.h sh: Convert to asm-generic/scatterlist.h. 2009-06-14 23:25:04 +09:00
seccomp.h sh: seccomp support. 2008-08-02 04:39:32 +09:00
sections.h sh: dwarf unwinder support. 2009-08-14 01:58:43 +09:00
segment.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
sembuf.h sh: Convert ipc/shm bits to their asm-generic versions. 2009-06-14 23:20:27 +09:00
serial.h sh: Switch to asm-generic versions for identical headers. 2009-06-14 23:26:48 +09:00
setup.h sh: Derive COMMAND_LINE_SIZE from asm-generic/setup.h. 2009-06-14 23:27:41 +09:00
sfp-machine.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
sh7760fb.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
sh_bios.h sh: Kill off sh_bios_in_gdb_mode(). 2008-12-22 18:44:44 +09:00
sh_eth.h [netdrvr] sh_eth: Add SH7619 support 2008-08-07 02:20:57 -04:00
sh_keysc.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
shmbuf.h sh: Convert ipc/shm bits to their asm-generic versions. 2009-06-14 23:20:27 +09:00
shmparam.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
sigcontext.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
siginfo.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
signal.h sh: Convert to asm-generic/signal.h. 2009-06-14 23:25:57 +09:00
sizes.h sh: Add a few more definitions to asm/sizes.h. 2008-09-21 10:31:57 +09:00
smc37c93x.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
smp.h cpumask: arch_send_call_function_ipi_mask: sh 2009-06-14 18:24:14 +09:00
socket.h sh: Switch to asm-generic versions for identical headers. 2009-06-14 23:26:48 +09:00
sockios.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
sparsemem.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
spi.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
spinlock.h sh: Fix sh4a llsc-based cmpxchg() 2009-06-11 09:31:55 +03:00
spinlock_types.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
stacktrace.h sh: Use the generalized stacktrace ops 2009-08-13 11:50:08 +09:00
stat.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
statfs.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
string.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
string_32.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
string_64.h sh: Add SH-5 optimized memcpy()/memset()/strcpy()/strlen(). 2008-12-22 18:44:05 +09:00
suspend.h sh: cpuidle for SuperH Mobile using hwblk 2009-07-05 00:29:54 +09:00
swab.h sh: Tidy up duplication in irq/swab/timex.h. 2009-06-14 23:21:54 +09:00
syscall.h sh: Provide the asm/syscall.h interface, needed by tracehook. 2008-09-12 22:13:13 +09:00
syscall_32.h sh: Add ftrace syscall tracing support 2009-07-06 20:16:33 +09:00
syscall_64.h sh: Fix up spurious syscall restarting. 2009-01-29 11:56:03 +09:00
syscalls.h sh: fixup many sparse errors. 2008-09-08 10:35:04 +09:00
syscalls_32.h [CVE-2009-0029] Remove __attribute__((weak)) from sys_pipe/sys_pipe2 2009-01-14 14:15:15 +01:00
syscalls_64.h sh: fixup many sparse errors. 2008-09-08 10:35:04 +09:00
system.h sh: nmi_debug support. 2009-09-01 17:38:32 +09:00
system_32.h Merge branch 'master' into sh/smp 2009-09-01 13:54:14 +09:00
system_64.h sh: Fix up the SH-5 build with caches enabled. 2009-08-16 01:50:17 +09:00
termbits.h sh: Convert to asm-generic/termbits.h and termios.h. 2009-06-14 23:17:57 +09:00
termios.h sh: Convert to asm-generic/termbits.h and termios.h. 2009-06-14 23:17:57 +09:00
thread_info.h Merge branches 'sh/ftrace' and 'sh/stable-updates' 2009-07-11 10:08:33 +09:00
timex.h sh: Tidy up duplication in irq/swab/timex.h. 2009-06-14 23:21:54 +09:00
tlb.h mm: Pass virtual address to [__]p{te,ud,md}_free_tlb() 2009-07-27 12:10:38 -07:00
tlb_64.h sh: Fix up broken kerneldoc comments. 2008-08-04 12:51:06 +09:00
tlbflush.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
topology.h cpumask: remove the now-obsoleted pcibus_to_cpumask(): sh 2009-06-14 18:24:13 +09:00
types.h sh: Add register alignment helpers for shared flushers. 2009-08-15 01:57:36 +09:00
uaccess.h sh: Proper __put_user_asm() size mismatch fix. 2008-07-29 09:16:33 +09:00
uaccess_32.h sh: Proper __put_user_asm() size mismatch fix. 2008-07-29 09:16:33 +09:00
uaccess_64.h sh: sh_ksyms_64 needs __strncpy_from_user() definition. 2008-09-29 19:45:16 +09:00
ubc.h sh: Fix UBC setup and registers for SH2A 2009-05-09 00:09:21 +09:00
ucontext.h sh: Switch to asm-generic versions for identical headers. 2009-06-14 23:26:48 +09:00
unaligned-sh4a.h sh: 16-bit get_unaligned() sh4a fix 2009-06-04 20:20:24 +09:00
unaligned.h sh: Convert to asm-generic/unaligned.h. 2009-06-14 23:24:43 +09:00
unistd.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
unistd_32.h sh: Add sys_cacheflush() call for SH CPUs. 2009-08-24 18:16:56 +09:00
unistd_64.h sh: Add sys_cacheflush() call for SH CPUs. 2009-08-24 18:16:56 +09:00
unwinder.h sh: unwinder: Introduce UNWINDER_BUG() and UNWINDER_BUG_ON() 2009-08-21 13:02:44 +01:00
user.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
vga.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00
vmlinux.lds.h sh: dwarf unwinder support. 2009-08-14 01:58:43 +09:00
watchdog.h sh: Tidy up watchdog build for SH-2. 2009-08-28 10:19:12 +09:00
xor.h sh: migrate to arch/sh/include/ 2008-07-29 08:09:44 +09:00