zephyr/include
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
..
app_memory userspace: update k_mem_domain_add_partition docs 2020-11-05 09:33:40 -05:00
arch drivers: pcie: Add support for IRQ allocation management 2020-11-14 11:13:00 +02:00
audio
bluetooth Bluetooth: host: Change directed advertising to privacy-enabled peer 2020-11-11 13:22:02 +01:00
canbus
cmsis_rtos_v1
cmsis_rtos_v2
console
crypto
data
debug
devicetree devicetree: rename header to reflect that io-channels are not ADC-only 2020-10-19 17:21:33 +02:00
dfu
disk
display
drivers drivers: pcie: Add support for IRQ allocation management 2020-11-14 11:13:00 +02:00
dt-bindings drivers: display: ili9xxx: generalize ILI display driver 2020-11-10 15:52:12 -06:00
fs fs: Add support for mount flags 2020-11-06 13:10:13 -05:00
linker drivers: pcie: Add support for IRQ allocation management 2020-11-14 11:13:00 +02:00
logging logging: make log_backend_std header public 2020-10-21 10:21:05 -04:00
lorawan lorawan,lora: fix C++ compilation/linking errors 2020-10-15 11:08:07 +02:00
mgmt mgmt/osdp: CP: Unify osdp_cp_send_cmd_*() as osdp_cp_send_command() 2020-10-21 17:36:16 +02:00
net net: lwm2m: Add path generation macro 2020-11-10 14:10:44 +02:00
posix include/posix: fix extern "C" placement 2020-10-13 10:05:30 -05:00
power pm: Add power management states definition 2020-11-11 13:20:05 +01:00
random
settings
shell shell: documentation update 2020-10-08 10:12:25 -04:00
stats
storage storage/flash_map: Added function for get erased byte value 2020-10-30 15:53:38 +01:00
sys lib/os: replace z_vprintk with cbprintf 2020-11-13 06:38:01 -05:00
timing timing: do not repeatedly do init()/start()/stop() 2020-11-11 23:55:49 -05:00
toolchain sparc: Add compiler and linker tool support 2020-11-13 14:53:55 -08:00
tracing
usb usb: samples: Add Extension descriptor to webUSB sample. 2020-10-30 15:56:13 +01:00
zephyr
cache.h
device.h device: deprecate DEVICE_INIT 2020-11-10 08:38:09 -06:00
devicetree.h devicetree: add a name for an invalid node identifier 2020-10-19 18:14:11 +02:00
ec_host_cmd.h include: remove enum build assert 2020-10-02 11:44:39 +02:00
emul.h
exc_handle.h
fatal.h
generated_dts_board.h
init.h
irq_nextlevel.h
irq_offload.h
irq.h
kernel_includes.h kernel: move kernel object APIs to own header 2020-10-12 12:21:46 -04:00
kernel_structs.h kernel: move k_heap definition 2020-10-06 19:56:51 -04:00
kernel_version.h
kernel.h kernel: use timing functions to gather thread runtime stats 2020-11-11 23:55:49 -05:00
mempool_heap.h
mempool_sys.h
ptp_clock.h
sched_priq.h
shared_irq.h
spinlock.h kernel: Add cache coherence management framework 2020-10-21 06:38:53 -04:00
sw_isr_table.h
sys_clock.h kernel/sys_clock.h: Remove deprecated macros 2020-10-04 14:12:27 -07:00
syscall_handler.h
syscall.h
timeout_q.h kernel: timer: update _timeout API for const correctness 2020-10-02 11:29:14 +02:00
toolchain.h
wait_q.h
zephyr.h