xref: /linux/kernel/irq/Kconfig (revision c940e01c94e73a2a5318f1b82038e0746aaec753)
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
8*c940e01cSThomas Gleixner# Legacy support, required for itanic
9*c940e01cSThomas Gleixnerconfig GENERIC_IRQ_LEGACY
10*c940e01cSThomas Gleixner       bool
11*c940e01cSThomas 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
33c68fd4f3SThomas Gleixner# Alpha specific irq affinity mechanism
34d9817ebeSThomas Gleixnerconfig AUTO_IRQ_AFFINITY
35fd4afaf3SJan Beulich       bool
36d9817ebeSThomas Gleixner
37c68fd4f3SThomas Gleixner# Tasklet based software resend for pending interrupts on enable_irq()
38d9817ebeSThomas Gleixnerconfig HARDIRQS_SW_RESEND
39fd4afaf3SJan Beulich       bool
40d9817ebeSThomas Gleixner
41c68fd4f3SThomas Gleixner# Preflow handler support for fasteoi (sparc64)
4278129576SThomas Gleixnerconfig IRQ_PREFLOW_FASTEOI
43fd4afaf3SJan Beulich       bool
4478129576SThomas Gleixner
450521c8fbSThomas Gleixner# Edge style eoi based handler (cell)
460521c8fbSThomas Gleixnerconfig IRQ_EDGE_EOI_HANDLER
470521c8fbSThomas Gleixner       bool
480521c8fbSThomas Gleixner
49c42321c7SThomas Gleixner# Generic configurable interrupt chip implementation
50c42321c7SThomas Gleixnerconfig GENERIC_IRQ_CHIP
51c42321c7SThomas Gleixner       bool
52923fa4eaSNitin A Kamble       select IRQ_DOMAIN
53c42321c7SThomas Gleixner
5408a543adSGrant Likely# Generic irq_domain hw <--> linux irq number translation
5508a543adSGrant Likelyconfig IRQ_DOMAIN
5608a543adSGrant Likely	bool
5708a543adSGrant Likely
58092b2fb0SGrant Likelyconfig IRQ_DOMAIN_DEBUG
59092b2fb0SGrant Likely	bool "Expose hardware/virtual IRQ mapping via debugfs"
60092b2fb0SGrant Likely	depends on IRQ_DOMAIN && DEBUG_FS
61092b2fb0SGrant Likely	help
62092b2fb0SGrant Likely	  This option will show the mapping relationship between hardware irq
63092b2fb0SGrant Likely	  numbers and Linux irq numbers. The mapping is exposed via debugfs
64ac5830a3SMika Westerberg	  in the file "irq_domain_mapping".
65092b2fb0SGrant Likely
66092b2fb0SGrant Likely	  If you don't know what this means you don't need it.
67092b2fb0SGrant Likely
68c68fd4f3SThomas Gleixner# Support forced irq threading
698d32a307SThomas Gleixnerconfig IRQ_FORCED_THREADING
708d32a307SThomas Gleixner       bool
718d32a307SThomas Gleixner
72d9817ebeSThomas Gleixnerconfig SPARSE_IRQ
732ed86b16SRob Herring	bool "Support sparse irq numbering" if MAY_HAVE_SPARSE_IRQ
74d9817ebeSThomas Gleixner	---help---
75d9817ebeSThomas Gleixner
76d9817ebeSThomas Gleixner	  Sparse irq numbering is useful for distro kernels that want
77d9817ebeSThomas Gleixner	  to define a high CONFIG_NR_CPUS value but still want to have
78d9817ebeSThomas Gleixner	  low kernel memory footprint on smaller machines.
79d9817ebeSThomas Gleixner
80d9817ebeSThomas Gleixner	  ( Sparse irqs can also be beneficial on NUMA boxes, as they spread
81d9817ebeSThomas Gleixner	    out the interrupt descriptors in a more NUMA-friendly way. )
82d9817ebeSThomas Gleixner
83d9817ebeSThomas Gleixner	  If you don't know what to do here, say N.
84d9817ebeSThomas Gleixner
85d9817ebeSThomas Gleixnerendmenu
86