aboutsummaryrefslogtreecommitdiffstats
path: root/drivers
diff options
context:
space:
mode:
authorMartin Schwidefsky <schwidefsky@de.ibm.com>2013-08-30 03:39:53 -0400
committerMartin Schwidefsky <schwidefsky@de.ibm.com>2013-09-13 09:09:52 -0400
commit0244ad004a54e39308d495fee0a2e637f8b5c317 (patch)
treeb59152dc7cf57e7ffb9c8388ae9095e665406633 /drivers
parent5a7d8a28080caed7fd4cb1b81d092adac4445e8e (diff)
Remove GENERIC_HARDIRQ config option
After the last architecture switched to generic hard irqs the config options HAVE_GENERIC_HARDIRQS & GENERIC_HARDIRQS and the related code for !CONFIG_GENERIC_HARDIRQS can be removed. Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Diffstat (limited to 'drivers')
-rw-r--r--drivers/block/mtip32xx/Kconfig2
-rw-r--r--drivers/char/random.c5
-rw-r--r--drivers/dma/dw/Kconfig1
-rw-r--r--drivers/gpio/Kconfig6
-rw-r--r--drivers/hid/Kconfig2
-rw-r--r--drivers/i2c/Kconfig1
-rw-r--r--drivers/i2c/busses/Kconfig6
-rw-r--r--drivers/iio/Kconfig1
-rw-r--r--drivers/infiniband/hw/qib/Kconfig2
-rw-r--r--drivers/input/keyboard/Kconfig4
-rw-r--r--drivers/input/serio/Kconfig1
-rw-r--r--drivers/input/touchscreen/Kconfig4
-rw-r--r--drivers/media/platform/Kconfig2
-rw-r--r--drivers/media/radio/Kconfig2
-rw-r--r--drivers/mfd/Kconfig126
-rw-r--r--drivers/misc/cb710/Kconfig2
-rw-r--r--drivers/mmc/host/Kconfig2
-rw-r--r--drivers/net/ethernet/cadence/Kconfig2
-rw-r--r--drivers/net/wireless/p54/Kconfig2
-rw-r--r--drivers/net/wireless/ti/wl1251/Kconfig2
-rw-r--r--drivers/net/wireless/ti/wlcore/Kconfig2
-rw-r--r--drivers/pci/msi.c22
-rw-r--r--drivers/power/Kconfig3
-rw-r--r--drivers/pps/clients/Kconfig2
-rw-r--r--drivers/spi/Kconfig3
-rw-r--r--drivers/tty/serial/Kconfig2
-rw-r--r--drivers/usb/dwc3/Kconfig2
-rw-r--r--drivers/usb/gadget/Kconfig4
-rw-r--r--drivers/usb/host/Kconfig1
-rw-r--r--drivers/usb/musb/Kconfig1
-rw-r--r--drivers/usb/renesas_usbhs/Kconfig2
-rw-r--r--drivers/w1/masters/Kconfig2
32 files changed, 90 insertions, 131 deletions
diff --git a/drivers/block/mtip32xx/Kconfig b/drivers/block/mtip32xx/Kconfig
index 1fca1f996b45..0ba837fc62a8 100644
--- a/drivers/block/mtip32xx/Kconfig
+++ b/drivers/block/mtip32xx/Kconfig
@@ -4,6 +4,6 @@
4 4
5config BLK_DEV_PCIESSD_MTIP32XX 5config BLK_DEV_PCIESSD_MTIP32XX
6 tristate "Block Device Driver for Micron PCIe SSDs" 6 tristate "Block Device Driver for Micron PCIe SSDs"
7 depends on PCI && GENERIC_HARDIRQS 7 depends on PCI
8 help 8 help
9 This enables the block driver for Micron PCIe SSDs. 9 This enables the block driver for Micron PCIe SSDs.
diff --git a/drivers/char/random.c b/drivers/char/random.c
index 0d91fe52f3f5..7737b5bd26af 100644
--- a/drivers/char/random.c
+++ b/drivers/char/random.c
@@ -255,10 +255,7 @@
255#include <linux/fips.h> 255#include <linux/fips.h>
256#include <linux/ptrace.h> 256#include <linux/ptrace.h>
257#include <linux/kmemcheck.h> 257#include <linux/kmemcheck.h>
258 258#include <linux/irq.h>
259#ifdef CONFIG_GENERIC_HARDIRQS
260# include <linux/irq.h>
261#endif
262 259
263#include <asm/processor.h> 260#include <asm/processor.h>
264#include <asm/uaccess.h> 261#include <asm/uaccess.h>
diff --git a/drivers/dma/dw/Kconfig b/drivers/dma/dw/Kconfig
index dde13248b681..dcfe964cc8dc 100644
--- a/drivers/dma/dw/Kconfig
+++ b/drivers/dma/dw/Kconfig
@@ -4,7 +4,6 @@
4 4
5config DW_DMAC_CORE 5config DW_DMAC_CORE
6 tristate "Synopsys DesignWare AHB DMA support" 6 tristate "Synopsys DesignWare AHB DMA support"
7 depends on GENERIC_HARDIRQS
8 select DMA_ENGINE 7 select DMA_ENGINE
9 8
10config DW_DMAC 9config DW_DMAC
diff --git a/drivers/gpio/Kconfig b/drivers/gpio/Kconfig
index 5cb218151c9c..b6ed304863eb 100644
--- a/drivers/gpio/Kconfig
+++ b/drivers/gpio/Kconfig
@@ -322,7 +322,7 @@ config GPIO_ICH
322 322
323config GPIO_VX855 323config GPIO_VX855
324 tristate "VIA VX855/VX875 GPIO" 324 tristate "VIA VX855/VX875 GPIO"
325 depends on PCI && GENERIC_HARDIRQS 325 depends on PCI
326 select MFD_CORE 326 select MFD_CORE
327 select MFD_VX855 327 select MFD_VX855
328 help 328 help
@@ -396,7 +396,7 @@ config GPIO_MAX732X
396 396
397config GPIO_MAX732X_IRQ 397config GPIO_MAX732X_IRQ
398 bool "Interrupt controller support for MAX732x" 398 bool "Interrupt controller support for MAX732x"
399 depends on GPIO_MAX732X=y && GENERIC_HARDIRQS 399 depends on GPIO_MAX732X=y
400 help 400 help
401 Say yes here to enable the max732x to be used as an interrupt 401 Say yes here to enable the max732x to be used as an interrupt
402 controller. It requires the driver to be built in the kernel. 402 controller. It requires the driver to be built in the kernel.
@@ -661,7 +661,7 @@ config GPIO_TIMBERDALE
661 661
662config GPIO_RDC321X 662config GPIO_RDC321X
663 tristate "RDC R-321x GPIO support" 663 tristate "RDC R-321x GPIO support"
664 depends on PCI && GENERIC_HARDIRQS 664 depends on PCI
665 select MFD_CORE 665 select MFD_CORE
666 select MFD_RDC321X 666 select MFD_RDC321X
667 help 667 help
diff --git a/drivers/hid/Kconfig b/drivers/hid/Kconfig
index 3d7c9f67b6d7..71b70e3a7a71 100644
--- a/drivers/hid/Kconfig
+++ b/drivers/hid/Kconfig
@@ -773,7 +773,7 @@ config HID_ZYDACRON
773 773
774config HID_SENSOR_HUB 774config HID_SENSOR_HUB
775 tristate "HID Sensors framework support" 775 tristate "HID Sensors framework support"
776 depends on HID && GENERIC_HARDIRQS 776 depends on HID
777 select MFD_CORE 777 select MFD_CORE
778 default n 778 default n
779 ---help--- 779 ---help---
diff --git a/drivers/i2c/Kconfig b/drivers/i2c/Kconfig
index e380c6eef3af..7b7ea320a258 100644
--- a/drivers/i2c/Kconfig
+++ b/drivers/i2c/Kconfig
@@ -75,7 +75,6 @@ config I2C_HELPER_AUTO
75 75
76config I2C_SMBUS 76config I2C_SMBUS
77 tristate "SMBus-specific protocols" if !I2C_HELPER_AUTO 77 tristate "SMBus-specific protocols" if !I2C_HELPER_AUTO
78 depends on GENERIC_HARDIRQS
79 help 78 help
80 Say Y here if you want support for SMBus extensions to the I2C 79 Say Y here if you want support for SMBus extensions to the I2C
81 specification. At the moment, the only supported extension is 80 specification. At the moment, the only supported extension is
diff --git a/drivers/i2c/busses/Kconfig b/drivers/i2c/busses/Kconfig
index fcdd321f709e..cdcbd8368ed3 100644
--- a/drivers/i2c/busses/Kconfig
+++ b/drivers/i2c/busses/Kconfig
@@ -115,7 +115,7 @@ config I2C_I801
115 115
116config I2C_ISCH 116config I2C_ISCH
117 tristate "Intel SCH SMBus 1.0" 117 tristate "Intel SCH SMBus 1.0"
118 depends on PCI && GENERIC_HARDIRQS 118 depends on PCI
119 select LPC_SCH 119 select LPC_SCH
120 help 120 help
121 Say Y here if you want to use SMBus controller on the Intel SCH 121 Say Y here if you want to use SMBus controller on the Intel SCH
@@ -546,7 +546,6 @@ config I2C_NUC900
546 546
547config I2C_OCORES 547config I2C_OCORES
548 tristate "OpenCores I2C Controller" 548 tristate "OpenCores I2C Controller"
549 depends on GENERIC_HARDIRQS
550 help 549 help
551 If you say yes to this option, support will be included for the 550 If you say yes to this option, support will be included for the
552 OpenCores I2C controller. For details see 551 OpenCores I2C controller. For details see
@@ -791,7 +790,7 @@ config I2C_DIOLAN_U2C
791 790
792config I2C_PARPORT 791config I2C_PARPORT
793 tristate "Parallel port adapter" 792 tristate "Parallel port adapter"
794 depends on PARPORT && GENERIC_HARDIRQS 793 depends on PARPORT
795 select I2C_ALGOBIT 794 select I2C_ALGOBIT
796 select I2C_SMBUS 795 select I2C_SMBUS
797 help 796 help
@@ -816,7 +815,6 @@ config I2C_PARPORT
816 815
817config I2C_PARPORT_LIGHT 816config I2C_PARPORT_LIGHT
818 tristate "Parallel port adapter (light)" 817 tristate "Parallel port adapter (light)"
819 depends on GENERIC_HARDIRQS
820 select I2C_ALGOBIT 818 select I2C_ALGOBIT
821 select I2C_SMBUS 819 select I2C_SMBUS
822 help 820 help
diff --git a/drivers/iio/Kconfig b/drivers/iio/Kconfig
index cbea3271c1b1..90cf0cda50c4 100644
--- a/drivers/iio/Kconfig
+++ b/drivers/iio/Kconfig
@@ -4,7 +4,6 @@
4 4
5menuconfig IIO 5menuconfig IIO
6 tristate "Industrial I/O support" 6 tristate "Industrial I/O support"
7 depends on GENERIC_HARDIRQS
8 help 7 help
9 The industrial I/O subsystem provides a unified framework for 8 The industrial I/O subsystem provides a unified framework for
10 drivers for many different types of embedded sensors using a 9 drivers for many different types of embedded sensors using a
diff --git a/drivers/infiniband/hw/qib/Kconfig b/drivers/infiniband/hw/qib/Kconfig
index d03ca4c1ff25..495be09781b1 100644
--- a/drivers/infiniband/hw/qib/Kconfig
+++ b/drivers/infiniband/hw/qib/Kconfig
@@ -8,7 +8,7 @@ config INFINIBAND_QIB
8 8
9config INFINIBAND_QIB_DCA 9config INFINIBAND_QIB_DCA
10 bool "QIB DCA support" 10 bool "QIB DCA support"
11 depends on INFINIBAND_QIB && DCA && SMP && GENERIC_HARDIRQS && !(INFINIBAND_QIB=y && DCA=m) 11 depends on INFINIBAND_QIB && DCA && SMP && !(INFINIBAND_QIB=y && DCA=m)
12 default y 12 default y
13 ---help--- 13 ---help---
14 Setting this enables DCA support on some Intel chip sets 14 Setting this enables DCA support on some Intel chip sets
diff --git a/drivers/input/keyboard/Kconfig b/drivers/input/keyboard/Kconfig
index 269d4c3658cb..c1edd39bc5ba 100644
--- a/drivers/input/keyboard/Kconfig
+++ b/drivers/input/keyboard/Kconfig
@@ -224,7 +224,7 @@ config KEYBOARD_TCA6416
224 224
225config KEYBOARD_TCA8418 225config KEYBOARD_TCA8418
226 tristate "TCA8418 Keypad Support" 226 tristate "TCA8418 Keypad Support"
227 depends on I2C && GENERIC_HARDIRQS 227 depends on I2C
228 select INPUT_MATRIXKMAP 228 select INPUT_MATRIXKMAP
229 help 229 help
230 This driver implements basic keypad functionality 230 This driver implements basic keypad functionality
@@ -303,7 +303,7 @@ config KEYBOARD_HP7XX
303 303
304config KEYBOARD_LM8323 304config KEYBOARD_LM8323
305 tristate "LM8323 keypad chip" 305 tristate "LM8323 keypad chip"
306 depends on I2C && GENERIC_HARDIRQS 306 depends on I2C
307 depends on LEDS_CLASS 307 depends on LEDS_CLASS
308 help 308 help
309 If you say yes here you get support for the National Semiconductor 309 If you say yes here you get support for the National Semiconductor
diff --git a/drivers/input/serio/Kconfig b/drivers/input/serio/Kconfig
index 1e691a3a79cb..33b3e88fe4a2 100644
--- a/drivers/input/serio/Kconfig
+++ b/drivers/input/serio/Kconfig
@@ -239,7 +239,6 @@ config SERIO_PS2MULT
239 239
240config SERIO_ARC_PS2 240config SERIO_ARC_PS2
241 tristate "ARC PS/2 support" 241 tristate "ARC PS/2 support"
242 depends on GENERIC_HARDIRQS
243 help 242 help
244 Say Y here if you have an ARC FPGA platform with a PS/2 243 Say Y here if you have an ARC FPGA platform with a PS/2
245 controller in it. 244 controller in it.
diff --git a/drivers/input/touchscreen/Kconfig b/drivers/input/touchscreen/Kconfig
index 3b9758b5f4d7..e09ec67957a3 100644
--- a/drivers/input/touchscreen/Kconfig
+++ b/drivers/input/touchscreen/Kconfig
@@ -389,7 +389,7 @@ config TOUCHSCREEN_MCS5000
389 389
390config TOUCHSCREEN_MMS114 390config TOUCHSCREEN_MMS114
391 tristate "MELFAS MMS114 touchscreen" 391 tristate "MELFAS MMS114 touchscreen"
392 depends on I2C && GENERIC_HARDIRQS 392 depends on I2C
393 help 393 help
394 Say Y here if you have the MELFAS MMS114 touchscreen controller 394 Say Y here if you have the MELFAS MMS114 touchscreen controller
395 chip in your system. 395 chip in your system.
@@ -845,7 +845,7 @@ config TOUCHSCREEN_TSC_SERIO
845 845
846config TOUCHSCREEN_TSC2005 846config TOUCHSCREEN_TSC2005
847 tristate "TSC2005 based touchscreens" 847 tristate "TSC2005 based touchscreens"
848 depends on SPI_MASTER && GENERIC_HARDIRQS 848 depends on SPI_MASTER
849 help 849 help
850 Say Y here if you have a TSC2005 based touchscreen. 850 Say Y here if you have a TSC2005 based touchscreen.
851 851
diff --git a/drivers/media/platform/Kconfig b/drivers/media/platform/Kconfig
index 8068d7b64155..c7caf94621b4 100644
--- a/drivers/media/platform/Kconfig
+++ b/drivers/media/platform/Kconfig
@@ -203,7 +203,7 @@ config VIDEO_SAMSUNG_EXYNOS_GSC
203 203
204config VIDEO_SH_VEU 204config VIDEO_SH_VEU
205 tristate "SuperH VEU mem2mem video processing driver" 205 tristate "SuperH VEU mem2mem video processing driver"
206 depends on VIDEO_DEV && VIDEO_V4L2 && GENERIC_HARDIRQS && HAS_DMA 206 depends on VIDEO_DEV && VIDEO_V4L2 && HAS_DMA
207 select VIDEOBUF2_DMA_CONTIG 207 select VIDEOBUF2_DMA_CONTIG
208 select V4L2_MEM2MEM_DEV 208 select V4L2_MEM2MEM_DEV
209 help 209 help
diff --git a/drivers/media/radio/Kconfig b/drivers/media/radio/Kconfig
index 39882ddd2594..6ecdc39bb366 100644
--- a/drivers/media/radio/Kconfig
+++ b/drivers/media/radio/Kconfig
@@ -214,7 +214,7 @@ config RADIO_TIMBERDALE
214 214
215config RADIO_WL1273 215config RADIO_WL1273
216 tristate "Texas Instruments WL1273 I2C FM Radio" 216 tristate "Texas Instruments WL1273 I2C FM Radio"
217 depends on I2C && VIDEO_V4L2 && GENERIC_HARDIRQS 217 depends on I2C && VIDEO_V4L2
218 select MFD_CORE 218 select MFD_CORE
219 select MFD_WL1273_CORE 219 select MFD_WL1273_CORE
220 select FW_LOADER 220 select FW_LOADER
diff --git a/drivers/mfd/Kconfig b/drivers/mfd/Kconfig
index e0e46f50f95d..914c3d142f78 100644
--- a/drivers/mfd/Kconfig
+++ b/drivers/mfd/Kconfig
@@ -23,7 +23,7 @@ config MFD_AS3711
23 select MFD_CORE 23 select MFD_CORE
24 select REGMAP_I2C 24 select REGMAP_I2C
25 select REGMAP_IRQ 25 select REGMAP_IRQ
26 depends on I2C=y && GENERIC_HARDIRQS 26 depends on I2C=y
27 help 27 help
28 Support for the AS3711 PMIC from AMS 28 Support for the AS3711 PMIC from AMS
29 29
@@ -40,7 +40,7 @@ config PMIC_ADP5520
40config MFD_AAT2870_CORE 40config MFD_AAT2870_CORE
41 bool "AnalogicTech AAT2870" 41 bool "AnalogicTech AAT2870"
42 select MFD_CORE 42 select MFD_CORE
43 depends on I2C=y && GPIOLIB && GENERIC_HARDIRQS 43 depends on I2C=y && GPIOLIB
44 help 44 help
45 If you say yes here you get support for the AAT2870. 45 If you say yes here you get support for the AAT2870.
46 This driver provides common support for accessing the device, 46 This driver provides common support for accessing the device,
@@ -78,7 +78,7 @@ config MFD_CROS_EC_SPI
78 78
79config MFD_ASIC3 79config MFD_ASIC3
80 bool "Compaq ASIC3" 80 bool "Compaq ASIC3"
81 depends on GENERIC_HARDIRQS && GPIOLIB && ARM 81 depends on GPIOLIB && ARM
82 select MFD_CORE 82 select MFD_CORE
83 ---help--- 83 ---help---
84 This driver supports the ASIC3 multifunction chip found on many 84 This driver supports the ASIC3 multifunction chip found on many
@@ -104,7 +104,7 @@ config MFD_DA9052_SPI
104 select REGMAP_SPI 104 select REGMAP_SPI
105 select REGMAP_IRQ 105 select REGMAP_IRQ
106 select PMIC_DA9052 106 select PMIC_DA9052
107 depends on SPI_MASTER=y && GENERIC_HARDIRQS 107 depends on SPI_MASTER=y
108 help 108 help
109 Support for the Dialog Semiconductor DA9052 PMIC 109 Support for the Dialog Semiconductor DA9052 PMIC
110 when controlled using SPI. This driver provides common support 110 when controlled using SPI. This driver provides common support
@@ -116,7 +116,7 @@ config MFD_DA9052_I2C
116 select REGMAP_I2C 116 select REGMAP_I2C
117 select REGMAP_IRQ 117 select REGMAP_IRQ
118 select PMIC_DA9052 118 select PMIC_DA9052
119 depends on I2C=y && GENERIC_HARDIRQS 119 depends on I2C=y
120 help 120 help
121 Support for the Dialog Semiconductor DA9052 PMIC 121 Support for the Dialog Semiconductor DA9052 PMIC
122 when controlled using I2C. This driver provides common support 122 when controlled using I2C. This driver provides common support
@@ -128,7 +128,7 @@ config MFD_DA9055
128 select REGMAP_I2C 128 select REGMAP_I2C
129 select REGMAP_IRQ 129 select REGMAP_IRQ
130 select MFD_CORE 130 select MFD_CORE
131 depends on I2C=y && GENERIC_HARDIRQS 131 depends on I2C=y
132 help 132 help
133 Say yes here for support of Dialog Semiconductor DA9055. This is 133 Say yes here for support of Dialog Semiconductor DA9055. This is
134 a Power Management IC. This driver provides common support for 134 a Power Management IC. This driver provides common support for
@@ -144,7 +144,7 @@ config MFD_DA9063
144 select MFD_CORE 144 select MFD_CORE
145 select REGMAP_I2C 145 select REGMAP_I2C
146 select REGMAP_IRQ 146 select REGMAP_IRQ
147 depends on I2C=y && GENERIC_HARDIRQS 147 depends on I2C=y
148 help 148 help
149 Say yes here for support for the Dialog Semiconductor DA9063 PMIC. 149 Say yes here for support for the Dialog Semiconductor DA9063 PMIC.
150 This includes the I2C driver and core APIs. 150 This includes the I2C driver and core APIs.
@@ -156,7 +156,7 @@ config MFD_MC13783
156 156
157config MFD_MC13XXX 157config MFD_MC13XXX
158 tristate 158 tristate
159 depends on (SPI_MASTER || I2C) && GENERIC_HARDIRQS 159 depends on (SPI_MASTER || I2C)
160 select MFD_CORE 160 select MFD_CORE
161 select MFD_MC13783 161 select MFD_MC13783
162 help 162 help
@@ -167,7 +167,7 @@ config MFD_MC13XXX
167 167
168config MFD_MC13XXX_SPI 168config MFD_MC13XXX_SPI
169 tristate "Freescale MC13783 and MC13892 SPI interface" 169 tristate "Freescale MC13783 and MC13892 SPI interface"
170 depends on SPI_MASTER && GENERIC_HARDIRQS 170 depends on SPI_MASTER
171 select REGMAP_SPI 171 select REGMAP_SPI
172 select MFD_MC13XXX 172 select MFD_MC13XXX
173 help 173 help
@@ -175,7 +175,7 @@ config MFD_MC13XXX_SPI
175 175
176config MFD_MC13XXX_I2C 176config MFD_MC13XXX_I2C
177 tristate "Freescale MC13892 I2C interface" 177 tristate "Freescale MC13892 I2C interface"
178 depends on I2C && GENERIC_HARDIRQS 178 depends on I2C
179 select REGMAP_I2C 179 select REGMAP_I2C
180 select MFD_MC13XXX 180 select MFD_MC13XXX
181 help 181 help
@@ -183,7 +183,7 @@ config MFD_MC13XXX_I2C
183 183
184config HTC_EGPIO 184config HTC_EGPIO
185 bool "HTC EGPIO support" 185 bool "HTC EGPIO support"
186 depends on GENERIC_HARDIRQS && GPIOLIB && ARM 186 depends on GPIOLIB && ARM
187 help 187 help
188 This driver supports the CPLD egpio chip present on 188 This driver supports the CPLD egpio chip present on
189 several HTC phones. It provides basic support for input 189 several HTC phones. It provides basic support for input
@@ -192,7 +192,6 @@ config HTC_EGPIO
192config HTC_PASIC3 192config HTC_PASIC3
193 tristate "HTC PASIC3 LED/DS1WM chip support" 193 tristate "HTC PASIC3 LED/DS1WM chip support"
194 select MFD_CORE 194 select MFD_CORE
195 depends on GENERIC_HARDIRQS
196 help 195 help
197 This core driver provides register access for the LED/DS1WM 196 This core driver provides register access for the LED/DS1WM
198 chips labeled "AIC2" and "AIC3", found on HTC Blueangel and 197 chips labeled "AIC2" and "AIC3", found on HTC Blueangel and
@@ -210,7 +209,7 @@ config HTC_I2CPLD
210 209
211config LPC_ICH 210config LPC_ICH
212 tristate "Intel ICH LPC" 211 tristate "Intel ICH LPC"
213 depends on PCI && GENERIC_HARDIRQS 212 depends on PCI
214 select MFD_CORE 213 select MFD_CORE
215 help 214 help
216 The LPC bridge function of the Intel ICH provides support for 215 The LPC bridge function of the Intel ICH provides support for
@@ -220,7 +219,7 @@ config LPC_ICH
220 219
221config LPC_SCH 220config LPC_SCH
222 tristate "Intel SCH LPC" 221 tristate "Intel SCH LPC"
223 depends on PCI && GENERIC_HARDIRQS 222 depends on PCI
224 select MFD_CORE 223 select MFD_CORE
225 help 224 help
226 LPC bridge function of the Intel SCH provides support for 225 LPC bridge function of the Intel SCH provides support for
@@ -238,7 +237,7 @@ config MFD_INTEL_MSIC
238config MFD_JANZ_CMODIO 237config MFD_JANZ_CMODIO
239 tristate "Janz CMOD-IO PCI MODULbus Carrier Board" 238 tristate "Janz CMOD-IO PCI MODULbus Carrier Board"
240 select MFD_CORE 239 select MFD_CORE
241 depends on PCI && GENERIC_HARDIRQS 240 depends on PCI
242 help 241 help
243 This is the core driver for the Janz CMOD-IO PCI MODULbus 242 This is the core driver for the Janz CMOD-IO PCI MODULbus
244 carrier board. This device is a PCI to MODULbus bridge which may 243 carrier board. This device is a PCI to MODULbus bridge which may
@@ -277,7 +276,7 @@ config MFD_KEMPLD
277 276
278config MFD_88PM800 277config MFD_88PM800
279 tristate "Marvell 88PM800" 278 tristate "Marvell 88PM800"
280 depends on I2C=y && GENERIC_HARDIRQS 279 depends on I2C=y
281 select REGMAP_I2C 280 select REGMAP_I2C
282 select REGMAP_IRQ 281 select REGMAP_IRQ
283 select MFD_CORE 282 select MFD_CORE
@@ -289,7 +288,7 @@ config MFD_88PM800
289 288
290config MFD_88PM805 289config MFD_88PM805
291 tristate "Marvell 88PM805" 290 tristate "Marvell 88PM805"
292 depends on I2C=y && GENERIC_HARDIRQS 291 depends on I2C=y
293 select REGMAP_I2C 292 select REGMAP_I2C
294 select REGMAP_IRQ 293 select REGMAP_IRQ
295 select MFD_CORE 294 select MFD_CORE
@@ -301,7 +300,7 @@ config MFD_88PM805
301 300
302config MFD_88PM860X 301config MFD_88PM860X
303 bool "Marvell 88PM8606/88PM8607" 302 bool "Marvell 88PM8606/88PM8607"
304 depends on I2C=y && GENERIC_HARDIRQS 303 depends on I2C=y
305 select REGMAP_I2C 304 select REGMAP_I2C
306 select MFD_CORE 305 select MFD_CORE
307 help 306 help
@@ -312,7 +311,7 @@ config MFD_88PM860X
312 311
313config MFD_MAX77686 312config MFD_MAX77686
314 bool "Maxim Semiconductor MAX77686 PMIC Support" 313 bool "Maxim Semiconductor MAX77686 PMIC Support"
315 depends on I2C=y && GENERIC_HARDIRQS 314 depends on I2C=y
316 select MFD_CORE 315 select MFD_CORE
317 select REGMAP_I2C 316 select REGMAP_I2C
318 select IRQ_DOMAIN 317 select IRQ_DOMAIN
@@ -325,7 +324,7 @@ config MFD_MAX77686
325 324
326config MFD_MAX77693 325config MFD_MAX77693
327 bool "Maxim Semiconductor MAX77693 PMIC Support" 326 bool "Maxim Semiconductor MAX77693 PMIC Support"
328 depends on I2C=y && GENERIC_HARDIRQS 327 depends on I2C=y
329 select MFD_CORE 328 select MFD_CORE
330 select REGMAP_I2C 329 select REGMAP_I2C
331 help 330 help
@@ -339,7 +338,7 @@ config MFD_MAX77693
339config MFD_MAX8907 338config MFD_MAX8907
340 tristate "Maxim Semiconductor MAX8907 PMIC Support" 339 tristate "Maxim Semiconductor MAX8907 PMIC Support"
341 select MFD_CORE 340 select MFD_CORE
342 depends on I2C=y && GENERIC_HARDIRQS 341 depends on I2C=y
343 select REGMAP_I2C 342 select REGMAP_I2C
344 select REGMAP_IRQ 343 select REGMAP_IRQ
345 help 344 help
@@ -350,7 +349,7 @@ config MFD_MAX8907
350 349
351config MFD_MAX8925 350config MFD_MAX8925
352 bool "Maxim Semiconductor MAX8925 PMIC Support" 351 bool "Maxim Semiconductor MAX8925 PMIC Support"
353 depends on I2C=y && GENERIC_HARDIRQS 352 depends on I2C=y
354 select MFD_CORE 353 select MFD_CORE
355 help 354 help
356 Say yes here to support for Maxim Semiconductor MAX8925. This is 355 Say yes here to support for Maxim Semiconductor MAX8925. This is
@@ -360,7 +359,7 @@ config MFD_MAX8925
360 359
361config MFD_MAX8997 360config MFD_MAX8997
362 bool "Maxim Semiconductor MAX8997/8966 PMIC Support" 361 bool "Maxim Semiconductor MAX8997/8966 PMIC Support"
363 depends on I2C=y && GENERIC_HARDIRQS 362 depends on I2C=y
364 select MFD_CORE 363 select MFD_CORE
365 select IRQ_DOMAIN 364 select IRQ_DOMAIN
366 help 365 help
@@ -373,7 +372,7 @@ config MFD_MAX8997
373 372
374config MFD_MAX8998 373config MFD_MAX8998
375 bool "Maxim Semiconductor MAX8998/National LP3974 PMIC Support" 374 bool "Maxim Semiconductor MAX8998/National LP3974 PMIC Support"
376 depends on I2C=y && GENERIC_HARDIRQS 375 depends on I2C=y
377 select MFD_CORE 376 select MFD_CORE
378 select IRQ_DOMAIN 377 select IRQ_DOMAIN
379 help 378 help
@@ -385,7 +384,7 @@ config MFD_MAX8998
385 384
386config EZX_PCAP 385config EZX_PCAP
387 bool "Motorola EZXPCAP Support" 386 bool "Motorola EZXPCAP Support"
388 depends on GENERIC_HARDIRQS && SPI_MASTER 387 depends on SPI_MASTER
389 help 388 help
390 This enables the PCAP ASIC present on EZX Phones. This is 389 This enables the PCAP ASIC present on EZX Phones. This is
391 needed for MMC, TouchScreen, Sound, USB, etc.. 390 needed for MMC, TouchScreen, Sound, USB, etc..
@@ -393,7 +392,7 @@ config EZX_PCAP
393config MFD_VIPERBOARD 392config MFD_VIPERBOARD
394 tristate "Nano River Technologies Viperboard" 393 tristate "Nano River Technologies Viperboard"
395 select MFD_CORE 394 select MFD_CORE
396 depends on USB && GENERIC_HARDIRQS 395 depends on USB
397 default n 396 default n
398 help 397 help
399 Say yes here if you want support for Nano River Technologies 398 Say yes here if you want support for Nano River Technologies
@@ -407,7 +406,7 @@ config MFD_VIPERBOARD
407config MFD_RETU 406config MFD_RETU
408 tristate "Nokia Retu and Tahvo multi-function device" 407 tristate "Nokia Retu and Tahvo multi-function device"
409 select MFD_CORE 408 select MFD_CORE
410 depends on I2C && GENERIC_HARDIRQS 409 depends on I2C
411 select REGMAP_IRQ 410 select REGMAP_IRQ
412 help 411 help
413 Retu and Tahvo are a multi-function devices found on Nokia 412 Retu and Tahvo are a multi-function devices found on Nokia
@@ -480,7 +479,7 @@ config MFD_PM8XXX_IRQ
480config MFD_RDC321X 479config MFD_RDC321X
481 tristate "RDC R-321x southbridge" 480 tristate "RDC R-321x southbridge"
482 select MFD_CORE 481 select MFD_CORE
483 depends on PCI && GENERIC_HARDIRQS 482 depends on PCI
484 help 483 help
485 Say yes here if you want to have support for the RDC R-321x SoC 484 Say yes here if you want to have support for the RDC R-321x SoC
486 southbridge which provides access to GPIOs and Watchdog using the 485 southbridge which provides access to GPIOs and Watchdog using the
@@ -488,7 +487,7 @@ config MFD_RDC321X
488 487
489config MFD_RTSX_PCI 488config MFD_RTSX_PCI
490 tristate "Realtek PCI-E card reader" 489 tristate "Realtek PCI-E card reader"
491 depends on PCI && GENERIC_HARDIRQS 490 depends on PCI
492 select MFD_CORE 491 select MFD_CORE
493 help 492 help
494 This supports for Realtek PCI-Express card reader including rts5209, 493 This supports for Realtek PCI-Express card reader including rts5209,
@@ -498,7 +497,7 @@ config MFD_RTSX_PCI
498 497
499config MFD_RC5T583 498config MFD_RC5T583
500 bool "Ricoh RC5T583 Power Management system device" 499 bool "Ricoh RC5T583 Power Management system device"
501 depends on I2C=y && GENERIC_HARDIRQS 500 depends on I2C=y
502 select MFD_CORE 501 select MFD_CORE
503 select REGMAP_I2C 502 select REGMAP_I2C
504 help 503 help
@@ -512,7 +511,7 @@ config MFD_RC5T583
512 511
513config MFD_SEC_CORE 512config MFD_SEC_CORE
514 bool "SAMSUNG Electronics PMIC Series Support" 513 bool "SAMSUNG Electronics PMIC Series Support"
515 depends on I2C=y && GENERIC_HARDIRQS 514 depends on I2C=y
516 select MFD_CORE 515 select MFD_CORE
517 select REGMAP_I2C 516 select REGMAP_I2C
518 select REGMAP_IRQ 517 select REGMAP_IRQ
@@ -555,7 +554,7 @@ config MFD_SM501_GPIO
555 554
556config MFD_SMSC 555config MFD_SMSC
557 bool "SMSC ECE1099 series chips" 556 bool "SMSC ECE1099 series chips"
558 depends on I2C=y && GENERIC_HARDIRQS 557 depends on I2C=y
559 select MFD_CORE 558 select MFD_CORE
560 select REGMAP_I2C 559 select REGMAP_I2C
561 help 560 help
@@ -577,7 +576,7 @@ config ABX500_CORE
577 576
578config AB3100_CORE 577config AB3100_CORE
579 bool "ST-Ericsson AB3100 Mixed Signal Circuit core functions" 578 bool "ST-Ericsson AB3100 Mixed Signal Circuit core functions"
580 depends on I2C=y && ABX500_CORE && GENERIC_HARDIRQS 579 depends on I2C=y && ABX500_CORE
581 select MFD_CORE 580 select MFD_CORE
582 default y if ARCH_U300 581 default y if ARCH_U300
583 help 582 help
@@ -601,7 +600,7 @@ config AB3100_OTP
601 600
602config AB8500_CORE 601config AB8500_CORE
603 bool "ST-Ericsson AB8500 Mixed Signal Power Management chip" 602 bool "ST-Ericsson AB8500 Mixed Signal Power Management chip"
604 depends on GENERIC_HARDIRQS && ABX500_CORE && MFD_DB8500_PRCMU 603 depends on ABX500_CORE && MFD_DB8500_PRCMU
605 select POWER_SUPPLY 604 select POWER_SUPPLY
606 select MFD_CORE 605 select MFD_CORE
607 select IRQ_DOMAIN 606 select IRQ_DOMAIN
@@ -639,7 +638,7 @@ config MFD_DB8500_PRCMU
639 638
640config MFD_STMPE 639config MFD_STMPE
641 bool "STMicroelectronics STMPE" 640 bool "STMicroelectronics STMPE"
642 depends on (I2C=y || SPI_MASTER=y) && GENERIC_HARDIRQS 641 depends on (I2C=y || SPI_MASTER=y)
643 select MFD_CORE 642 select MFD_CORE
644 help 643 help
645 Support for the STMPE family of I/O Expanders from 644 Support for the STMPE family of I/O Expanders from
@@ -680,7 +679,7 @@ endmenu
680 679
681config MFD_STA2X11 680config MFD_STA2X11
682 bool "STMicroelectronics STA2X11" 681 bool "STMicroelectronics STA2X11"
683 depends on STA2X11 && GENERIC_HARDIRQS 682 depends on STA2X11
684 select MFD_CORE 683 select MFD_CORE
685 select REGMAP_MMIO 684 select REGMAP_MMIO
686 685
@@ -700,7 +699,6 @@ config MFD_TI_AM335X_TSCADC
700 select MFD_CORE 699 select MFD_CORE
701 select REGMAP 700 select REGMAP
702 select REGMAP_MMIO 701 select REGMAP_MMIO
703 depends on GENERIC_HARDIRQS
704 help 702 help
705 If you say yes here you get support for Texas Instruments series 703 If you say yes here you get support for Texas Instruments series
706 of Touch Screen /ADC chips. 704 of Touch Screen /ADC chips.
@@ -717,7 +715,7 @@ config MFD_DM355EVM_MSP
717 715
718config MFD_LP8788 716config MFD_LP8788
719 bool "TI LP8788 Power Management Unit Driver" 717 bool "TI LP8788 Power Management Unit Driver"
720 depends on I2C=y && GENERIC_HARDIRQS 718 depends on I2C=y
721 select MFD_CORE 719 select MFD_CORE
722 select REGMAP_I2C 720 select REGMAP_I2C
723 select IRQ_DOMAIN 721 select IRQ_DOMAIN
@@ -739,14 +737,14 @@ config MFD_PALMAS
739 select MFD_CORE 737 select MFD_CORE
740 select REGMAP_I2C 738 select REGMAP_I2C
741 select REGMAP_IRQ 739 select REGMAP_IRQ
742 depends on I2C=y && GENERIC_HARDIRQS 740 depends on I2C=y
743 help 741 help
744 If you say yes here you get support for the Palmas 742 If you say yes here you get support for the Palmas
745 series of PMIC chips from Texas Instruments. 743 series of PMIC chips from Texas Instruments.
746 744
747config MFD_TI_SSP 745config MFD_TI_SSP
748 tristate "TI Sequencer Serial Port support" 746 tristate "TI Sequencer Serial Port support"
749 depends on ARCH_DAVINCI_TNETV107X && GENERIC_HARDIRQS 747 depends on ARCH_DAVINCI_TNETV107X
750 select MFD_CORE 748 select MFD_CORE
751 ---help--- 749 ---help---
752 Say Y here if you want support for the Sequencer Serial Port 750 Say Y here if you want support for the Sequencer Serial Port
@@ -761,7 +759,6 @@ config TPS6105X
761 select REGULATOR 759 select REGULATOR
762 select MFD_CORE 760 select MFD_CORE
763 select REGULATOR_FIXED_VOLTAGE 761 select REGULATOR_FIXED_VOLTAGE
764 depends on GENERIC_HARDIRQS
765 help 762 help
766 This option enables a driver for the TP61050/TPS61052 763 This option enables a driver for the TP61050/TPS61052
767 high-power "white LED driver". This boost converter is 764 high-power "white LED driver". This boost converter is
@@ -784,7 +781,7 @@ config TPS65010
784config TPS6507X 781config TPS6507X
785 tristate "TI TPS6507x Power Management / Touch Screen chips" 782 tristate "TI TPS6507x Power Management / Touch Screen chips"
786 select MFD_CORE 783 select MFD_CORE
787 depends on I2C && GENERIC_HARDIRQS 784 depends on I2C
788 help 785 help
789 If you say yes here you get support for the TPS6507x series of 786 If you say yes here you get support for the TPS6507x series of
790 Power Management / Touch Screen chips. These include voltage 787 Power Management / Touch Screen chips. These include voltage
@@ -798,7 +795,7 @@ config TPS65911_COMPARATOR
798 795
799config MFD_TPS65090 796config MFD_TPS65090
800 bool "TI TPS65090 Power Management chips" 797 bool "TI TPS65090 Power Management chips"
801 depends on I2C=y && GENERIC_HARDIRQS 798 depends on I2C=y
802 select MFD_CORE 799 select MFD_CORE
803 select REGMAP_I2C 800 select REGMAP_I2C
804 select REGMAP_IRQ 801 select REGMAP_IRQ
@@ -811,7 +808,7 @@ config MFD_TPS65090
811 808
812config MFD_TPS65217 809config MFD_TPS65217
813 tristate "TI TPS65217 Power Management / White LED chips" 810 tristate "TI TPS65217 Power Management / White LED chips"
814 depends on I2C && GENERIC_HARDIRQS 811 depends on I2C
815 select MFD_CORE 812 select MFD_CORE
816 select REGMAP_I2C 813 select REGMAP_I2C
817 help 814 help
@@ -826,7 +823,7 @@ config MFD_TPS65217
826 823
827config MFD_TPS6586X 824config MFD_TPS6586X
828 bool "TI TPS6586x Power Management chips" 825 bool "TI TPS6586x Power Management chips"
829 depends on I2C=y && GENERIC_HARDIRQS 826 depends on I2C=y
830 select MFD_CORE 827 select MFD_CORE
831 select REGMAP_I2C 828 select REGMAP_I2C
832 help 829 help
@@ -841,7 +838,7 @@ config MFD_TPS6586X
841 838
842config MFD_TPS65910 839config MFD_TPS65910
843 bool "TI TPS65910 Power Management chip" 840 bool "TI TPS65910 Power Management chip"
844 depends on I2C=y && GPIOLIB && GENERIC_HARDIRQS 841 depends on I2C=y && GPIOLIB
845 select MFD_CORE 842 select MFD_CORE
846 select REGMAP_I2C 843 select REGMAP_I2C
847 select REGMAP_IRQ 844 select REGMAP_IRQ
@@ -862,7 +859,7 @@ config MFD_TPS65912_I2C
862 bool "TI TPS65912 Power Management chip with I2C" 859 bool "TI TPS65912 Power Management chip with I2C"
863 select MFD_CORE 860 select MFD_CORE
864 select MFD_TPS65912 861 select MFD_TPS65912
865 depends on I2C=y && GPIOLIB && GENERIC_HARDIRQS 862 depends on I2C=y && GPIOLIB
866 help 863 help
867 If you say yes here you get support for the TPS65912 series of 864 If you say yes here you get support for the TPS65912 series of
868 PM chips with I2C interface. 865 PM chips with I2C interface.
@@ -871,14 +868,14 @@ config MFD_TPS65912_SPI
871 bool "TI TPS65912 Power Management chip with SPI" 868 bool "TI TPS65912 Power Management chip with SPI"
872 select MFD_CORE 869 select MFD_CORE
873 select MFD_TPS65912 870 select MFD_TPS65912
874 depends on SPI_MASTER && GPIOLIB && GENERIC_HARDIRQS 871 depends on SPI_MASTER && GPIOLIB
875 help 872 help
876 If you say yes here you get support for the TPS65912 series of 873 If you say yes here you get support for the TPS65912 series of
877 PM chips with SPI interface. 874 PM chips with SPI interface.
878 875
879config MFD_TPS80031 876config MFD_TPS80031
880 bool "TI TPS80031/TPS80032 Power Management chips" 877 bool "TI TPS80031/TPS80032 Power Management chips"
881 depends on I2C=y && GENERIC_HARDIRQS 878 depends on I2C=y
882 select MFD_CORE 879 select MFD_CORE
883 select REGMAP_I2C 880 select REGMAP_I2C
884 select REGMAP_IRQ 881 select REGMAP_IRQ
@@ -892,7 +889,7 @@ config MFD_TPS80031
892 889
893config TWL4030_CORE 890config TWL4030_CORE
894 bool "TI TWL4030/TWL5030/TWL6030/TPS659x0 Support" 891 bool "TI TWL4030/TWL5030/TWL6030/TPS659x0 Support"
895 depends on I2C=y && GENERIC_HARDIRQS 892 depends on I2C=y
896 select IRQ_DOMAIN 893 select IRQ_DOMAIN
897 select REGMAP_I2C 894 select REGMAP_I2C
898 help 895 help
@@ -931,13 +928,13 @@ config TWL4030_POWER
931 928
932config MFD_TWL4030_AUDIO 929config MFD_TWL4030_AUDIO
933 bool "TI TWL4030 Audio" 930 bool "TI TWL4030 Audio"
934 depends on TWL4030_CORE && GENERIC_HARDIRQS 931 depends on TWL4030_CORE
935 select MFD_CORE 932 select MFD_CORE
936 default n 933 default n
937 934
938config TWL6040_CORE 935config TWL6040_CORE
939 bool "TI TWL6040 audio codec" 936 bool "TI TWL6040 audio codec"
940 depends on I2C=y && GENERIC_HARDIRQS 937 depends on I2C=y
941 select MFD_CORE 938 select MFD_CORE
942 select REGMAP_I2C 939 select REGMAP_I2C
943 select REGMAP_IRQ 940 select REGMAP_IRQ
@@ -961,7 +958,7 @@ config MENELAUS
961 958
962config MFD_WL1273_CORE 959config MFD_WL1273_CORE
963 tristate "TI WL1273 FM radio" 960 tristate "TI WL1273 FM radio"
964 depends on I2C && GENERIC_HARDIRQS 961 depends on I2C
965 select MFD_CORE 962 select MFD_CORE
966 default n 963 default n
967 help 964 help
@@ -974,7 +971,6 @@ config MFD_LM3533
974 depends on I2C 971 depends on I2C
975 select MFD_CORE 972 select MFD_CORE
976 select REGMAP_I2C 973 select REGMAP_I2C
977 depends on GENERIC_HARDIRQS
978 help 974 help
979 Say yes here to enable support for National Semiconductor / TI 975 Say yes here to enable support for National Semiconductor / TI
980 LM3533 Lighting Power chips. 976 LM3533 Lighting Power chips.
@@ -996,7 +992,7 @@ config MFD_TIMBERDALE
996 992
997config MFD_TC3589X 993config MFD_TC3589X
998 bool "Toshiba TC35892 and variants" 994 bool "Toshiba TC35892 and variants"
999 depends on I2C=y && GENERIC_HARDIRQS 995 depends on I2C=y
1000 select MFD_CORE 996 select MFD_CORE
1001 help 997 help
1002 Support for the Toshiba TC35892 and variants I/O Expander. 998 Support for the Toshiba TC35892 and variants I/O Expander.
@@ -1011,7 +1007,7 @@ config MFD_TMIO
1011 1007
1012config MFD_T7L66XB 1008config MFD_T7L66XB
1013 bool "Toshiba T7L66XB" 1009 bool "Toshiba T7L66XB"
1014 depends on ARM && HAVE_CLK && GENERIC_HARDIRQS 1010 depends on ARM && HAVE_CLK
1015 select MFD_CORE 1011 select MFD_CORE
1016 select MFD_TMIO 1012 select MFD_TMIO
1017 help 1013 help
@@ -1036,7 +1032,7 @@ config MFD_TC6393XB
1036 1032
1037config MFD_VX855 1033config MFD_VX855
1038 tristate "VIA VX855/VX875 integrated south bridge" 1034 tristate "VIA VX855/VX875 integrated south bridge"
1039 depends on PCI && GENERIC_HARDIRQS 1035 depends on PCI
1040 select MFD_CORE 1036 select MFD_CORE
1041 help 1037 help
1042 Say yes here to enable support for various functions of the 1038 Say yes here to enable support for various functions of the
@@ -1054,7 +1050,7 @@ config MFD_ARIZONA_I2C
1054 select MFD_ARIZONA 1050 select MFD_ARIZONA
1055 select MFD_CORE 1051 select MFD_CORE
1056 select REGMAP_I2C 1052 select REGMAP_I2C
1057 depends on I2C && GENERIC_HARDIRQS 1053 depends on I2C
1058 help 1054 help
1059 Support for the Wolfson Microelectronics Arizona platform audio SoC 1055 Support for the Wolfson Microelectronics Arizona platform audio SoC
1060 core functionality controlled via I2C. 1056 core functionality controlled via I2C.
@@ -1064,7 +1060,7 @@ config MFD_ARIZONA_SPI
1064 select MFD_ARIZONA 1060 select MFD_ARIZONA
1065 select MFD_CORE 1061 select MFD_CORE
1066 select REGMAP_SPI 1062 select REGMAP_SPI
1067 depends on SPI_MASTER && GENERIC_HARDIRQS 1063 depends on SPI_MASTER
1068 help 1064 help
1069 Support for the Wolfson Microelectronics Arizona platform audio SoC 1065 Support for the Wolfson Microelectronics Arizona platform audio SoC
1070 core functionality controlled via I2C. 1066 core functionality controlled via I2C.
@@ -1090,7 +1086,7 @@ config MFD_WM8997
1090config MFD_WM8400 1086config MFD_WM8400
1091 bool "Wolfson Microelectronics WM8400" 1087 bool "Wolfson Microelectronics WM8400"
1092 select MFD_CORE 1088 select MFD_CORE
1093 depends on I2C=y && GENERIC_HARDIRQS 1089 depends on I2C=y
1094 select REGMAP_I2C 1090 select REGMAP_I2C
1095 help 1091 help
1096 Support for the Wolfson Microelecronics WM8400 PMIC and audio 1092 Support for the Wolfson Microelecronics WM8400 PMIC and audio
@@ -1100,7 +1096,6 @@ config MFD_WM8400
1100 1096
1101config MFD_WM831X 1097config MFD_WM831X
1102 bool 1098 bool
1103 depends on GENERIC_HARDIRQS
1104 1099
1105config MFD_WM831X_I2C 1100config MFD_WM831X_I2C
1106 bool "Wolfson Microelectronics WM831x/2x PMICs with I2C" 1101 bool "Wolfson Microelectronics WM831x/2x PMICs with I2C"
@@ -1108,7 +1103,7 @@ config MFD_WM831X_I2C
1108 select MFD_WM831X 1103 select MFD_WM831X
1109 select REGMAP_I2C 1104 select REGMAP_I2C
1110 select IRQ_DOMAIN 1105 select IRQ_DOMAIN
1111 depends on I2C=y && GENERIC_HARDIRQS 1106 depends on I2C=y
1112 help 1107 help
1113 Support for the Wolfson Microelecronics WM831x and WM832x PMICs 1108 Support for the Wolfson Microelecronics WM831x and WM832x PMICs
1114 when controlled using I2C. This driver provides common support 1109 when controlled using I2C. This driver provides common support
@@ -1121,7 +1116,7 @@ config MFD_WM831X_SPI
1121 select MFD_WM831X 1116 select MFD_WM831X
1122 select REGMAP_SPI 1117 select REGMAP_SPI
1123 select IRQ_DOMAIN 1118 select IRQ_DOMAIN
1124 depends on SPI_MASTER && GENERIC_HARDIRQS 1119 depends on SPI_MASTER
1125 help 1120 help
1126 Support for the Wolfson Microelecronics WM831x and WM832x PMICs 1121 Support for the Wolfson Microelecronics WM831x and WM832x PMICs
1127 when controlled using SPI. This driver provides common support 1122 when controlled using SPI. This driver provides common support
@@ -1130,12 +1125,11 @@ config MFD_WM831X_SPI
1130 1125
1131config MFD_WM8350 1126config MFD_WM8350
1132 bool 1127 bool
1133 depends on GENERIC_HARDIRQS
1134 1128
1135config MFD_WM8350_I2C 1129config MFD_WM8350_I2C
1136 bool "Wolfson Microelectronics WM8350 with I2C" 1130 bool "Wolfson Microelectronics WM8350 with I2C"
1137 select MFD_WM8350 1131 select MFD_WM8350
1138 depends on I2C=y && GENERIC_HARDIRQS 1132 depends on I2C=y
1139 help 1133 help
1140 The WM8350 is an integrated audio and power management 1134 The WM8350 is an integrated audio and power management
1141 subsystem with watchdog and RTC functionality for embedded 1135 subsystem with watchdog and RTC functionality for embedded
@@ -1148,7 +1142,7 @@ config MFD_WM8994
1148 select MFD_CORE 1142 select MFD_CORE
1149 select REGMAP_I2C 1143 select REGMAP_I2C
1150 select REGMAP_IRQ 1144 select REGMAP_IRQ
1151 depends on I2C=y && GENERIC_HARDIRQS 1145 depends on I2C=y
1152 help 1146 help
1153 The WM8994 is a highly integrated hi-fi CODEC designed for 1147 The WM8994 is a highly integrated hi-fi CODEC designed for
1154 smartphone applicatiosn. As well as audio functionality it 1148 smartphone applicatiosn. As well as audio functionality it
diff --git a/drivers/misc/cb710/Kconfig b/drivers/misc/cb710/Kconfig
index 5acb9c5b49c4..22429b8b1068 100644
--- a/drivers/misc/cb710/Kconfig
+++ b/drivers/misc/cb710/Kconfig
@@ -1,6 +1,6 @@
1config CB710_CORE 1config CB710_CORE
2 tristate "ENE CB710/720 Flash memory card reader support" 2 tristate "ENE CB710/720 Flash memory card reader support"
3 depends on PCI && GENERIC_HARDIRQS 3 depends on PCI
4 help 4 help
5 This option enables support for PCI ENE CB710/720 Flash memory card 5 This option enables support for PCI ENE CB710/720 Flash memory card
6 reader found in some laptops (ie. some versions of HP Compaq nx9500). 6 reader found in some laptops (ie. some versions of HP Compaq nx9500).
diff --git a/drivers/mmc/host/Kconfig b/drivers/mmc/host/Kconfig
index b7fd5ab80a48..7fc5099e44b2 100644
--- a/drivers/mmc/host/Kconfig
+++ b/drivers/mmc/host/Kconfig
@@ -487,7 +487,7 @@ config MMC_SDHI
487 487
488config MMC_CB710 488config MMC_CB710
489 tristate "ENE CB710 MMC/SD Interface support" 489 tristate "ENE CB710 MMC/SD Interface support"
490 depends on PCI && GENERIC_HARDIRQS 490 depends on PCI
491 select CB710_CORE 491 select CB710_CORE
492 help 492 help
493 This option enables support for MMC/SD part of ENE CB710/720 Flash 493 This option enables support for MMC/SD part of ENE CB710/720 Flash
diff --git a/drivers/net/ethernet/cadence/Kconfig b/drivers/net/ethernet/cadence/Kconfig
index 8030cc0396fd..751d5c7b312d 100644
--- a/drivers/net/ethernet/cadence/Kconfig
+++ b/drivers/net/ethernet/cadence/Kconfig
@@ -22,7 +22,7 @@ if NET_CADENCE
22 22
23config ARM_AT91_ETHER 23config ARM_AT91_ETHER
24 tristate "AT91RM9200 Ethernet support" 24 tristate "AT91RM9200 Ethernet support"
25 depends on GENERIC_HARDIRQS && HAS_DMA 25 depends on HAS_DMA
26 select MACB 26 select MACB
27 ---help--- 27 ---help---
28 If you wish to compile a kernel for the AT91RM9200 and enable 28 If you wish to compile a kernel for the AT91RM9200 and enable
diff --git a/drivers/net/wireless/p54/Kconfig b/drivers/net/wireless/p54/Kconfig
index 15ea36b51a66..cdafb8c73e82 100644
--- a/drivers/net/wireless/p54/Kconfig
+++ b/drivers/net/wireless/p54/Kconfig
@@ -41,7 +41,7 @@ config P54_PCI
41 41
42config P54_SPI 42config P54_SPI
43 tristate "Prism54 SPI (stlc45xx) support" 43 tristate "Prism54 SPI (stlc45xx) support"
44 depends on P54_COMMON && SPI_MASTER && GENERIC_HARDIRQS 44 depends on P54_COMMON && SPI_MASTER
45 ---help--- 45 ---help---
46 This driver is for stlc4550 or stlc4560 based wireless chips 46 This driver is for stlc4550 or stlc4560 based wireless chips
47 such as Nokia's N800/N810 Portable Internet Tablet. 47 such as Nokia's N800/N810 Portable Internet Tablet.
diff --git a/drivers/net/wireless/ti/wl1251/Kconfig b/drivers/net/wireless/ti/wl1251/Kconfig
index 8fec4ed36ac2..477a206c098e 100644
--- a/drivers/net/wireless/ti/wl1251/Kconfig
+++ b/drivers/net/wireless/ti/wl1251/Kconfig
@@ -1,6 +1,6 @@
1menuconfig WL1251 1menuconfig WL1251
2 tristate "TI wl1251 driver support" 2 tristate "TI wl1251 driver support"
3 depends on MAC80211 && GENERIC_HARDIRQS 3 depends on MAC80211
4 select FW_LOADER 4 select FW_LOADER
5 select CRC7 5 select CRC7
6 ---help--- 6 ---help---
diff --git a/drivers/net/wireless/ti/wlcore/Kconfig b/drivers/net/wireless/ti/wlcore/Kconfig
index 2b832825c3d4..7c099542b214 100644
--- a/drivers/net/wireless/ti/wlcore/Kconfig
+++ b/drivers/net/wireless/ti/wlcore/Kconfig
@@ -1,6 +1,6 @@
1config WLCORE 1config WLCORE
2 tristate "TI wlcore support" 2 tristate "TI wlcore support"
3 depends on WL_TI && GENERIC_HARDIRQS && MAC80211 3 depends on WL_TI && MAC80211
4 select FW_LOADER 4 select FW_LOADER
5 ---help--- 5 ---help---
6 This module contains the main code for TI WLAN chips. It abstracts 6 This module contains the main code for TI WLAN chips. It abstracts
diff --git a/drivers/pci/msi.c b/drivers/pci/msi.c
index b35f93c232cf..d5f90d6383bc 100644
--- a/drivers/pci/msi.c
+++ b/drivers/pci/msi.c
@@ -30,7 +30,6 @@ static int pci_msi_enable = 1;
30 30
31/* Arch hooks */ 31/* Arch hooks */
32 32
33#if defined(CONFIG_GENERIC_HARDIRQS)
34int __weak arch_setup_msi_irq(struct pci_dev *dev, struct msi_desc *desc) 33int __weak arch_setup_msi_irq(struct pci_dev *dev, struct msi_desc *desc)
35{ 34{
36 struct msi_chip *chip = dev->bus->msi; 35 struct msi_chip *chip = dev->bus->msi;
@@ -67,21 +66,6 @@ int __weak arch_msi_check_device(struct pci_dev *dev, int nvec, int type)
67 66
68 return chip->check_device(chip, dev, nvec, type); 67 return chip->check_device(chip, dev, nvec, type);
69} 68}
70#else
71int __weak arch_setup_msi_irq(struct pci_dev *dev, struct msi_desc *desc)
72{
73 return -ENOSYS;
74}
75
76void __weak arch_teardown_msi_irq(unsigned int irq)
77{
78}
79
80int __weak arch_msi_check_device(struct pci_dev *dev, int nvec, int type)
81{
82 return 0;
83}
84#endif /* CONFIG_GENERIC_HARDIRQS */
85 69
86int __weak arch_setup_msi_irqs(struct pci_dev *dev, int nvec, int type) 70int __weak arch_setup_msi_irqs(struct pci_dev *dev, int nvec, int type)
87{ 71{
@@ -245,8 +229,6 @@ static void msix_mask_irq(struct msi_desc *desc, u32 flag)
245 desc->masked = __msix_mask_irq(desc, flag); 229 desc->masked = __msix_mask_irq(desc, flag);
246} 230}
247 231
248#ifdef CONFIG_GENERIC_HARDIRQS
249
250static void msi_set_mask_bit(struct irq_data *data, u32 flag) 232static void msi_set_mask_bit(struct irq_data *data, u32 flag)
251{ 233{
252 struct msi_desc *desc = irq_data_get_msi(data); 234 struct msi_desc *desc = irq_data_get_msi(data);
@@ -270,8 +252,6 @@ void unmask_msi_irq(struct irq_data *data)
270 msi_set_mask_bit(data, 0); 252 msi_set_mask_bit(data, 0);
271} 253}
272 254
273#endif /* CONFIG_GENERIC_HARDIRQS */
274
275void __read_msi_msg(struct msi_desc *entry, struct msi_msg *msg) 255void __read_msi_msg(struct msi_desc *entry, struct msi_msg *msg)
276{ 256{
277 BUG_ON(entry->dev->current_state != PCI_D0); 257 BUG_ON(entry->dev->current_state != PCI_D0);
@@ -382,10 +362,8 @@ static void free_msi_irqs(struct pci_dev *dev)
382 nvec = entry->nvec_used; 362 nvec = entry->nvec_used;
383 else 363 else
384 nvec = 1 << entry->msi_attrib.multiple; 364 nvec = 1 << entry->msi_attrib.multiple;
385#ifdef CONFIG_GENERIC_HARDIRQS
386 for (i = 0; i < nvec; i++) 365 for (i = 0; i < nvec; i++)
387 BUG_ON(irq_has_action(entry->irq + i)); 366 BUG_ON(irq_has_action(entry->irq + i));
388#endif
389 } 367 }
390 368
391 arch_teardown_msi_irqs(dev); 369 arch_teardown_msi_irqs(dev);
diff --git a/drivers/power/Kconfig b/drivers/power/Kconfig
index bb49ab684f9a..e6f92b450913 100644
--- a/drivers/power/Kconfig
+++ b/drivers/power/Kconfig
@@ -269,7 +269,6 @@ config CHARGER_ISP1704
269 269
270config CHARGER_MAX8903 270config CHARGER_MAX8903
271 tristate "MAX8903 Battery DC-DC Charger for USB and Adapter Power" 271 tristate "MAX8903 Battery DC-DC Charger for USB and Adapter Power"
272 depends on GENERIC_HARDIRQS
273 help 272 help
274 Say Y to enable support for the MAX8903 DC-DC charger and sysfs. 273 Say Y to enable support for the MAX8903 DC-DC charger and sysfs.
275 The driver supports controlling charger-enable and current-limit 274 The driver supports controlling charger-enable and current-limit
@@ -370,7 +369,7 @@ config AB8500_BM
370 369
371config BATTERY_GOLDFISH 370config BATTERY_GOLDFISH
372 tristate "Goldfish battery driver" 371 tristate "Goldfish battery driver"
373 depends on GENERIC_HARDIRQS && (GOLDFISH || COMPILE_TEST) 372 depends on GOLDFISH || COMPILE_TEST
374 help 373 help
375 Say Y to enable support for the battery and AC power in the 374 Say Y to enable support for the battery and AC power in the
376 Goldfish emulator. 375 Goldfish emulator.
diff --git a/drivers/pps/clients/Kconfig b/drivers/pps/clients/Kconfig
index 6efd9b60d8ff..0c9f2805d076 100644
--- a/drivers/pps/clients/Kconfig
+++ b/drivers/pps/clients/Kconfig
@@ -31,7 +31,7 @@ config PPS_CLIENT_PARPORT
31 31
32config PPS_CLIENT_GPIO 32config PPS_CLIENT_GPIO
33 tristate "PPS client using GPIO" 33 tristate "PPS client using GPIO"
34 depends on PPS && GENERIC_HARDIRQS 34 depends on PPS
35 help 35 help
36 If you say yes here you get support for a PPS source using 36 If you say yes here you get support for a PPS source using
37 GPIO. To be useful you must also register a platform device 37 GPIO. To be useful you must also register a platform device
diff --git a/drivers/spi/Kconfig b/drivers/spi/Kconfig
index 0170d4c4a8a3..b9c53cc40e1f 100644
--- a/drivers/spi/Kconfig
+++ b/drivers/spi/Kconfig
@@ -55,7 +55,6 @@ comment "SPI Master Controller Drivers"
55 55
56config SPI_ALTERA 56config SPI_ALTERA
57 tristate "Altera SPI Controller" 57 tristate "Altera SPI Controller"
58 depends on GENERIC_HARDIRQS
59 select SPI_BITBANG 58 select SPI_BITBANG
60 help 59 help
61 This is the driver for the Altera SPI Controller. 60 This is the driver for the Altera SPI Controller.
@@ -358,7 +357,7 @@ config SPI_PXA2XX_DMA
358 357
359config SPI_PXA2XX 358config SPI_PXA2XX
360 tristate "PXA2xx SSP SPI master" 359 tristate "PXA2xx SSP SPI master"
361 depends on (ARCH_PXA || PCI || ACPI) && GENERIC_HARDIRQS 360 depends on (ARCH_PXA || PCI || ACPI)
362 select PXA_SSP if ARCH_PXA 361 select PXA_SSP if ARCH_PXA
363 help 362 help
364 This enables using a PXA2xx or Sodaville SSP port as a SPI master 363 This enables using a PXA2xx or Sodaville SSP port as a SPI master
diff --git a/drivers/tty/serial/Kconfig b/drivers/tty/serial/Kconfig
index 47c6e7b9e150..febd45cd5027 100644
--- a/drivers/tty/serial/Kconfig
+++ b/drivers/tty/serial/Kconfig
@@ -5,7 +5,7 @@
5if TTY 5if TTY
6 6
7menu "Serial drivers" 7menu "Serial drivers"
8 depends on HAS_IOMEM && GENERIC_HARDIRQS 8 depends on HAS_IOMEM
9 9
10source "drivers/tty/serial/8250/Kconfig" 10source "drivers/tty/serial/8250/Kconfig"
11 11
diff --git a/drivers/usb/dwc3/Kconfig b/drivers/usb/dwc3/Kconfig
index f969ea266acb..b870872e020f 100644
--- a/drivers/usb/dwc3/Kconfig
+++ b/drivers/usb/dwc3/Kconfig
@@ -1,6 +1,6 @@
1config USB_DWC3 1config USB_DWC3
2 tristate "DesignWare USB3 DRD Core Support" 2 tristate "DesignWare USB3 DRD Core Support"
3 depends on (USB || USB_GADGET) && GENERIC_HARDIRQS && HAS_DMA 3 depends on (USB || USB_GADGET) && HAS_DMA
4 depends on EXTCON 4 depends on EXTCON
5 select USB_XHCI_PLATFORM if USB_SUPPORT && USB_XHCI_HCD 5 select USB_XHCI_PLATFORM if USB_SUPPORT && USB_XHCI_HCD
6 help 6 help
diff --git a/drivers/usb/gadget/Kconfig b/drivers/usb/gadget/Kconfig
index 30e2dd8a1f2c..48cddf3cd6b8 100644
--- a/drivers/usb/gadget/Kconfig
+++ b/drivers/usb/gadget/Kconfig
@@ -313,7 +313,7 @@ config USB_S3C_HSUDC
313 313
314config USB_MV_UDC 314config USB_MV_UDC
315 tristate "Marvell USB2.0 Device Controller" 315 tristate "Marvell USB2.0 Device Controller"
316 depends on GENERIC_HARDIRQS && HAS_DMA 316 depends on HAS_DMA
317 help 317 help
318 Marvell Socs (including PXA and MMP series) include a high speed 318 Marvell Socs (including PXA and MMP series) include a high speed
319 USB2.0 OTG controller, which can be configured as high speed or 319 USB2.0 OTG controller, which can be configured as high speed or
@@ -425,7 +425,7 @@ config USB_GOKU
425 425
426config USB_EG20T 426config USB_EG20T
427 tristate "Intel EG20T PCH/LAPIS Semiconductor IOH(ML7213/ML7831) UDC" 427 tristate "Intel EG20T PCH/LAPIS Semiconductor IOH(ML7213/ML7831) UDC"
428 depends on PCI && GENERIC_HARDIRQS 428 depends on PCI
429 help 429 help
430 This is a USB device driver for EG20T PCH. 430 This is a USB device driver for EG20T PCH.
431 EG20T PCH is the platform controller hub that is used in Intel's 431 EG20T PCH is the platform controller hub that is used in Intel's
diff --git a/drivers/usb/host/Kconfig b/drivers/usb/host/Kconfig
index 5be0326aae38..b3f20d7f15de 100644
--- a/drivers/usb/host/Kconfig
+++ b/drivers/usb/host/Kconfig
@@ -278,7 +278,6 @@ endif # USB_EHCI_HCD
278 278
279config USB_OXU210HP_HCD 279config USB_OXU210HP_HCD
280 tristate "OXU210HP HCD support" 280 tristate "OXU210HP HCD support"
281 depends on GENERIC_HARDIRQS
282 ---help--- 281 ---help---
283 The OXU210HP is an USB host/OTG/device controller. Enable this 282 The OXU210HP is an USB host/OTG/device controller. Enable this
284 option if your board has this chip. If unsure, say N. 283 option if your board has this chip. If unsure, say N.
diff --git a/drivers/usb/musb/Kconfig b/drivers/usb/musb/Kconfig
index c64ee09a7c0e..c258a97ef1b0 100644
--- a/drivers/usb/musb/Kconfig
+++ b/drivers/usb/musb/Kconfig
@@ -71,7 +71,6 @@ config USB_MUSB_DA8XX
71 71
72config USB_MUSB_TUSB6010 72config USB_MUSB_TUSB6010
73 tristate "TUSB6010" 73 tristate "TUSB6010"
74 depends on GENERIC_HARDIRQS
75 74
76config USB_MUSB_OMAP2PLUS 75config USB_MUSB_OMAP2PLUS
77 tristate "OMAP2430 and onwards" 76 tristate "OMAP2430 and onwards"
diff --git a/drivers/usb/renesas_usbhs/Kconfig b/drivers/usb/renesas_usbhs/Kconfig
index 019bf7e49ee6..1c4195abc108 100644
--- a/drivers/usb/renesas_usbhs/Kconfig
+++ b/drivers/usb/renesas_usbhs/Kconfig
@@ -4,7 +4,7 @@
4 4
5config USB_RENESAS_USBHS 5config USB_RENESAS_USBHS
6 tristate 'Renesas USBHS controller' 6 tristate 'Renesas USBHS controller'
7 depends on USB_GADGET && GENERIC_HARDIRQS 7 depends on USB_GADGET
8 default n 8 default n
9 help 9 help
10 Renesas USBHS is a discrete USB host and peripheral controller chip 10 Renesas USBHS is a discrete USB host and peripheral controller chip
diff --git a/drivers/w1/masters/Kconfig b/drivers/w1/masters/Kconfig
index 2bd1257dcc1c..efc7f075fcbe 100644
--- a/drivers/w1/masters/Kconfig
+++ b/drivers/w1/masters/Kconfig
@@ -42,7 +42,7 @@ config W1_MASTER_MXC
42 42
43config W1_MASTER_DS1WM 43config W1_MASTER_DS1WM
44 tristate "Maxim DS1WM 1-wire busmaster" 44 tristate "Maxim DS1WM 1-wire busmaster"
45 depends on W1 && GENERIC_HARDIRQS 45 depends on W1
46 help 46 help
47 Say Y here to enable the DS1WM 1-wire driver, such as that 47 Say Y here to enable the DS1WM 1-wire driver, such as that
48 in HP iPAQ devices like h5xxx, h2200, and ASIC3-based like 48 in HP iPAQ devices like h5xxx, h2200, and ASIC3-based like