blob: 4a1fef09f658b894ea5eef6a55cff8f55b97dd0e [file] [log] [blame]
Thomas Gleixnerd9817eb2010-09-27 12:45:59 +00001menu "IRQ subsystem"
Thomas Gleixnerd9817eb2010-09-27 12:45:59 +00002# Options selectable by the architecture code
Thomas Gleixnerc68fd4f2011-03-08 19:52:55 +01003
4# Make sparse irq Kconfig switch below available
Rob Herring2ed86b12012-01-25 20:02:40 -06005config MAY_HAVE_SPARSE_IRQ
Jan Beulichfd4afaf2011-02-17 13:39:05 +00006 bool
Thomas Gleixnerd9817eb2010-09-27 12:45:59 +00007
Thomas Gleixnerc68fd4f2011-03-08 19:52:55 +01008# Enable the generic irq autoprobe mechanism
Thomas Gleixnerd9817eb2010-09-27 12:45:59 +00009config GENERIC_IRQ_PROBE
Jan Beulichfd4afaf2011-02-17 13:39:05 +000010 bool
Thomas Gleixnerd9817eb2010-09-27 12:45:59 +000011
Thomas Gleixnerc68fd4f2011-03-08 19:52:55 +010012# Use the generic /proc/interrupts implementation
Thomas Gleixnerc78b9b62010-12-16 17:21:47 +010013config GENERIC_IRQ_SHOW
Jan Beulichfd4afaf2011-02-17 13:39:05 +000014 bool
Thomas Gleixnerc78b9b62010-12-16 17:21:47 +010015
Thomas Gleixnerab7798f2011-03-25 16:48:50 +010016# Print level/edge extra information
17config GENERIC_IRQ_SHOW_LEVEL
18 bool
19
Thomas Gleixnerc68fd4f2011-03-08 19:52:55 +010020# Support for delayed migration from interrupt context
Thomas Gleixnerd9817eb2010-09-27 12:45:59 +000021config GENERIC_PENDING_IRQ
Jan Beulichfd4afaf2011-02-17 13:39:05 +000022 bool
Thomas Gleixnerd9817eb2010-09-27 12:45:59 +000023
Thomas Gleixnerc68fd4f2011-03-08 19:52:55 +010024# Alpha specific irq affinity mechanism
Thomas Gleixnerd9817eb2010-09-27 12:45:59 +000025config AUTO_IRQ_AFFINITY
Jan Beulichfd4afaf2011-02-17 13:39:05 +000026 bool
Thomas Gleixnerd9817eb2010-09-27 12:45:59 +000027
Thomas Gleixnerc68fd4f2011-03-08 19:52:55 +010028# Tasklet based software resend for pending interrupts on enable_irq()
Thomas Gleixnerd9817eb2010-09-27 12:45:59 +000029config HARDIRQS_SW_RESEND
Jan Beulichfd4afaf2011-02-17 13:39:05 +000030 bool
Thomas Gleixnerd9817eb2010-09-27 12:45:59 +000031
Thomas Gleixnerc68fd4f2011-03-08 19:52:55 +010032# Preflow handler support for fasteoi (sparc64)
Thomas Gleixner78129572011-02-10 15:14:20 +010033config IRQ_PREFLOW_FASTEOI
Jan Beulichfd4afaf2011-02-17 13:39:05 +000034 bool
Thomas Gleixner78129572011-02-10 15:14:20 +010035
Thomas Gleixner0521c8f2011-03-28 16:13:24 +020036# Edge style eoi based handler (cell)
37config IRQ_EDGE_EOI_HANDLER
38 bool
39
Thomas Gleixnerc42321c2011-05-02 18:16:22 +020040# Generic configurable interrupt chip implementation
41config GENERIC_IRQ_CHIP
42 bool
43
Grant Likely08a543a2011-07-26 03:19:06 -060044# Generic irq_domain hw <--> linux irq number translation
45config IRQ_DOMAIN
46 bool
47
Grant Likely092b2fb2012-03-29 14:10:30 -060048config IRQ_DOMAIN_DEBUG
49 bool "Expose hardware/virtual IRQ mapping via debugfs"
50 depends on IRQ_DOMAIN && DEBUG_FS
51 help
52 This option will show the mapping relationship between hardware irq
53 numbers and Linux irq numbers. The mapping is exposed via debugfs
Mika Westerbergac5830a2012-04-10 15:25:42 +030054 in the file "irq_domain_mapping".
Grant Likely092b2fb2012-03-29 14:10:30 -060055
56 If you don't know what this means you don't need it.
57
Thomas Gleixnerc68fd4f2011-03-08 19:52:55 +010058# Support forced irq threading
Thomas Gleixner8d32a302011-02-23 23:52:23 +000059config IRQ_FORCED_THREADING
60 bool
61
Thomas Gleixnerd9817eb2010-09-27 12:45:59 +000062config SPARSE_IRQ
Rob Herring2ed86b12012-01-25 20:02:40 -060063 bool "Support sparse irq numbering" if MAY_HAVE_SPARSE_IRQ
Thomas Gleixnerd9817eb2010-09-27 12:45:59 +000064 ---help---
65
66 Sparse irq numbering is useful for distro kernels that want
67 to define a high CONFIG_NR_CPUS value but still want to have
68 low kernel memory footprint on smaller machines.
69
70 ( Sparse irqs can also be beneficial on NUMA boxes, as they spread
71 out the interrupt descriptors in a more NUMA-friendly way. )
72
73 If you don't know what to do here, say N.
74
75endmenu