OSDN Git Service

Merge tag 'dmaengine-fix-5.7-rc4' of git://git.infradead.org/users/vkoul/slave-dma
[tomoyo/tomoyo-test1.git] / kernel / irq / Kconfig
1 # SPDX-License-Identifier: GPL-2.0-only
2 menu "IRQ subsystem"
3 # Options selectable by the architecture code
4
5 # Make sparse irq Kconfig switch below available
6 config MAY_HAVE_SPARSE_IRQ
7        bool
8
9 # Legacy support, required for itanic
10 config GENERIC_IRQ_LEGACY
11        bool
12
13 # Enable the generic irq autoprobe mechanism
14 config GENERIC_IRQ_PROBE
15         bool
16
17 # Use the generic /proc/interrupts implementation
18 config GENERIC_IRQ_SHOW
19        bool
20
21 # Print level/edge extra information
22 config GENERIC_IRQ_SHOW_LEVEL
23        bool
24
25 # Supports effective affinity mask
26 config GENERIC_IRQ_EFFECTIVE_AFF_MASK
27        bool
28
29 # Facility to allocate a hardware interrupt. This is legacy support
30 # and should not be used in new code. Use irq domains instead.
31 config GENERIC_IRQ_LEGACY_ALLOC_HWIRQ
32        bool
33
34 # Support for delayed migration from interrupt context
35 config GENERIC_PENDING_IRQ
36         bool
37
38 # Support for generic irq migrating off cpu before the cpu is offline.
39 config GENERIC_IRQ_MIGRATION
40         bool
41
42 # Alpha specific irq affinity mechanism
43 config AUTO_IRQ_AFFINITY
44        bool
45
46 # Interrupt injection mechanism
47 config GENERIC_IRQ_INJECTION
48         bool
49
50 # Tasklet based software resend for pending interrupts on enable_irq()
51 config HARDIRQS_SW_RESEND
52        bool
53
54 # Preflow handler support for fasteoi (sparc64)
55 config IRQ_PREFLOW_FASTEOI
56        bool
57
58 # Edge style eoi based handler (cell)
59 config IRQ_EDGE_EOI_HANDLER
60        bool
61
62 # Generic configurable interrupt chip implementation
63 config GENERIC_IRQ_CHIP
64        bool
65        select IRQ_DOMAIN
66
67 # Generic irq_domain hw <--> linux irq number translation
68 config IRQ_DOMAIN
69         bool
70
71 # Support for simulated interrupts
72 config IRQ_SIM
73         bool
74         select IRQ_WORK
75
76 # Support for hierarchical irq domains
77 config IRQ_DOMAIN_HIERARCHY
78         bool
79         select IRQ_DOMAIN
80
81 # Support for hierarchical fasteoi+edge and fasteoi+level handlers
82 config IRQ_FASTEOI_HIERARCHY_HANDLERS
83         bool
84
85 # Generic IRQ IPI support
86 config GENERIC_IRQ_IPI
87         bool
88
89 # Generic MSI interrupt support
90 config GENERIC_MSI_IRQ
91         bool
92
93 # Generic MSI hierarchical interrupt domain support
94 config GENERIC_MSI_IRQ_DOMAIN
95         bool
96         select IRQ_DOMAIN_HIERARCHY
97         select GENERIC_MSI_IRQ
98
99 config IRQ_MSI_IOMMU
100         bool
101
102 config HANDLE_DOMAIN_IRQ
103         bool
104
105 config IRQ_TIMINGS
106         bool
107
108 config GENERIC_IRQ_MATRIX_ALLOCATOR
109         bool
110
111 config GENERIC_IRQ_RESERVATION_MODE
112         bool
113
114 # Support forced irq threading
115 config IRQ_FORCED_THREADING
116        bool
117
118 config SPARSE_IRQ
119         bool "Support sparse irq numbering" if MAY_HAVE_SPARSE_IRQ
120         ---help---
121
122           Sparse irq numbering is useful for distro kernels that want
123           to define a high CONFIG_NR_CPUS value but still want to have
124           low kernel memory footprint on smaller machines.
125
126           ( Sparse irqs can also be beneficial on NUMA boxes, as they spread
127             out the interrupt descriptors in a more NUMA-friendly way. )
128
129           If you don't know what to do here, say N.
130
131 config GENERIC_IRQ_DEBUGFS
132         bool "Expose irq internals in debugfs"
133         depends on DEBUG_FS
134         select GENERIC_IRQ_INJECTION
135         default n
136         ---help---
137
138           Exposes internal state information through debugfs. Mostly for
139           developers and debugging of hard to diagnose interrupt problems.
140
141           If you don't know what to do here, say N.
142
143 endmenu
144
145 config GENERIC_IRQ_MULTI_HANDLER
146         bool
147         help
148           Allow to specify the low level IRQ handler at run time.