| .. | .. |
|---|
| 1 | +# SPDX-License-Identifier: GPL-2.0-only |
|---|
| 1 | 2 | menu "IRQ chip support" |
|---|
| 2 | 3 | |
|---|
| 3 | 4 | config IRQCHIP |
|---|
| .. | .. |
|---|
| 6 | 7 | |
|---|
| 7 | 8 | config ARM_GIC |
|---|
| 8 | 9 | bool |
|---|
| 9 | | - select IRQ_DOMAIN |
|---|
| 10 | 10 | select IRQ_DOMAIN_HIERARCHY |
|---|
| 11 | 11 | select GENERIC_IRQ_MULTI_HANDLER |
|---|
| 12 | 12 | select GENERIC_IRQ_EFFECTIVE_AFF_MASK |
|---|
| .. | .. |
|---|
| 15 | 15 | bool |
|---|
| 16 | 16 | depends on PM |
|---|
| 17 | 17 | select ARM_GIC |
|---|
| 18 | | - select PM_CLK |
|---|
| 19 | 18 | |
|---|
| 20 | 19 | config ARM_GIC_MAX_NR |
|---|
| 21 | 20 | int |
|---|
| 21 | + depends on ARM_GIC |
|---|
| 22 | 22 | default 2 if ARCH_REALVIEW |
|---|
| 23 | 23 | default 1 |
|---|
| 24 | 24 | |
|---|
| .. | .. |
|---|
| 33 | 33 | |
|---|
| 34 | 34 | config ARM_GIC_V3 |
|---|
| 35 | 35 | bool |
|---|
| 36 | | - select IRQ_DOMAIN |
|---|
| 37 | 36 | select GENERIC_IRQ_MULTI_HANDLER |
|---|
| 38 | 37 | select IRQ_DOMAIN_HIERARCHY |
|---|
| 39 | 38 | select PARTITION_PERCPU |
|---|
| .. | .. |
|---|
| 59 | 58 | |
|---|
| 60 | 59 | config ARM_NVIC |
|---|
| 61 | 60 | bool |
|---|
| 62 | | - select IRQ_DOMAIN |
|---|
| 63 | 61 | select IRQ_DOMAIN_HIERARCHY |
|---|
| 64 | 62 | select GENERIC_IRQ_CHIP |
|---|
| 65 | 63 | |
|---|
| .. | .. |
|---|
| 88 | 86 | depends on PCI |
|---|
| 89 | 87 | select PCI_MSI |
|---|
| 90 | 88 | select GENERIC_IRQ_CHIP |
|---|
| 89 | + |
|---|
| 90 | +config AL_FIC |
|---|
| 91 | + bool "Amazon's Annapurna Labs Fabric Interrupt Controller" |
|---|
| 92 | + depends on OF || COMPILE_TEST |
|---|
| 93 | + select GENERIC_IRQ_CHIP |
|---|
| 94 | + select IRQ_DOMAIN |
|---|
| 95 | + help |
|---|
| 96 | + Support Amazon's Annapurna Labs Fabric Interrupt Controller. |
|---|
| 91 | 97 | |
|---|
| 92 | 98 | config ATMEL_AIC_IRQ |
|---|
| 93 | 99 | bool |
|---|
| .. | .. |
|---|
| 129 | 135 | select GENERIC_IRQ_CHIP |
|---|
| 130 | 136 | select IRQ_DOMAIN |
|---|
| 131 | 137 | |
|---|
| 132 | | -config DW_APB_ICTL |
|---|
| 138 | +config DAVINCI_AINTC |
|---|
| 133 | 139 | bool |
|---|
| 134 | 140 | select GENERIC_IRQ_CHIP |
|---|
| 135 | 141 | select IRQ_DOMAIN |
|---|
| 142 | + |
|---|
| 143 | +config DAVINCI_CP_INTC |
|---|
| 144 | + bool |
|---|
| 145 | + select GENERIC_IRQ_CHIP |
|---|
| 146 | + select IRQ_DOMAIN |
|---|
| 147 | + |
|---|
| 148 | +config DW_APB_ICTL |
|---|
| 149 | + bool |
|---|
| 150 | + select GENERIC_IRQ_CHIP |
|---|
| 151 | + select IRQ_DOMAIN_HIERARCHY |
|---|
| 136 | 152 | |
|---|
| 137 | 153 | config FARADAY_FTINTC010 |
|---|
| 138 | 154 | bool |
|---|
| .. | .. |
|---|
| 150 | 166 | select GENERIC_IRQ_CHIP |
|---|
| 151 | 167 | select IRQ_DOMAIN |
|---|
| 152 | 168 | |
|---|
| 169 | +config IXP4XX_IRQ |
|---|
| 170 | + bool |
|---|
| 171 | + select IRQ_DOMAIN |
|---|
| 172 | + select GENERIC_IRQ_MULTI_HANDLER |
|---|
| 173 | + select SPARSE_IRQ |
|---|
| 174 | + |
|---|
| 175 | +config MADERA_IRQ |
|---|
| 176 | + tristate |
|---|
| 177 | + |
|---|
| 153 | 178 | config IRQ_MIPS_CPU |
|---|
| 154 | 179 | bool |
|---|
| 155 | 180 | select GENERIC_IRQ_CHIP |
|---|
| 156 | | - select GENERIC_IRQ_IPI if SYS_SUPPORTS_MULTITHREADING |
|---|
| 181 | + select GENERIC_IRQ_IPI if SMP && SYS_SUPPORTS_MULTITHREADING |
|---|
| 157 | 182 | select IRQ_DOMAIN |
|---|
| 158 | | - select IRQ_DOMAIN_HIERARCHY if GENERIC_IRQ_IPI |
|---|
| 159 | 183 | select GENERIC_IRQ_EFFECTIVE_AFF_MASK |
|---|
| 160 | 184 | |
|---|
| 161 | 185 | config CLPS711X_IRQCHIP |
|---|
| .. | .. |
|---|
| 195 | 219 | help |
|---|
| 196 | 220 | Support for the J-Core integrated AIC. |
|---|
| 197 | 221 | |
|---|
| 198 | | -config RENESAS_INTC_IRQPIN |
|---|
| 222 | +config RDA_INTC |
|---|
| 199 | 223 | bool |
|---|
| 200 | 224 | select IRQ_DOMAIN |
|---|
| 201 | 225 | |
|---|
| 226 | +config RENESAS_INTC_IRQPIN |
|---|
| 227 | + bool "Renesas INTC External IRQ Pin Support" if COMPILE_TEST |
|---|
| 228 | + select IRQ_DOMAIN |
|---|
| 229 | + help |
|---|
| 230 | + Enable support for the Renesas Interrupt Controller for external |
|---|
| 231 | + interrupt pins, as found on SH/R-Mobile and R-Car Gen1 SoCs. |
|---|
| 232 | + |
|---|
| 202 | 233 | config RENESAS_IRQC |
|---|
| 203 | | - bool |
|---|
| 234 | + bool "Renesas R-Mobile APE6, R-Car Gen{2,3} and RZ/G{1,2} IRQC support" if COMPILE_TEST |
|---|
| 204 | 235 | select GENERIC_IRQ_CHIP |
|---|
| 205 | 236 | select IRQ_DOMAIN |
|---|
| 237 | + help |
|---|
| 238 | + Enable support for the Renesas Interrupt Controller for external |
|---|
| 239 | + devices, as found on R-Mobile APE6, R-Car Gen{2,3} and RZ/G{1,2} SoCs. |
|---|
| 240 | + |
|---|
| 241 | +config RENESAS_RZA1_IRQC |
|---|
| 242 | + bool "Renesas RZ/A1 IRQC support" if COMPILE_TEST |
|---|
| 243 | + select IRQ_DOMAIN_HIERARCHY |
|---|
| 244 | + help |
|---|
| 245 | + Enable support for the Renesas RZ/A1 Interrupt Controller, to use up |
|---|
| 246 | + to 8 external interrupts with configurable sense select. |
|---|
| 247 | + |
|---|
| 248 | +config SL28CPLD_INTC |
|---|
| 249 | + bool "Kontron sl28cpld IRQ controller" |
|---|
| 250 | + depends on MFD_SL28CPLD=y || COMPILE_TEST |
|---|
| 251 | + select REGMAP_IRQ |
|---|
| 252 | + help |
|---|
| 253 | + Interrupt controller driver for the board management controller |
|---|
| 254 | + found on the Kontron sl28 CPLD. |
|---|
| 206 | 255 | |
|---|
| 207 | 256 | config ST_IRQCHIP |
|---|
| 208 | 257 | bool |
|---|
| .. | .. |
|---|
| 264 | 313 | |
|---|
| 265 | 314 | config MIPS_GIC |
|---|
| 266 | 315 | bool |
|---|
| 267 | | - select GENERIC_IRQ_IPI |
|---|
| 316 | + select GENERIC_IRQ_IPI if SMP |
|---|
| 268 | 317 | select IRQ_DOMAIN_HIERARCHY |
|---|
| 269 | 318 | select MIPS_CM |
|---|
| 270 | 319 | |
|---|
| .. | .. |
|---|
| 273 | 322 | depends on MACH_INGENIC |
|---|
| 274 | 323 | default y |
|---|
| 275 | 324 | |
|---|
| 325 | +config INGENIC_TCU_IRQ |
|---|
| 326 | + bool "Ingenic JZ47xx TCU interrupt controller" |
|---|
| 327 | + default MACH_INGENIC |
|---|
| 328 | + depends on MIPS || COMPILE_TEST |
|---|
| 329 | + select MFD_SYSCON |
|---|
| 330 | + select GENERIC_IRQ_CHIP |
|---|
| 331 | + help |
|---|
| 332 | + Support for interrupts in the Timer/Counter Unit (TCU) of the Ingenic |
|---|
| 333 | + JZ47xx SoCs. |
|---|
| 334 | + |
|---|
| 335 | + If unsure, say N. |
|---|
| 336 | + |
|---|
| 276 | 337 | config RENESAS_H8300H_INTC |
|---|
| 277 | 338 | bool |
|---|
| 278 | 339 | select IRQ_DOMAIN |
|---|
| 279 | 340 | |
|---|
| 280 | 341 | config RENESAS_H8S_INTC |
|---|
| 281 | | - bool |
|---|
| 342 | + bool "Renesas H8S Interrupt Controller Support" if COMPILE_TEST |
|---|
| 282 | 343 | select IRQ_DOMAIN |
|---|
| 344 | + help |
|---|
| 345 | + Enable support for the Renesas H8/300 Interrupt Controller, as found |
|---|
| 346 | + on Renesas H8S SoCs. |
|---|
| 283 | 347 | |
|---|
| 284 | 348 | config IMX_GPCV2 |
|---|
| 285 | 349 | bool |
|---|
| .. | .. |
|---|
| 310 | 374 | config MVEBU_PIC |
|---|
| 311 | 375 | bool |
|---|
| 312 | 376 | |
|---|
| 377 | +config MVEBU_SEI |
|---|
| 378 | + bool |
|---|
| 379 | + |
|---|
| 380 | +config LS_EXTIRQ |
|---|
| 381 | + def_bool y if SOC_LS1021A || ARCH_LAYERSCAPE |
|---|
| 382 | + select MFD_SYSCON |
|---|
| 383 | + |
|---|
| 313 | 384 | config LS_SCFG_MSI |
|---|
| 314 | 385 | def_bool y if SOC_LS1021A || ARCH_LAYERSCAPE |
|---|
| 315 | 386 | depends on PCI && PCI_MSI |
|---|
| .. | .. |
|---|
| 332 | 403 | config QCOM_IRQ_COMBINER |
|---|
| 333 | 404 | bool "QCOM IRQ combiner support" |
|---|
| 334 | 405 | depends on ARCH_QCOM && ACPI |
|---|
| 335 | | - select IRQ_DOMAIN |
|---|
| 336 | 406 | select IRQ_DOMAIN_HIERARCHY |
|---|
| 337 | 407 | help |
|---|
| 338 | 408 | Say yes here to add support for the IRQ combiner devices embedded |
|---|
| .. | .. |
|---|
| 347 | 417 | Support for the UniPhier AIDET (ARM Interrupt Detector). |
|---|
| 348 | 418 | |
|---|
| 349 | 419 | config MESON_IRQ_GPIO |
|---|
| 350 | | - bool "Meson GPIO Interrupt Multiplexer" |
|---|
| 351 | | - depends on ARCH_MESON |
|---|
| 352 | | - select IRQ_DOMAIN |
|---|
| 420 | + tristate "Meson GPIO Interrupt Multiplexer" |
|---|
| 421 | + depends on ARCH_MESON || COMPILE_TEST |
|---|
| 422 | + default ARCH_MESON |
|---|
| 353 | 423 | select IRQ_DOMAIN_HIERARCHY |
|---|
| 354 | 424 | help |
|---|
| 355 | 425 | Support Meson SoC Family GPIO Interrupt Multiplexer |
|---|
| .. | .. |
|---|
| 364 | 434 | for Goldfish based virtual platforms. |
|---|
| 365 | 435 | |
|---|
| 366 | 436 | config QCOM_PDC |
|---|
| 367 | | - bool "QCOM PDC" |
|---|
| 437 | + tristate "QCOM PDC" |
|---|
| 368 | 438 | depends on ARCH_QCOM |
|---|
| 369 | | - select IRQ_DOMAIN |
|---|
| 439 | + depends on QCOM_SCM || !QCOM_SCM |
|---|
| 370 | 440 | select IRQ_DOMAIN_HIERARCHY |
|---|
| 371 | 441 | help |
|---|
| 372 | 442 | Power Domain Controller driver to manage and configure wakeup |
|---|
| 373 | 443 | IRQs for Qualcomm Technologies Inc (QTI) mobile chips. |
|---|
| 374 | 444 | |
|---|
| 445 | +config CSKY_MPINTC |
|---|
| 446 | + bool "C-SKY Multi Processor Interrupt Controller" |
|---|
| 447 | + depends on CSKY |
|---|
| 448 | + help |
|---|
| 449 | + Say yes here to enable C-SKY SMP interrupt controller driver used |
|---|
| 450 | + for C-SKY SMP system. |
|---|
| 451 | + In fact it's not mmio map in hardware and it uses ld/st to visit the |
|---|
| 452 | + controller's register inside CPU. |
|---|
| 453 | + |
|---|
| 454 | +config CSKY_APB_INTC |
|---|
| 455 | + bool "C-SKY APB Interrupt Controller" |
|---|
| 456 | + depends on CSKY |
|---|
| 457 | + help |
|---|
| 458 | + Say yes here to enable C-SKY APB interrupt controller driver used |
|---|
| 459 | + by C-SKY single core SOC system. It uses mmio map apb-bus to visit |
|---|
| 460 | + the controller's register. |
|---|
| 461 | + |
|---|
| 462 | +config IMX_IRQSTEER |
|---|
| 463 | + bool "i.MX IRQSTEER support" |
|---|
| 464 | + depends on ARCH_MXC || COMPILE_TEST |
|---|
| 465 | + default ARCH_MXC |
|---|
| 466 | + select IRQ_DOMAIN |
|---|
| 467 | + help |
|---|
| 468 | + Support for the i.MX IRQSTEER interrupt multiplexer/remapper. |
|---|
| 469 | + |
|---|
| 470 | +config IMX_INTMUX |
|---|
| 471 | + bool "i.MX INTMUX support" if COMPILE_TEST |
|---|
| 472 | + default y if ARCH_MXC |
|---|
| 473 | + select IRQ_DOMAIN |
|---|
| 474 | + help |
|---|
| 475 | + Support for the i.MX INTMUX interrupt multiplexer. |
|---|
| 476 | + |
|---|
| 477 | +config LS1X_IRQ |
|---|
| 478 | + bool "Loongson-1 Interrupt Controller" |
|---|
| 479 | + depends on MACH_LOONGSON32 |
|---|
| 480 | + default y |
|---|
| 481 | + select IRQ_DOMAIN |
|---|
| 482 | + select GENERIC_IRQ_CHIP |
|---|
| 483 | + help |
|---|
| 484 | + Support for the Loongson-1 platform Interrupt Controller. |
|---|
| 485 | + |
|---|
| 486 | +config TI_SCI_INTR_IRQCHIP |
|---|
| 487 | + bool |
|---|
| 488 | + depends on TI_SCI_PROTOCOL |
|---|
| 489 | + select IRQ_DOMAIN_HIERARCHY |
|---|
| 490 | + help |
|---|
| 491 | + This enables the irqchip driver support for K3 Interrupt router |
|---|
| 492 | + over TI System Control Interface available on some new TI's SoCs. |
|---|
| 493 | + If you wish to use interrupt router irq resources managed by the |
|---|
| 494 | + TI System Controller, say Y here. Otherwise, say N. |
|---|
| 495 | + |
|---|
| 496 | +config TI_SCI_INTA_IRQCHIP |
|---|
| 497 | + bool |
|---|
| 498 | + depends on TI_SCI_PROTOCOL |
|---|
| 499 | + select IRQ_DOMAIN_HIERARCHY |
|---|
| 500 | + select TI_SCI_INTA_MSI_DOMAIN |
|---|
| 501 | + help |
|---|
| 502 | + This enables the irqchip driver support for K3 Interrupt aggregator |
|---|
| 503 | + over TI System Control Interface available on some new TI's SoCs. |
|---|
| 504 | + If you wish to use interrupt aggregator irq resources managed by the |
|---|
| 505 | + TI System Controller, say Y here. Otherwise, say N. |
|---|
| 506 | + |
|---|
| 507 | +config TI_PRUSS_INTC |
|---|
| 508 | + tristate "TI PRU-ICSS Interrupt Controller" |
|---|
| 509 | + depends on ARCH_DAVINCI || SOC_AM33XX || SOC_AM43XX || SOC_DRA7XX || ARCH_KEYSTONE || ARCH_K3 |
|---|
| 510 | + select IRQ_DOMAIN |
|---|
| 511 | + help |
|---|
| 512 | + This enables support for the PRU-ICSS Local Interrupt Controller |
|---|
| 513 | + present within a PRU-ICSS subsystem present on various TI SoCs. |
|---|
| 514 | + The PRUSS INTC enables various interrupts to be routed to multiple |
|---|
| 515 | + different processors within the SoC. |
|---|
| 516 | + |
|---|
| 517 | +config RISCV_INTC |
|---|
| 518 | + bool "RISC-V Local Interrupt Controller" |
|---|
| 519 | + depends on RISCV |
|---|
| 520 | + default y |
|---|
| 521 | + help |
|---|
| 522 | + This enables support for the per-HART local interrupt controller |
|---|
| 523 | + found in standard RISC-V systems. The per-HART local interrupt |
|---|
| 524 | + controller handles timer interrupts, software interrupts, and |
|---|
| 525 | + hardware interrupts. Without a per-HART local interrupt controller, |
|---|
| 526 | + a RISC-V system will be unable to handle any interrupts. |
|---|
| 527 | + |
|---|
| 528 | + If you don't know what to do here, say Y. |
|---|
| 529 | + |
|---|
| 375 | 530 | config SIFIVE_PLIC |
|---|
| 376 | 531 | bool "SiFive Platform-Level Interrupt Controller" |
|---|
| 377 | 532 | depends on RISCV |
|---|
| 533 | + select IRQ_DOMAIN_HIERARCHY |
|---|
| 378 | 534 | help |
|---|
| 379 | 535 | This enables support for the PLIC chip found in SiFive (and |
|---|
| 380 | 536 | potentially other) RISC-V systems. The PLIC controls devices |
|---|
| .. | .. |
|---|
| 384 | 540 | |
|---|
| 385 | 541 | If you don't know what to do here, say Y. |
|---|
| 386 | 542 | |
|---|
| 543 | +config EXYNOS_IRQ_COMBINER |
|---|
| 544 | + bool "Samsung Exynos IRQ combiner support" if COMPILE_TEST |
|---|
| 545 | + depends on (ARCH_EXYNOS && ARM) || COMPILE_TEST |
|---|
| 546 | + help |
|---|
| 547 | + Say yes here to add support for the IRQ combiner devices embedded |
|---|
| 548 | + in Samsung Exynos chips. |
|---|
| 549 | + |
|---|
| 550 | +config LOONGSON_LIOINTC |
|---|
| 551 | + bool "Loongson Local I/O Interrupt Controller" |
|---|
| 552 | + depends on MACH_LOONGSON64 |
|---|
| 553 | + default y |
|---|
| 554 | + select IRQ_DOMAIN |
|---|
| 555 | + select GENERIC_IRQ_CHIP |
|---|
| 556 | + help |
|---|
| 557 | + Support for the Loongson Local I/O Interrupt Controller. |
|---|
| 558 | + |
|---|
| 559 | +config LOONGSON_HTPIC |
|---|
| 560 | + bool "Loongson3 HyperTransport PIC Controller" |
|---|
| 561 | + depends on MACH_LOONGSON64 |
|---|
| 562 | + default y |
|---|
| 563 | + select IRQ_DOMAIN |
|---|
| 564 | + select GENERIC_IRQ_CHIP |
|---|
| 565 | + help |
|---|
| 566 | + Support for the Loongson-3 HyperTransport PIC Controller. |
|---|
| 567 | + |
|---|
| 568 | +config LOONGSON_HTVEC |
|---|
| 569 | + bool "Loongson3 HyperTransport Interrupt Vector Controller" |
|---|
| 570 | + depends on MACH_LOONGSON64 |
|---|
| 571 | + default MACH_LOONGSON64 |
|---|
| 572 | + select IRQ_DOMAIN_HIERARCHY |
|---|
| 573 | + help |
|---|
| 574 | + Support for the Loongson3 HyperTransport Interrupt Vector Controller. |
|---|
| 575 | + |
|---|
| 576 | +config LOONGSON_PCH_PIC |
|---|
| 577 | + bool "Loongson PCH PIC Controller" |
|---|
| 578 | + depends on MACH_LOONGSON64 || COMPILE_TEST |
|---|
| 579 | + default MACH_LOONGSON64 |
|---|
| 580 | + select IRQ_DOMAIN_HIERARCHY |
|---|
| 581 | + select IRQ_FASTEOI_HIERARCHY_HANDLERS |
|---|
| 582 | + help |
|---|
| 583 | + Support for the Loongson PCH PIC Controller. |
|---|
| 584 | + |
|---|
| 585 | +config LOONGSON_PCH_MSI |
|---|
| 586 | + bool "Loongson PCH MSI Controller" |
|---|
| 587 | + depends on MACH_LOONGSON64 || COMPILE_TEST |
|---|
| 588 | + depends on PCI |
|---|
| 589 | + default MACH_LOONGSON64 |
|---|
| 590 | + select IRQ_DOMAIN_HIERARCHY |
|---|
| 591 | + select PCI_MSI |
|---|
| 592 | + help |
|---|
| 593 | + Support for the Loongson PCH MSI Controller. |
|---|
| 594 | + |
|---|
| 595 | +config MST_IRQ |
|---|
| 596 | + bool "MStar Interrupt Controller" |
|---|
| 597 | + depends on ARCH_MEDIATEK || ARCH_MSTARV7 || COMPILE_TEST |
|---|
| 598 | + default ARCH_MEDIATEK |
|---|
| 599 | + select IRQ_DOMAIN |
|---|
| 600 | + select IRQ_DOMAIN_HIERARCHY |
|---|
| 601 | + help |
|---|
| 602 | + Support MStar Interrupt Controller. |
|---|
| 603 | + |
|---|
| 387 | 604 | endmenu |
|---|