Kconfig 3.2 KB

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