mirror of
https://github.com/opnsense/src.git
synced 2026-03-02 05:13:58 -05:00
On arm64 (where INTRNG is enabled), the interrupts have to be mapped with ACPI_BUS_MAP_INTR() before adding them as resources to devices. The earlier code did the mapping before calling acpi_set_resource(), which bypassed code that checked for PCI link interrupts. To fix this, move the call to map interrupts into acpi_set_resource() and that requires additional work to lookup interrupt properties. The changes here are to: * extend acpi_lookup_irq_handler() to lookup an irq in the ACPI resources * create a helper function acpi_map_intr() which uses the updated acpi_lookup_irq_handler() to look up an irq, and then map it with ACPI_BUS_MAP_INTR() * use acpi_map_intr() in acpi_pcib_route_interrupt() to map pci link interrupts. With these changes, we can drop the ifdefs in acpi_resource.c, and we can also drop the call for mapping interrupts in generic_timer.c Reviewed by: andrew Differential Revision: https://reviews.freebsd.org/D17790 |
||
|---|---|---|
| .. | ||
| allwinner | ||
| altera/socfpga | ||
| amlogic/aml8726 | ||
| annapurna/alpine | ||
| arm | ||
| broadcom/bcm2835 | ||
| cloudabi32 | ||
| conf | ||
| freescale | ||
| include | ||
| mv | ||
| nvidia | ||
| qemu | ||
| ralink | ||
| rockchip | ||
| samsung/exynos | ||
| ti | ||
| versatile | ||
| xilinx | ||