1d9817ebeSThomas Gleixnermenu "IRQ subsystem" 2d9817ebeSThomas Gleixner# Options selectable by the architecture code 3c68fd4f3SThomas Gleixner 4c68fd4f3SThomas Gleixner# Make sparse irq Kconfig switch below available 52ed86b16SRob Herringconfig MAY_HAVE_SPARSE_IRQ 6fd4afaf3SJan Beulich bool 7d9817ebeSThomas Gleixner 8c940e01cSThomas Gleixner# Legacy support, required for itanic 9c940e01cSThomas Gleixnerconfig GENERIC_IRQ_LEGACY 10c940e01cSThomas Gleixner bool 11c940e01cSThomas Gleixner 12c68fd4f3SThomas Gleixner# Enable the generic irq autoprobe mechanism 13d9817ebeSThomas Gleixnerconfig GENERIC_IRQ_PROBE 14fd4afaf3SJan Beulich bool 15d9817ebeSThomas Gleixner 16c68fd4f3SThomas Gleixner# Use the generic /proc/interrupts implementation 17c78b9b65SThomas Gleixnerconfig GENERIC_IRQ_SHOW 18fd4afaf3SJan Beulich bool 19c78b9b65SThomas Gleixner 20ab7798ffSThomas Gleixner# Print level/edge extra information 21ab7798ffSThomas Gleixnerconfig GENERIC_IRQ_SHOW_LEVEL 22ab7798ffSThomas Gleixner bool 23ab7798ffSThomas Gleixner 247b6ef126SThomas Gleixner# Facility to allocate a hardware interrupt. This is legacy support 257b6ef126SThomas Gleixner# and should not be used in new code. Use irq domains instead. 267b6ef126SThomas Gleixnerconfig GENERIC_IRQ_LEGACY_ALLOC_HWIRQ 277b6ef126SThomas Gleixner bool 287b6ef126SThomas Gleixner 29c68fd4f3SThomas Gleixner# Support for delayed migration from interrupt context 30d9817ebeSThomas Gleixnerconfig GENERIC_PENDING_IRQ 31fd4afaf3SJan Beulich bool 32d9817ebeSThomas Gleixner 33f1e0bb0aSYang Yingliang# Support for generic irq migrating off cpu before the cpu is offline. 34f1e0bb0aSYang Yingliangconfig GENERIC_IRQ_MIGRATION 35f1e0bb0aSYang Yingliang bool 36f1e0bb0aSYang Yingliang 37c68fd4f3SThomas Gleixner# Alpha specific irq affinity mechanism 38d9817ebeSThomas Gleixnerconfig AUTO_IRQ_AFFINITY 39fd4afaf3SJan Beulich bool 40d9817ebeSThomas Gleixner 41c68fd4f3SThomas Gleixner# Tasklet based software resend for pending interrupts on enable_irq() 42d9817ebeSThomas Gleixnerconfig HARDIRQS_SW_RESEND 43fd4afaf3SJan Beulich bool 44d9817ebeSThomas Gleixner 45c68fd4f3SThomas Gleixner# Preflow handler support for fasteoi (sparc64) 4678129576SThomas Gleixnerconfig IRQ_PREFLOW_FASTEOI 47fd4afaf3SJan Beulich bool 4878129576SThomas Gleixner 490521c8fbSThomas Gleixner# Edge style eoi based handler (cell) 500521c8fbSThomas Gleixnerconfig IRQ_EDGE_EOI_HANDLER 510521c8fbSThomas Gleixner bool 520521c8fbSThomas Gleixner 53c42321c7SThomas Gleixner# Generic configurable interrupt chip implementation 54c42321c7SThomas Gleixnerconfig GENERIC_IRQ_CHIP 55c42321c7SThomas Gleixner bool 56923fa4eaSNitin A Kamble select IRQ_DOMAIN 57c42321c7SThomas Gleixner 5808a543adSGrant Likely# Generic irq_domain hw <--> linux irq number translation 5908a543adSGrant Likelyconfig IRQ_DOMAIN 6008a543adSGrant Likely bool 6108a543adSGrant Likely 62f8264e34SJiang Liu# Support for hierarchical irq domains 63f8264e34SJiang Liuconfig IRQ_DOMAIN_HIERARCHY 64f8264e34SJiang Liu bool 65f8264e34SJiang Liu select IRQ_DOMAIN 66f8264e34SJiang Liu 67379b6564SQais Yousef# Generic IRQ IPI support 68379b6564SQais Yousefconfig GENERIC_IRQ_IPI 69379b6564SQais Yousef bool 70379b6564SQais Yousef 71f3cf8bb0SJiang Liu# Generic MSI interrupt support 72f3cf8bb0SJiang Liuconfig GENERIC_MSI_IRQ 73f3cf8bb0SJiang Liu bool 74f3cf8bb0SJiang Liu 75f3cf8bb0SJiang Liu# Generic MSI hierarchical interrupt domain support 76f3cf8bb0SJiang Liuconfig GENERIC_MSI_IRQ_DOMAIN 77f3cf8bb0SJiang Liu bool 78f3cf8bb0SJiang Liu select IRQ_DOMAIN_HIERARCHY 79f3cf8bb0SJiang Liu select GENERIC_MSI_IRQ 80f3cf8bb0SJiang Liu 8176ba59f8SMarc Zyngierconfig HANDLE_DOMAIN_IRQ 8276ba59f8SMarc Zyngier bool 8376ba59f8SMarc Zyngier 84092b2fb0SGrant Likelyconfig IRQ_DOMAIN_DEBUG 85092b2fb0SGrant Likely bool "Expose hardware/virtual IRQ mapping via debugfs" 86092b2fb0SGrant Likely depends on IRQ_DOMAIN && DEBUG_FS 87092b2fb0SGrant Likely help 88092b2fb0SGrant Likely This option will show the mapping relationship between hardware irq 89092b2fb0SGrant Likely numbers and Linux irq numbers. The mapping is exposed via debugfs 90ac5830a3SMika Westerberg in the file "irq_domain_mapping". 91092b2fb0SGrant Likely 92092b2fb0SGrant Likely If you don't know what this means you don't need it. 93092b2fb0SGrant Likely 94c68fd4f3SThomas Gleixner# Support forced irq threading 958d32a307SThomas Gleixnerconfig IRQ_FORCED_THREADING 968d32a307SThomas Gleixner bool 978d32a307SThomas Gleixner 98d9817ebeSThomas Gleixnerconfig SPARSE_IRQ 992ed86b16SRob Herring bool "Support sparse irq numbering" if MAY_HAVE_SPARSE_IRQ 100d9817ebeSThomas Gleixner ---help--- 101d9817ebeSThomas Gleixner 102d9817ebeSThomas Gleixner Sparse irq numbering is useful for distro kernels that want 103d9817ebeSThomas Gleixner to define a high CONFIG_NR_CPUS value but still want to have 104d9817ebeSThomas Gleixner low kernel memory footprint on smaller machines. 105d9817ebeSThomas Gleixner 106d9817ebeSThomas Gleixner ( Sparse irqs can also be beneficial on NUMA boxes, as they spread 107d9817ebeSThomas Gleixner out the interrupt descriptors in a more NUMA-friendly way. ) 108d9817ebeSThomas Gleixner 109d9817ebeSThomas Gleixner If you don't know what to do here, say N. 110d9817ebeSThomas Gleixner 111*087cdfb6SThomas Gleixnerconfig GENERIC_IRQ_DEBUGFS 112*087cdfb6SThomas Gleixner bool "Expose irq internals in debugfs" 113*087cdfb6SThomas Gleixner depends on DEBUG_FS 114*087cdfb6SThomas Gleixner default n 115*087cdfb6SThomas Gleixner ---help--- 116*087cdfb6SThomas Gleixner 117*087cdfb6SThomas Gleixner Exposes internal state information through debugfs. Mostly for 118*087cdfb6SThomas Gleixner developers and debugging of hard to diagnose interrupt problems. 119*087cdfb6SThomas Gleixner 120*087cdfb6SThomas Gleixner If you don't know what to do here, say N. 121*087cdfb6SThomas Gleixner 122d9817ebeSThomas Gleixnerendmenu 123