File Index
Files and directories
Sign in
FILE

Kconfig

File preview with syntax highlighting.

linux-6.19.14/kernel/irq/Kconfig KCONFIG
  1# SPDX-License-Identifier: GPL-2.0-only
  2menu "IRQ subsystem"
  3# Options selectable by the architecture code
  4
  5# Make sparse irq Kconfig switch below available
  6config MAY_HAVE_SPARSE_IRQ
  7       bool
  8
  9# Enable the generic irq autoprobe mechanism
 10config GENERIC_IRQ_PROBE
 11	bool
 12
 13# Use the generic /proc/interrupts implementation
 14config GENERIC_IRQ_SHOW
 15       bool
 16
 17# Print level/edge extra information
 18config GENERIC_IRQ_SHOW_LEVEL
 19       bool
 20
 21# Supports effective affinity mask
 22config GENERIC_IRQ_EFFECTIVE_AFF_MASK
 23       depends on SMP
 24       bool
 25
 26# Support for delayed migration from interrupt context
 27config GENERIC_PENDING_IRQ
 28	bool
 29
 30# Support for generic irq migrating off cpu before the cpu is offline.
 31config GENERIC_IRQ_MIGRATION
 32	bool
 33
 34# Alpha specific irq affinity mechanism
 35config AUTO_IRQ_AFFINITY
 36       bool
 37
 38# Interrupt injection mechanism
 39config GENERIC_IRQ_INJECTION
 40	bool
 41
 42# Tasklet based software resend for pending interrupts on enable_irq()
 43config HARDIRQS_SW_RESEND
 44       bool
 45
 46# Generic configurable interrupt chip implementation
 47config GENERIC_IRQ_CHIP
 48       bool
 49       select IRQ_DOMAIN
 50
 51# Generic irq_domain hw <--> linux irq number translation
 52config IRQ_DOMAIN
 53	bool
 54
 55# Support for simulated interrupts
 56config IRQ_SIM
 57	bool
 58	select IRQ_WORK
 59	select IRQ_DOMAIN
 60
 61# Support for hierarchical irq domains
 62config IRQ_DOMAIN_HIERARCHY
 63	bool
 64	select IRQ_DOMAIN
 65
 66# Support for obsolete non-mapping irq domains
 67config IRQ_DOMAIN_NOMAP
 68	bool
 69	select IRQ_DOMAIN
 70
 71# Support for hierarchical fasteoi+edge and fasteoi+level handlers
 72config IRQ_FASTEOI_HIERARCHY_HANDLERS
 73	bool
 74
 75# Generic IRQ IPI support
 76config GENERIC_IRQ_IPI
 77	bool
 78	depends on SMP
 79	select IRQ_DOMAIN_HIERARCHY
 80
 81# Generic IRQ IPI Mux support
 82config GENERIC_IRQ_IPI_MUX
 83	bool
 84	depends on SMP
 85
 86# Generic MSI hierarchical interrupt domain support
 87config GENERIC_MSI_IRQ
 88	bool
 89	select IRQ_DOMAIN_HIERARCHY
 90
 91# irqchip drivers should select this if they call iommu_dma_prepare_msi()
 92config IRQ_MSI_IOMMU
 93	bool
 94
 95config IRQ_TIMINGS
 96	bool
 97
 98config GENERIC_IRQ_MATRIX_ALLOCATOR
 99	bool
100
101config GENERIC_IRQ_RESERVATION_MODE
102	bool
103
104# Snapshot for interrupt statistics
105config GENERIC_IRQ_STAT_SNAPSHOT
106	bool
107
108# Support forced irq threading
109config IRQ_FORCED_THREADING
110       bool
111
112config SPARSE_IRQ
113	bool "Support sparse irq numbering" if MAY_HAVE_SPARSE_IRQ
114	help
115
116	  Sparse irq numbering is useful for distro kernels that want
117	  to define a high CONFIG_NR_CPUS value but still want to have
118	  low kernel memory footprint on smaller machines.
119
120	  ( Sparse irqs can also be beneficial on NUMA boxes, as they spread
121	    out the interrupt descriptors in a more NUMA-friendly way. )
122
123	  If you don't know what to do here, say N.
124
125config GENERIC_IRQ_DEBUGFS
126	bool "Expose irq internals in debugfs"
127	depends on DEBUG_FS
128	select GENERIC_IRQ_INJECTION
129	default n
130	help
131
132	  Exposes internal state information through debugfs. Mostly for
133	  developers and debugging of hard to diagnose interrupt problems.
134
135	  If you don't know what to do here, say N.
136
137# Clear forwarded VM interrupts during kexec.
138# This option ensures the kernel clears active states for interrupts
139# forwarded to virtual machines (VMs) during a machine kexec.
140config GENERIC_IRQ_KEXEC_CLEAR_VM_FORWARD
141	bool
142
143config IRQ_KUNIT_TEST
144	bool "KUnit tests for IRQ management APIs" if !KUNIT_ALL_TESTS
145	depends on KUNIT=y
146	depends on SPARSE_IRQ
147	default KUNIT_ALL_TESTS
148	select IRQ_DOMAIN
149	imply SMP
150	help
151	  This option enables KUnit tests for the IRQ subsystem API. These are
152	  only for development and testing, not for regular kernel use cases.
153
154	  If unsure, say N.
155
156endmenu
157
158config GENERIC_IRQ_MULTI_HANDLER
159	bool
160	help
161	  Allow to specify the low level IRQ handler at run time.
162
163# Cavium Octeon is the last system to use this deprecated option
164# Do not even think of enabling this on any new platform
165config DEPRECATED_IRQ_CPU_ONOFFLINE
166	bool
167	depends on CAVIUM_OCTEON_SOC
168	default CAVIUM_OCTEON_SOC
~/ Read-only file preview.