linux/Documentation/devicetree/bindings/interrupt-controller
Linus Torvalds ac7473a179 Updates for the interrupt subsystem:
- Core:
 
     - Provide a new mechanism to create interrupt domains. The existing
       interfaces have already too many parameters and it's a pain to expand
       any of this for new required functionality.
 
       The new function takes a pointer to a data structure as argument. The
       data structure combines all existing parameters and allows for easy
       extension.
 
       The first extension for this is to handle the instantiation of
       generic interrupt chips at the core level and to allow drivers to
       provide extra init/exit callbacks.
 
       This is necessary to do the full interrupt chip initialization before
       the new domain is published, so that concurrent usage sites won't see
       a half initialized interrupt domain. Similar problems exist on
       teardown.
 
       This has turned out to be a real problem due to the deferred and
       parallel probing which was added in recent years.
 
       Handling this at the core level allows to remove quite some accrued
       boilerplate code in existing drivers and avoids horrible workarounds
       at the driver level.
 
     - The usual small improvements all over the place
 
   - Drivers
 
     - Add support for LAN966x OIC and RZ/Five SoC
 
     - Split the STM ExtI driver into a microcontroller and a SMP version to
       allow building the latter as a module for multi-platform kernels.
 
     - Enable MSI support for Armada 370XP on platforms which do not support
       IPIs.
 
     - The usual small fixes and enhancements all over the place.
 -----BEGIN PGP SIGNATURE-----
 
 iQJHBAABCgAxFiEEQp8+kY+LLUocC4bMphj1TA10mKEFAmaVJbUTHHRnbHhAbGlu
 dXRyb25peC5kZQAKCRCmGPVMDXSYoXTuD/9Tc9BhY5CW7HQkdPQu2Db1O+esprkQ
 Uo9lMpTTpPiy9btg4LONzLf4mjbufZpyKBxkRWoZFO0Zj5q4UE9NZYh7EcxrF5Tl
 CIFJmyteLsYuOyCmPrtSDSovonXjQKYBE3u2LVJNNkwEkhYbYW9sqIKeT8nneLv6
 53gd28ESFUEUjHNTblw/eXviweyUKSXc0qyg+3hgZQPMoh9RkdkEPvyaw9Y/s5Ce
 FelLLxzMqX86dR2TJMLqiaGiMpUu/kl+Yz2m5c77TwA2D68qjhHywbtKtlH7b3C6
 LMHu2dMrrKSJrLL8roVIYJdHAd1TKWVdnYhqv9WBHFTu1sDuztpR44mewbo8exUU
 L2RgVSGYNmeFC3p4wztWYSQfIVa9uOg7+TnJJdh7G0jLIeKM/TbufWqDAJAuoVPL
 QhGbZ5xNbZJZ8bvhhItjxpRN/kPs44p3mUGyRJBQzm+mDN118bqfmQzhLcwRbfE2
 smp73SQzg9alG2rGdNVEqkKmp8zhg2Crx2VCeVdgbeOxWQRet9zLWcp4FfCEUE9e
 eK3iEi8z+rmwafaf3rsxYdrdIRLaUmcni0v7R/16cJH/Cs7bU3Re8XyGhevo3lsO
 pJiP5wZDxbckwXNpLm3S/qPDW7vSCnuFPF7QmOvC3a70PsD+E4NKUgiwJuHtn/ZV
 pFBKzbQgCsowQA==
 =QCRH
 -----END PGP SIGNATURE-----

Merge tag 'irq-core-2024-07-15' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip

Pull interrupt subsystem updates from Thomas Gleixner:
 "Core:

   - Provide a new mechanism to create interrupt domains. The existing
     interfaces have already too many parameters and it's a pain to
     expand any of this for new required functionality.

     The new function takes a pointer to a data structure as argument.
     The data structure combines all existing parameters and allows for
     easy extension.

     The first extension for this is to handle the instantiation of
     generic interrupt chips at the core level and to allow drivers to
     provide extra init/exit callbacks.

     This is necessary to do the full interrupt chip initialization
     before the new domain is published, so that concurrent usage sites
     won't see a half initialized interrupt domain. Similar problems
     exist on teardown.

     This has turned out to be a real problem due to the deferred and
     parallel probing which was added in recent years.

     Handling this at the core level allows to remove quite some accrued
     boilerplate code in existing drivers and avoids horrible
     workarounds at the driver level.

   - The usual small improvements all over the place

  Drivers:

   - Add support for LAN966x OIC and RZ/Five SoC

   - Split the STM ExtI driver into a microcontroller and a SMP version
     to allow building the latter as a module for multi-platform
     kernels

   - Enable MSI support for Armada 370XP on platforms which do not
     support IPIs

   - The usual small fixes and enhancements all over the place"

* tag 'irq-core-2024-07-15' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (59 commits)
  irqdomain: Fix the kernel-doc and plug it into Documentation
  genirq: Set IRQF_COND_ONESHOT in request_irq()
  irqchip/imx-irqsteer: Handle runtime power management correctly
  irqchip/gic-v3: Pass #redistributor-regions to gic_of_setup_kvm_info()
  irqchip/bcm2835: Enable SKIP_SET_WAKE and MASK_ON_SUSPEND
  irqchip/gic-v4: Make sure a VPE is locked when VMAPP is issued
  irqchip/gic-v4: Substitute vmovp_lock for a per-VM lock
  irqchip/gic-v4: Always configure affinity on VPE activation
  Revert "irqchip/dw-apb-ictl: Support building as module"
  Revert "Loongarch: Support loongarch avec"
  arm64: Kconfig: Allow build irq-stm32mp-exti driver as module
  ARM: stm32: Allow build irq-stm32mp-exti driver as module
  irqchip/stm32mp-exti: Allow building as module
  irqchip/stm32mp-exti: Rename internal symbols
  irqchip/stm32-exti: Split MCU and MPU code
  arm64: Kconfig: Select STM32MP_EXTI on STM32 platforms
  ARM: stm32: Use different EXTI driver on ARMv7m and ARMv7a
  irqchip/stm32-exti: Add CONFIG_STM32MP_EXTI
  irqchip/dw-apb-ictl: Support building as module
  irqchip/riscv-aplic: Simplify the initialization code
  ...
2024-07-22 13:52:05 -07:00
..
abilis,tb10x-ictl.txt
actions,owl-sirq.yaml dt-bindings: interrupt-controller: Drop unneeded quotes 2023-04-04 12:01:52 -05:00
al,alpine-msix.txt
allwinner,sun4i-a10-ic.yaml dt-bindings: Remove 'Device Tree Bindings' from end of title: 2022-08-25 14:06:57 -05:00
allwinner,sun6i-a31-r-intc.yaml dt-bindings: Remove 'Device Tree Bindings' from end of title: 2022-08-25 14:06:57 -05:00
allwinner,sun7i-a20-sc-nmi.yaml dt-bindings: irq: sun7i-nmi: Add binding for the H616 NMI controller 2024-04-23 11:33:10 -05:00
amazon,al-fic.txt
amlogic,meson-gpio-intc.yaml dt-bindings: interrupt-controller: Add support for Amlogic-T7 SoCs 2024-02-22 18:04:42 +01:00
apple,aic.yaml dt-bindings: Drop type from 'cpus' property 2022-12-06 14:50:35 -06:00
apple,aic2.yaml dt-bindings: interrupt-controller: apple,aic2: Add apple,t8112-aic compatible 2023-03-28 19:39:05 +09:00
arm,gic-v3.yaml dt-bindings: interrupt-controller: arm,gic-v3: Add dma-noncoherent property 2023-10-07 12:47:12 +01:00
arm,gic.yaml dt-bindings: yamllint: Require a space after a comment '#' 2023-03-08 09:04:53 -06:00
arm,nvic.txt
arm,versatile-fpga-irq.txt dt-bindings: interrupt-controller: arm,versatile-fpga-irq: mark oxnas compatible as deprecated 2023-08-14 10:26:56 +02:00
arm,vic.yaml
aspeed,ast2xxx-scu-ic.txt
aspeed,ast2400-i2c-ic.txt
aspeed,ast2400-vic.txt
atmel,aic.yaml dt-bindings: interrupt-controller: Convert Atmel AIC to json-schema 2024-03-04 15:03:59 -06:00
brcm,bcm2835-armctrl-ic.txt dt-bindings: Fix typos 2023-08-18 11:32:25 -05:00
brcm,bcm2836-l1-intc.txt
brcm,bcm6345-l1-intc.txt
brcm,bcm7038-l1-intc.yaml
brcm,bcm7120-l2-intc.yaml dt-bindings: Fix typos 2023-08-18 11:32:25 -05:00
brcm,l2-intc.yaml
cdns,xtensa-mx.txt
cdns,xtensa-pic.txt
cirrus,clps711x-intc.txt
csky,apb-intc.txt
csky,mpintc.txt
digicolor-ic.txt
ezchip,nps400-ic.txt
faraday,ftintc010.txt
fsl,intmux.yaml dt-bindings: interrupt-controller: fsl,intmux: Include power-domains support 2024-03-06 18:30:59 -06:00
fsl,irqsteer.yaml dt-bindings: interrupt-controller: fsl,irqsteer: Add imx8mp/imx8qxp support 2024-07-08 17:40:30 -06:00
fsl,ls-extirq.yaml dt-bindings: Drop Li Yang as maintainer for all bindings 2024-06-16 20:26:10 +08:00
fsl,ls-msi.yaml dt-bindings: interrupt-controller: convert fsl,ls-scfg-msi to yaml 2024-07-09 07:40:17 -06:00
fsl,mu-msi.yaml dt-bindings: irqchip: Describe the IMX MU block as a MSI controller 2022-09-29 17:19:36 +01:00
google,goldfish-pic.txt
hisilicon,mbigen-v2.txt
idt,32434-pic.yaml dt-bindings: Remove 'Device Tree Bindings' from end of title: 2022-08-25 14:06:57 -05:00
img,pdc-intc.txt
ingenic,intc.yaml dt-bindings: drop redundant part of title (end) 2022-12-16 11:41:49 -06:00
intel,ce4100-ioapic.yaml dt-bindings: interrupt-controller: Drop unneeded quotes 2023-04-04 12:01:52 -05:00
intel,ce4100-lapic.yaml dt-bindings: interrupt-controller: Drop unneeded quotes 2023-04-04 12:01:52 -05:00
intel,ixp4xx-interrupt.yaml dt-bindings: interrupt-controller: Drop unneeded quotes 2023-04-04 12:01:52 -05:00
interrupts.txt
jcore,aic.txt
kontron,sl28cpld-intc.yaml
loongson,cpu-interrupt-controller.yaml dt-bindings: interrupt-controller: loongarch: Fix mismatched compatible 2023-04-11 14:39:15 -05:00
loongson,eiointc.yaml dt-bindings: interrupt-controller: Add Loongson EIOINTC 2023-06-17 07:16:09 +01:00
loongson,htpic.yaml dt-bindings: interrupt-controller: Drop unneeded quotes 2023-04-04 12:01:52 -05:00
loongson,htvec.yaml dt-bindings: interrupt-controller: Drop unneeded quotes 2023-04-04 12:01:52 -05:00
loongson,liointc.yaml dt-bindings: interrupt-controller: loongson,liointc: Fix dtbs_check warning for interrupt-names 2024-01-17 12:43:00 +08:00
loongson,ls1x-intc.yaml dt-bindings: interrupt-controller: convert loongson,ls1x-intc.txt to json-schema 2023-02-21 10:22:04 -06:00
loongson,pch-msi.yaml dt-bindings: interrupt-controller: Drop unneeded quotes 2023-04-04 12:01:52 -05:00
loongson,pch-pic.yaml dt-bindings: interrupt-controller: Drop unneeded quotes 2023-04-04 12:01:52 -05:00
lsi,zevio-intc.txt
marvell,armada-8k-pic.txt
marvell,gicp.txt
marvell,icu.txt
marvell,mpic.yaml dt-bindings: interrupt-controller: convert marvell,mpic binding to YAML 2024-06-28 17:27:44 +02:00
marvell,odmi-controller.txt
marvell,orion-intc.txt
marvell,sei.txt
mediatek,mt6577-sysirq.yaml dt-bindings: interrupt-controller: mediatek,mt6577-sysirq: Drop unnecessary quotes 2024-05-03 07:50:05 -05:00
mediatek,mtk-cirq.yaml dt-bindings: interrupt-controller: mediatek,cirq: Document MT8192 2022-11-28 11:43:42 +00:00
microchip,lan966x-oic.yaml dt-bindings: interrupt-controller: Add support for Microchip LAN966x OIC 2024-06-17 15:48:15 +02:00
microchip,pic32-evic.txt
microchip,sama7g5-eic.yaml dt-bindings: interrupt-controller: microchip,sama7g5-eic: use proper naming syntax 2023-06-12 13:31:21 -06:00
mrvl,intc.yaml dt-bindings: interrupt-controller: Drop unneeded quotes 2023-04-04 12:01:52 -05:00
mscc,ocelot-icpu-intr.yaml dt-bindings: interrupt-controller: Drop unneeded quotes 2023-04-04 12:01:52 -05:00
msi-controller.yaml
msi.txt
mstar,mst-intc.yaml
mti,cpu-interrupt-controller.yaml dt-bindings: interrupt-controller: migrate MIPS CPU interrupt controller text bindings to YAML 2022-09-26 14:13:33 -05:00
mti,gic.yaml
nuvoton,wpcm450-aic.yaml dt-bindings: drop redundant part of title (end, part three) 2022-12-16 11:41:49 -06:00
nvidia,tegra20-ictlr.txt
nxp,lpc3220-mic.txt
open-pic.txt
opencores,or1k-pic.txt
openrisc,ompic.txt
qca,ath79-cpu-intc.txt
qca,ath79-misc-intc.txt
qcom,mpm.yaml IRQ subsystem changes for v6.8: 2024-01-08 19:35:04 -08:00
qcom,pdc.yaml dt-bindings: interrupt-controller: qcom,pdc: Add sc8180x PDC 2024-07-08 17:40:30 -06:00
ralink,rt2880-intc.yaml dt-bindings: interrupt-controller: add Ralink SoCs interrupt controller 2023-06-27 08:14:38 -06:00
rda,8810pl-intc.yaml dt-bindings: interrupt-controller: Convert rda,8810pl-intc to YAML 2022-06-16 12:01:14 -06:00
realtek,rtl-intc.yaml dt-bindings: interrupt-controller: realtek,rtl-intc: Add rtl9300-intc 2024-07-12 13:12:00 +02:00
renesas,intc-irqpin.yaml
renesas,irqc.yaml dt-bindings: interrupt-controller: renesas,irqc: Add r8a779g0 support 2024-04-23 11:33:09 -05:00
renesas,rza1-irqc.yaml
renesas,rzg2l-irqc.yaml dt-bindings: interrupt-controller: renesas,rzg2l-irqc: Document RZ/Five SoC 2024-06-05 18:56:53 +02:00
riscv,aplic.yaml dt-bindings: interrupt-controller: Add RISC-V advanced PLIC 2024-03-25 17:38:28 +01:00
riscv,cpu-intc.yaml dt-bindings: interrupt-controller: riscv,cpu-intc: convert to dtschema 2024-06-24 13:26:55 -07:00
riscv,imsics.yaml dt-bindings: interrupt-controller: Add RISC-V incoming MSI controller 2024-03-25 17:38:28 +01:00
samsung,exynos4210-combiner.yaml dt-bindings: update Krzysztof Kozlowski's email 2022-04-04 15:43:20 +02:00
sifive,plic-1.0.0.yaml dt-bindings: interrupt-controller: Add SOPHGO CV1812H plic 2023-11-30 12:40:36 +00:00
snps,arc700-intc.txt
snps,archs-idu-intc.txt
snps,archs-intc.txt
snps,dw-apb-ictl.txt
socionext,synquacer-exiu.yaml dt-bindings: interrupt-controller: Convert Synquacer EXIU to DT schema 2023-01-08 18:14:17 -06:00
socionext,uniphier-aidet.yaml dt-bindings: interrupt-controller/uniphier-aidet: Add bindings for NX1 SoC 2022-06-09 17:41:57 +01:00
st,spear3xx-shirq.txt
st,stih407-irq-syscfg.yaml dt-bindings: correct white-spaces in examples 2023-11-29 14:32:08 -06:00
st,stm32-exti.yaml dt-bindings: interrupt-controller: stm32-exti: Add irq mapping to parent 2024-04-23 00:28:14 +02:00
starfive,jh8100-intc.yaml dt-bindings: interrupt-controller: Add starfive,jh8100-intc 2024-02-26 15:09:18 +01:00
sunplus,sp7021-intc.yaml dt-bindings: interrupt-controller: Add bindings for SP7021 interrupt controller 2022-07-08 14:23:55 +02:00
technologic,ts4800.txt
thead,c900-aclint-mswi.yaml dt-bindings: interrupt-controller: Add Sophgo sg2042 CLINT mswi 2023-10-06 14:40:09 +01:00
ti,cp-intc.txt
ti,keystone-irq.txt
ti,omap-intc-irq.txt
ti,omap2-intc.txt
ti,omap4-wugen-mpu
ti,pruss-intc.yaml dt-bindings: use capital "OR" for multiple licenses in SPDX 2023-08-23 15:00:31 -05:00
ti,sci-inta.yaml dt-bindings: irqchip: ti,sci-inta: Add optional power-domains property 2023-04-11 08:19:32 -05:00
ti,sci-intr.yaml dt-bindings: interrupt-controller: ti,sci-intr: Fix missing reg property in the binding 2022-09-29 11:13:43 +01:00
via,vt8500-intc.txt