freebsd-skq/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 Make the wchar_t type machine dependent. 2012-06-24 04:15:58 +00:00
_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 Reduce the difference to NetBSD. 2013-06-07 21:23:11 +00:00
asmacros.h Remove the unreferenced DATA() macro. That leaves only GET_CURTHREAD_PTR() 2014-03-11 22:41:34 +00:00
at91_gpio.h Add userland access to at91 gpio functionality via ioctl calls. Also, 2013-03-29 19:52:57 +00:00
atags.h Defines for parsing linux ATAGs lists. 2012-06-14 14:38:55 +00:00
atomic.h Make the hardware memory and instruction barrier functions work on armv4 2014-05-11 00:43:06 +00:00
blockio.h trim trailing whitespace 2012-06-13 05:02:51 +00:00
board.h Create a generic way to support multiple boards within an 2012-07-07 05:02:39 +00:00
bootconfig.h
bus_dma.h
bus.h o Switch to use physical addresses in rman for FDT. 2013-03-18 15:18:55 +00:00
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 Reserve AT_TIMEKEEP auxv entry for providing usermode the pointer to 2012-06-22 06:38:31 +00:00
endian.h trim trailing whitespace 2012-06-13 05:02:51 +00:00
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 Add C11 macros describing subnormal numbers to float.h. 2012-01-23 06:36:41 +00:00
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 People porting FreeBSD to new architectures ought not have to 2011-10-21 06:41:46 +00:00
in_cksum.h trim trailing whitespace 2012-06-13 05:02:51 +00:00
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 trim trailing whitespace 2012-06-13 05:02:51 +00:00
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 Add ARM callchain support for hwpmc. 2012-06-13 06:38:25 +00:00
proc.h * Correct KINFO_PROC_SIZE for ARM EABI. 2013-01-17 09:52:35 +00:00
profile.h trim trailing whitespace 2012-06-13 05:02:51 +00:00
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 trim trailing whitespace 2012-06-13 05:02:51 +00:00
runq.h
sc_machdep.h Piggyback MIPS changes and add ARM syscons support for devices with 2012-08-25 23:59:31 +00:00
setjmp.h Merge in changes from NetBSD: 2013-06-08 07:16:22 +00:00
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 Don't use an empty struct. 2013-03-11 10:56:46 +00:00
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 trim trailing whitespace 2012-06-13 05:02:51 +00:00
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 Implement mechanism to export some kernel timekeeping data to 2012-06-22 07:06:40 +00:00
vfp.h Add more flags for the fpexc register from the ARM1176JZF-S Manual 2014-03-29 10:11:19 +00:00
vm.h Properly implement pmap_[get|set]_memattr 2012-12-19 00:24:31 +00:00
vmparam.h Tell VM we now have ARM platforms with physically discontiguous memory. 2014-04-06 21:40:39 +00:00