summaryrefslogtreecommitdiff
path: root/kernel/irq/Kconfig
blob: 8d9498e51585c9e870e9ebe6eadc4a0f3a455dc0 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
menu "IRQ subsystem"
# Options selectable by the architecture code

# Make sparse irq Kconfig switch below available
config MAY_HAVE_SPARSE_IRQ
       bool

# Legacy support, required for itanic
config GENERIC_IRQ_LEGACY
       bool

# Enable the generic irq autoprobe mechanism
config GENERIC_IRQ_PROBE
	bool

# Use the generic /proc/interrupts implementation
config GENERIC_IRQ_SHOW
       bool

# Print level/edge extra information
config GENERIC_IRQ_SHOW_LEVEL
       bool

# Facility to allocate a hardware interrupt. This is legacy support
# and should not be used in new code. Use irq domains instead.
config GENERIC_IRQ_LEGACY_ALLOC_HWIRQ
       bool

# Support for delayed migration from interrupt context
config GENERIC_PENDING_IRQ
	bool

# Support for generic irq migrating off cpu before the cpu is offline.
config GENERIC_IRQ_MIGRATION
	bool

# Alpha specific irq affinity mechanism
config AUTO_IRQ_AFFINITY
       bool

# Tasklet based software resend for pending interrupts on enable_irq()
config HARDIRQS_SW_RESEND
       bool

# Preflow handler support for fasteoi (sparc64)
config IRQ_PREFLOW_FASTEOI
       bool

# Edge style eoi based handler (cell)
config IRQ_EDGE_EOI_HANDLER
       bool

# Generic configurable interrupt chip implementation
config GENERIC_IRQ_CHIP
       bool
       select IRQ_DOMAIN

# Generic irq_domain hw <--> linux irq number translation
config IRQ_DOMAIN
	bool

# Support for hierarchical irq domains
config IRQ_DOMAIN_HIERARCHY
	bool
	select IRQ_DOMAIN

# Generic IRQ IPI support
config GENERIC_IRQ_IPI
	bool

# Generic MSI interrupt support
config GENERIC_MSI_IRQ
	bool

# Generic MSI hierarchical interrupt domain support
config GENERIC_MSI_IRQ_DOMAIN
	bool
	select IRQ_DOMAIN_HIERARCHY
	select GENERIC_MSI_IRQ

config HANDLE_DOMAIN_IRQ
	bool

config IRQ_DOMAIN_DEBUG
	bool "Expose hardware/virtual IRQ mapping via debugfs"
	depends on IRQ_DOMAIN && DEBUG_FS
	help
	  This option will show the mapping relationship between hardware irq
	  numbers and Linux irq numbers. The mapping is exposed via debugfs
	  in the file "irq_domain_mapping".

	  If you don't know what this means you don't need it.

# Support forced irq threading
config IRQ_FORCED_THREADING
       bool

config SPARSE_IRQ
	bool "Support sparse irq numbering" if MAY_HAVE_SPARSE_IRQ
	---help---

	  Sparse irq numbering is useful for distro kernels that want
	  to define a high CONFIG_NR_CPUS value but still want to have
	  low kernel memory footprint on smaller machines.

	  ( Sparse irqs can also be beneficial on NUMA boxes, as they spread
	    out the interrupt descriptors in a more NUMA-friendly way. )

	  If you don't know what to do here, say N.

config GENERIC_IRQ_DEBUGFS
	bool "Expose irq internals in debugfs"
	depends on DEBUG_FS
	default n
	---help---

	  Exposes internal state information through debugfs. Mostly for
	  developers and debugging of hard to diagnose interrupt problems.

	  If you don't know what to do here, say N.

endmenu