zephyr/include/arch
Johan Hedberg 9e4dfd8f4e drivers: pcie: Add support for IRQ allocation management
There are x86 platforms where the IRQ configuration register for PCIe
is not pre-populated and the OS needs to assign a number dynamically
by writing to the register.

In order to allocate interrupts we have to know which ones have been
hard-coded in device tree. We accomplish this by collecting these
values through the IRQ_CONNECT() macro and placing them in a dedicated
linker section (in ROM).

The full set of allocated interrupts are managed through a bitmap, and
the pre-allocated values (from the linker section) are inserted into
this upon initial runtime access.

This patch introduces a new pcie_alloc_irq() API that drivers can use
to allocate interrupt line numbers. The two in-tree drivers that were
using this API (I2C and UART) are converted to use the new API.

Signed-off-by: Johan Hedberg <johan.hedberg@intel.com>
2020-11-14 11:13:00 +02:00
..
arc arc: enable thread local storage 2020-11-11 13:25:29 +01:00
arm aarch64: mmu: Enable support for unprivileged EL0 2020-11-04 13:58:19 -08:00
common ARCH: COMMON: split sys_io.h for MMIO & memory bits functions 2020-09-01 13:36:48 +02:00
nios2 arch: Apply dynamic IRQ API change 2020-09-02 13:48:13 +02:00
posix Revert "posix: linker: Wrap rodata and rwdata in sections." 2020-09-02 14:46:01 -04:00
riscv arch: riscv: linker: add support for userspace 2020-11-09 15:37:11 -05:00
sparc sparc: add support for thread local storage 2020-11-13 14:53:55 -08:00
x86 drivers: pcie: Add support for IRQ allocation management 2020-11-14 11:13:00 +02:00
xtensa xtensa: remove errno_var from strcut _thread_arch 2020-10-24 10:52:00 -07:00
arch_inlines.h
cpu.h arch: Add SPARC processor architecture 2020-11-13 14:53:55 -08:00
syscall.h arch: riscv: add memory protection support 2020-11-09 15:37:11 -05:00