freebsd-nq/sys/arm/include
Ian Lepore 11d47032ee Eliminate one of the causes of spurious interrupts on armv6. The arm weak
memory ordering model allows writes to different devices to complete out
of order, leading to a situation where the write that clears an interrupt
source at a device can complete after a write that unmasks and EOIs the
interrupt at the interrupt controller, leading to a spurious re-interrupt.

This adds a generic barrier function specific to the needs of interrupt
controllers, and calls that function from the GIC and TI AINTC controllers.
There may still be other soc-specific controllers that need to make the call.

Reviewed by:	cognet, Svatopluk Kraus <onwahe@gmail.com>
MFC after:	3 days
2014-05-24 16:21:16 +00:00
..
_align.h
_bus.h
_inttypes.h
_limits.h
_stdint.h
_types.h Rename __wchar_t so it no longer conflicts with __wchar_t from clang 3.4 2014-04-01 14:46:11 +00:00
armreg.h Add Cortex-A15 cpu id revisions. 2014-04-01 04:56:40 +00:00
asm.h
asmacros.h Remove the unreferenced DATA() macro. That leaves only GET_CURTHREAD_PTR() 2014-03-11 22:41:34 +00:00
at91_gpio.h
atags.h
atomic.h Make the hardware memory and instruction barrier functions work on armv4 2014-05-11 00:43:06 +00:00
blockio.h
board.h
bootconfig.h
bus_dma.h
bus.h
clock.h
counter.h Fix issues with zeroing and fetching the counters, on x86 and ppc64. 2013-07-01 02:48:27 +00:00
cpu.h Give suitably-endowed ARMs a register similar to the x86 TSC register. 2014-05-14 19:11:15 +00:00
cpuconf.h Remove all traces of support for ARM chips prior to the arm9 series. We 2014-03-09 21:12:31 +00:00
cpufunc.h Add cpu_l2cache_drain_writebuf(), use it to implement generic_bs_barrier(). 2014-05-11 04:24:57 +00:00
db_machdep.h
devmap.h Fix a comment s/initarm_/platform_/ 2014-05-17 11:29:44 +00:00
disassem.h
elf.h
endian.h
exec.h
fdt.h Remove dev/fdt/fdt_pci.c, which was code specific to Marvell ARM SoCs, 2014-01-05 22:36:34 +00:00
fiq.h
float.h
floatingpoint.h
fp.h VFP fixes/cleanups for ARM11: 2014-03-29 14:35:36 +00:00
frame.h Remove the last dregs of trapframe_t. It turns out only arm was using 2013-10-27 17:09:23 +00:00
gdb_machdep.h
ieee.h On ARM EABI double precision floating point values are stored in the 2013-09-07 14:04:10 +00:00
ieeefp.h
in_cksum.h
intr.h Eliminate one of the causes of spurious interrupts on armv6. The arm weak 2014-05-24 16:21:16 +00:00
katelib.h
kdb.h Remove cpu_idcache_wbinv_all() from kdb_cpu_trap(), it's no longer needed. 2014-04-27 18:12:55 +00:00
limits.h
machdep.h Add the start of the ARM platform code. This is based on the PowerPC 2014-05-17 11:27:36 +00:00
md_var.h Remove all traces of support for ARM chips prior to the arm9 series. We 2014-03-09 21:12:31 +00:00
memdev.h
metadata.h
minidump.h
ofw_machdep.h Retire machine/fdt.h as a header used by MI code, as its function is now 2014-01-05 18:46:58 +00:00
param.h Simplify how we build MACHINE_ARCH. There are 3 options that may be set 2014-03-22 15:59:18 +00:00
pcb.h Remove all dregs of a per-thread undefined-exception-mode stack. This is 2014-03-09 03:49:06 +00:00
pcpu.h Rework the VFP code that handles demand-based save and restore of state. 2014-03-09 03:00:03 +00:00
physmem.h Give the fdt helper routines static linkage since no global definition 2014-02-17 20:04:57 +00:00
pl310.h Add a public routine to set the L2 cache ram latencies. This can be 2014-05-06 14:19:54 +00:00
platform.h Add the start of the ARM platform code. This is based on the PowerPC 2014-05-17 11:27:36 +00:00
platformvar.h Add FDT_PLATFORM_DEF2 for when there are multiple platforms needing to use 2014-05-17 18:02:46 +00:00
pmap.h Move an else case that was missed in r263676 2014-03-24 08:24:32 +00:00
pmc_mdep.h
proc.h
profile.h
psl.h Fix arm build. 2014-01-06 17:16:27 +00:00
pte.h Introduce superpages support for ARMv6/v7. 2013-08-26 17:12:30 +00:00
ptrace.h
reg.h
reloc.h
resource.h
runq.h
sc_machdep.h
setjmp.h
sf_buf.h Remove the ARM_USE_SMALL_ALLOC option and code related to it. 2014-02-08 22:21:38 +00:00
sigframe.h
signal.h
smp.h There is no difference between IPI_STOP and IPI_STOP_HARD on ARM, so 2014-04-27 20:01:59 +00:00
stack.h
stdarg.h
swi.h
sysarch.h Remove #include <machine/asmacros.h> from files that don't need it. 2014-03-11 22:47:04 +00:00
trap.h
ucontext.h Remove NetBSD implementation details not relevant to FreeBSD. 2014-05-23 00:21:02 +00:00
undefined.h Remove #include <machine/frame.h> from all the arm code that doesn't 2013-10-27 01:34:10 +00:00
utrap.h
vdso.h
vfp.h Add more flags for the fpexc register from the ARM1176JZF-S Manual 2014-03-29 10:11:19 +00:00
vm.h
vmparam.h Tell VM we now have ARM platforms with physically discontiguous memory. 2014-04-06 21:40:39 +00:00