freebsd-dev/sys/arm/include
Svatopluk Kraus bff6be3e9b Remove FDT specific parts from INTRNG. Change its interface to make it
universal.

(1) New struct intr_map_data is defined as a container for arbitrary
description of an interrupt used by a device. Typically, an interrupt
number and configuration relevant to an interrupt controller is encoded
in such description. However, any additional information may be encoded
too like a set of cpus on which an interrupt should be enabled or vendor
specific data needed for setup of an interrupt in controller. The struct
intr_map_data itself is meant to be opaque for INTRNG.

(2) An intr_map_irq() function is created which takes an interrupt
controller identification and struct intr_map_data as arguments and
returns global interrupt number which identifies an interrupt.

(3) A set of functions to be used by bus drivers is created as well as
a corresponding set of methods for interrupt controller drivers. These
sets take both struct resource and struct intr_map_data as one of the
arguments. There is a goal to keep struct intr_map_data in struct
resource, however, this way a final solution is not limited to that.

(4) Other small changes are done to reflect new situation.

This is only first step aiming to create stable interface for interrupt
controller drivers. Thus, some temporary solution is taken. Interrupt
descriptions for devices are stored in INTRNG and two specific mapping
function are created to be temporary used by bus drivers. That's why
the struct intr_map_data is not opaque for INTRNG now. This temporary
solution will be replaced by final one in next step.

Differential Revision:	https://reviews.freebsd.org/D5730
2016-04-04 09:15:25 +00:00
..
_align.h
_bus.h
_inttypes.h
_limits.h
_stdint.h ARM: Remove trailing whitespace from sys/arm/include 2015-11-10 12:02:41 +00:00
_types.h We only support the ARM EABI in head, remove the check on __ARM_EABI__. 2015-05-31 10:51:06 +00:00
acle-compat.h From https://sourceware.org/ml/newlib/2014/msg00113.html 2014-08-14 04:20:13 +00:00
armreg.h ARM: Add support for new KRAIT 300 CPU revision. 2015-11-28 12:11:44 +00:00
asm.h ARM: Remove trailing whitespace from sys/arm/include 2015-11-10 12:02:41 +00:00
asmacros.h opt_global.h is included automatically in the build. No need to 2014-11-18 17:06:56 +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 ARM: Fix ATAG handling in LINUX_BOOT_API: 2016-03-26 06:57:36 +00:00
atomic-v4.h ARM: Implement atomic_swap_int(9). It's used in DRM2 code. 2015-11-28 12:12:28 +00:00
atomic-v6.h ARM: Implement atomic_swap_int(9). It's used in DRM2 code. 2015-11-28 12:12:28 +00:00
atomic.h ARM: Implement atomic_swap_int(9). It's used in DRM2 code. 2015-11-28 12:12:28 +00:00
blockio.h
board.h ARM: Remove trailing whitespace from sys/arm/include 2015-11-10 12:02:41 +00:00
bus_dma.h Eliminate the last dregs of the old global arm_root_dma_tag. 2015-11-02 22:49:39 +00:00
bus.h Limit arm_base_bs_tag to ARMv4 and ARMv5, we only used it in one place in 2015-11-21 13:02:34 +00:00
clock.h
counter.h Use atomic_load/store_64() in the arm implementation of counter(9), and 2014-08-01 23:06:38 +00:00
cpu-v4.h ARM: Use new ARMv6 naming conventions for cache and TLB functions 2016-02-05 14:57:41 +00:00
cpu-v6.h Remove redundant __ARM_ARCH >= 6 check in armv6 specific files. 2016-02-23 10:12:50 +00:00
cpu.h ARM: Introduce new cpu-v4.h header and move all ARMv4 specific code 2016-02-05 09:46:24 +00:00
cpuconf.h ARM: Remove support for xscale i80219 and i80321 CPUs. We haven't single 2016-02-03 09:15:44 +00:00
cpufunc.h ARM: Use new ARMv6 naming conventions for cache and TLB functions 2016-02-05 14:57:41 +00:00
cpuinfo.h Set the correct values in the arm aux control register, based on chip type. 2015-10-19 19:18:02 +00:00
db_machdep.h Introduce support for HW watchpoints and single stepping for ARMv6/v7 2016-01-25 18:02:28 +00:00
debug_monitor.h SMP support for ARMv6/v7 HW watchpoints 2016-01-28 12:43:58 +00:00
devmap.h Remove pd_prot and pd_cache members from struct arm_devmap_entry. 2016-02-17 12:36:24 +00:00
disassem.h ARM: Remove trailing whitespace from sys/arm/include 2015-11-10 12:02:41 +00:00
dump.h Factor out duplicated code from dumpsys() on each architecture into generic 2015-01-07 01:01:39 +00:00
elf.h Export the eflags field from the elf header. This allows better 2015-05-22 20:50:35 +00:00
endian.h ARM: Remove trailing whitespace from sys/arm/include 2015-11-10 12:02:41 +00:00
exec.h
fdt.h Import ARM_INTRNG, the "next generation" interrupt architecture for arm 2015-10-18 18:26:19 +00:00
fiq.h
float.h Rationalize BSD license on sys/*/include/float.h 2015-08-05 17:05:35 +00:00
floatingpoint.h
fp.h VFP fixes/cleanups for ARM11: 2014-03-29 14:35:36 +00:00
frame.h Cleanup up ARM *frame structures... 2014-12-24 18:54:31 +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 Delete stray clause 3 and renumber. 2015-03-13 02:49:55 +00:00
intr.h Remove FDT specific parts from INTRNG. Change its interface to make it 2016-04-04 09:15:25 +00:00
kdb.h ARM: Use new ARMv6 naming conventions for cache and TLB functions 2016-02-05 14:57:41 +00:00
limits.h
machdep.h ARM: Teach LINUX_BOOT_ABI to recognize DT blob. 2016-03-26 06:55:55 +00:00
md_var.h Add support for usermode (vdso-like) gettimeofday(2) and 2015-12-07 12:20:26 +00:00
memdev.h
metadata.h Add support to the efi boot1 and loader for 32-bit ARM. This will be used 2015-04-06 15:50:20 +00:00
minidump.h Add mmu format info into ARM vmcore. 2016-01-15 18:53:06 +00:00
ofw_machdep.h Allow us to be told about memory past the first 4GB point, but ignore it. 2016-01-25 23:04:40 +00:00
param.h Remove NPTEPG definition which is not used anywhere now after 2016-01-29 16:42:03 +00:00
pcb.h Make PCB structure binary compatible for old and new PMAP on ARM 2015-11-17 13:09:51 +00:00
pcpu.h SMP support for ARMv6/v7 HW watchpoints 2016-01-28 12:43:58 +00:00
physmem.h Allow us to be told about memory past the first 4GB point, but ignore it. 2016-01-25 23:04:40 +00:00
pl310.h Make pl310_print_config static, it's not called out of pl310.c 2015-11-17 11:26:35 +00:00
platform.h When the initarm_* routines were renamed to platform_* and moved to their 2014-08-17 02:56:58 +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_var.h Include pte-v6.h only where needed. 2016-02-17 12:57:05 +00:00
pmap-v4.h Rename pte.h to pte-v4.h and start including directly either pte-v4.h 2016-02-19 09:23:32 +00:00
pmap-v6.h Remove not used definitions and fix some style nits. 2016-02-19 10:32:17 +00:00
pmap.h Move common definitions from both pmap-v4.h and pmap-v6.h into pmap.h. 2016-02-19 08:41:47 +00:00
pmc_mdep.h Rather than defining our own magic checks here use INKERNEL() for 2015-03-27 08:47:16 +00:00
proc.h Add support for branch instruction on armv7 with ptrace single step 2015-11-02 16:56:34 +00:00
profile.h Stop using load-multiple with lr and pc. This has been deprecated in ARMv7 2015-01-31 19:55:12 +00:00
psl.h Fix arm build. 2014-01-06 17:16:27 +00:00
pte-v4.h Rename pte.h to pte-v4.h and start including directly either pte-v4.h 2016-02-19 09:23:32 +00:00
pte-v6.h Remove AP_KRW definition not needed after r295801. 2016-02-19 09:52:11 +00:00
ptrace.h
reg.h SMP support for ARMv6/v7 HW watchpoints 2016-01-28 12:43:58 +00:00
reloc.h
resource.h ARM: Define PCI_RES_BUS resource for platforms having NEW_PCIB enabled. 2015-12-02 14:24:14 +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 ARM: remove old pmap-v6 code. The new pmap-v6 is mature enough, and 2016-01-29 10:31:54 +00:00
sigframe.h
signal.h Don't use an empty struct. 2013-03-11 10:56:46 +00:00
smp.h Generalize IPI support for ARM intrng and use it for interrupt 2016-03-24 09:55:11 +00:00
stack.h Allow the ARM unwinder to work through modules. This will be used to add 2015-02-19 12:06:57 +00:00
stdarg.h
swi.h
sysarch.h Use __ARM_ARCH to decide when ARM_TP_ADDRESS needs to be set. This fixes 2016-01-16 10:12:50 +00:00
sysreg.h Introduce support for HW watchpoints and single stepping for ARMv6/v7 2016-01-25 18:02:28 +00:00
trap.h Move the check to see if we are tracing a function with the DTrace Function 2015-12-05 09:32:36 +00:00
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 Add support for usermode (vdso-like) gettimeofday(2) and 2015-12-07 12:20:26 +00:00
vfp.h Treat synchronous VFP exception just like aynchronous: as an FP exception, 2015-11-01 21:59:56 +00:00
vm.h Include pte-v6.h only where needed. 2016-02-17 12:57:05 +00:00
vmparam.h Add support for usermode (vdso-like) gettimeofday(2) and 2015-12-07 12:20:26 +00:00