| .. | .. |
|---|
| 1 | +# SPDX-License-Identifier: GPL-2.0-only |
|---|
| 1 | 2 | menu "IRQ subsystem" |
|---|
| 2 | 3 | # Options selectable by the architecture code |
|---|
| 3 | 4 | |
|---|
| .. | .. |
|---|
| 42 | 43 | config AUTO_IRQ_AFFINITY |
|---|
| 43 | 44 | bool |
|---|
| 44 | 45 | |
|---|
| 46 | +# Interrupt injection mechanism |
|---|
| 47 | +config GENERIC_IRQ_INJECTION |
|---|
| 48 | + bool |
|---|
| 49 | + |
|---|
| 45 | 50 | # Tasklet based software resend for pending interrupts on enable_irq() |
|---|
| 46 | 51 | config HARDIRQS_SW_RESEND |
|---|
| 47 | | - bool |
|---|
| 48 | | - |
|---|
| 49 | | -# Preflow handler support for fasteoi (sparc64) |
|---|
| 50 | | -config IRQ_PREFLOW_FASTEOI |
|---|
| 51 | 52 | bool |
|---|
| 52 | 53 | |
|---|
| 53 | 54 | # Edge style eoi based handler (cell) |
|---|
| .. | .. |
|---|
| 67 | 68 | config IRQ_SIM |
|---|
| 68 | 69 | bool |
|---|
| 69 | 70 | select IRQ_WORK |
|---|
| 71 | + select IRQ_DOMAIN |
|---|
| 70 | 72 | |
|---|
| 71 | 73 | # Support for hierarchical irq domains |
|---|
| 72 | 74 | config IRQ_DOMAIN_HIERARCHY |
|---|
| .. | .. |
|---|
| 80 | 82 | # Generic IRQ IPI support |
|---|
| 81 | 83 | config GENERIC_IRQ_IPI |
|---|
| 82 | 84 | bool |
|---|
| 85 | + depends on SMP |
|---|
| 83 | 86 | select IRQ_DOMAIN_HIERARCHY |
|---|
| 84 | 87 | |
|---|
| 85 | 88 | # Generic MSI interrupt support |
|---|
| .. | .. |
|---|
| 91 | 94 | bool |
|---|
| 92 | 95 | select IRQ_DOMAIN_HIERARCHY |
|---|
| 93 | 96 | select GENERIC_MSI_IRQ |
|---|
| 97 | + |
|---|
| 98 | +config IRQ_MSI_IOMMU |
|---|
| 99 | + bool |
|---|
| 94 | 100 | |
|---|
| 95 | 101 | config HANDLE_DOMAIN_IRQ |
|---|
| 96 | 102 | bool |
|---|
| .. | .. |
|---|
| 104 | 110 | config GENERIC_IRQ_RESERVATION_MODE |
|---|
| 105 | 111 | bool |
|---|
| 106 | 112 | |
|---|
| 113 | +config ARCH_WANTS_IRQ_RAW |
|---|
| 114 | + bool |
|---|
| 115 | + |
|---|
| 107 | 116 | # Support forced irq threading |
|---|
| 108 | 117 | config IRQ_FORCED_THREADING |
|---|
| 109 | 118 | bool |
|---|
| 110 | 119 | |
|---|
| 111 | 120 | config SPARSE_IRQ |
|---|
| 112 | 121 | bool "Support sparse irq numbering" if MAY_HAVE_SPARSE_IRQ |
|---|
| 113 | | - ---help--- |
|---|
| 122 | + help |
|---|
| 114 | 123 | |
|---|
| 115 | 124 | Sparse irq numbering is useful for distro kernels that want |
|---|
| 116 | 125 | to define a high CONFIG_NR_CPUS value but still want to have |
|---|
| .. | .. |
|---|
| 124 | 133 | config GENERIC_IRQ_DEBUGFS |
|---|
| 125 | 134 | bool "Expose irq internals in debugfs" |
|---|
| 126 | 135 | depends on DEBUG_FS |
|---|
| 136 | + select GENERIC_IRQ_INJECTION |
|---|
| 127 | 137 | default n |
|---|
| 128 | | - ---help--- |
|---|
| 138 | + help |
|---|
| 129 | 139 | |
|---|
| 130 | 140 | Exposes internal state information through debugfs. Mostly for |
|---|
| 131 | 141 | developers and debugging of hard to diagnose interrupt problems. |
|---|