Kconfig 3.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152
  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. depends on SMP
  22. bool
  23. # Support for delayed migration from interrupt context
  24. config GENERIC_PENDING_IRQ
  25. bool
  26. # Support for generic irq migrating off cpu before the cpu is offline.
  27. config GENERIC_IRQ_MIGRATION
  28. bool
  29. # Alpha specific irq affinity mechanism
  30. config AUTO_IRQ_AFFINITY
  31. bool
  32. # Interrupt injection mechanism
  33. config GENERIC_IRQ_INJECTION
  34. bool
  35. # Tasklet based software resend for pending interrupts on enable_irq()
  36. config HARDIRQS_SW_RESEND
  37. bool
  38. # Edge style eoi based handler (cell)
  39. config IRQ_EDGE_EOI_HANDLER
  40. bool
  41. # Generic configurable interrupt chip implementation
  42. config GENERIC_IRQ_CHIP
  43. bool
  44. select IRQ_DOMAIN
  45. # Generic irq_domain hw <--> linux irq number translation
  46. config IRQ_DOMAIN
  47. bool
  48. # Support for simulated interrupts
  49. config IRQ_SIM
  50. bool
  51. select IRQ_WORK
  52. select IRQ_DOMAIN
  53. # Support for hierarchical irq domains
  54. config IRQ_DOMAIN_HIERARCHY
  55. bool
  56. select IRQ_DOMAIN
  57. # Support for obsolete non-mapping irq domains
  58. config IRQ_DOMAIN_NOMAP
  59. bool
  60. select IRQ_DOMAIN
  61. # Support for hierarchical fasteoi+edge and fasteoi+level handlers
  62. config IRQ_FASTEOI_HIERARCHY_HANDLERS
  63. bool
  64. # Generic IRQ IPI support
  65. config GENERIC_IRQ_IPI
  66. bool
  67. depends on SMP
  68. select IRQ_DOMAIN_HIERARCHY
  69. # Generic MSI interrupt support
  70. config GENERIC_MSI_IRQ
  71. bool
  72. # Generic MSI hierarchical interrupt domain support
  73. config GENERIC_MSI_IRQ_DOMAIN
  74. bool
  75. select IRQ_DOMAIN_HIERARCHY
  76. select GENERIC_MSI_IRQ
  77. config IRQ_MSI_IOMMU
  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. # Support forced irq threading
  86. config IRQ_FORCED_THREADING
  87. bool
  88. config SPARSE_IRQ
  89. bool "Support sparse irq numbering" if MAY_HAVE_SPARSE_IRQ
  90. help
  91. Sparse irq numbering is useful for distro kernels that want
  92. to define a high CONFIG_NR_CPUS value but still want to have
  93. low kernel memory footprint on smaller machines.
  94. ( Sparse irqs can also be beneficial on NUMA boxes, as they spread
  95. out the interrupt descriptors in a more NUMA-friendly way. )
  96. If you don't know what to do here, say N.
  97. config GENERIC_IRQ_DEBUGFS
  98. bool "Expose irq internals in debugfs"
  99. depends on DEBUG_FS
  100. select GENERIC_IRQ_INJECTION
  101. default n
  102. help
  103. Exposes internal state information through debugfs. Mostly for
  104. developers and debugging of hard to diagnose interrupt problems.
  105. If you don't know what to do here, say N.
  106. endmenu
  107. config GENERIC_IRQ_MULTI_HANDLER
  108. bool
  109. help
  110. Allow to specify the low level IRQ handler at run time.
  111. # Cavium Octeon is the last system to use this deprecated option
  112. # Do not even think of enabling this on any new platform
  113. config DEPRECATED_IRQ_CPU_ONOFFLINE
  114. bool
  115. depends on CAVIUM_OCTEON_SOC
  116. default CAVIUM_OCTEON_SOC