linux/drivers/mfd
Naga Venkata Srikanth V 87343e5341 mfd: twl6030-irq: Migrate to IRQ threaded handler
1) Removed request_irq() and replaced it with request_threaded_irq().

2) Removed generic_handle_irq() and replaced it with
handle_nested_irq().
  Handling of these interrupts is nested, as we are handling an
interrupt (for e.g rtc, mmc1) when we are still servicing TWL irq.

3) Removed I2C read-retry logic for the case when twl_i2c_read() is
failed inside IRQ handler - there is no sense to do that, so just report
an error and return.

4) Each nested IRQ is configured with corresponding parent_irq,
which need to be retriggered in case if nested IRQ is marked
as IRQS_PENDING.

Signed-off-by: Naga Venkata Srikanth V <vnv.srikanth@samsung.com>
Signed-off-by: Oleg_Kosheliev <oleg.kosheliev@ti.com>
Signed-off-by: Grygorii Strashko <grygorii.strashko@ti.com>
Acked-by: Graeme Gregory <gg@slimlogic.co.uk>
Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
2013-08-20 10:19:02 +02:00
..
88pm80x.c mfd: 88pm80x: Change chip id definition and detection 2013-06-18 09:41:10 +02:00
88pm800.c mfd: 88pm800: Add regulator sub device 2013-06-18 09:41:12 +02:00
88pm805.c mfd: 88pm80x: Change chip id definition and detection 2013-06-18 09:41:10 +02:00
88pm860x-core.c mfd: 88pm860x: Convert to managed resources for allocating memory 2013-06-13 12:13:39 +02:00
88pm860x-i2c.c mfd: Convert struct i2c_msg initialization to C99 format 2012-09-21 23:40:34 +02:00
aat2870-core.c mfd: Replace strict_strtoul() with kstrtoul() in ab* and att* 2013-06-13 10:51:56 +01:00
ab3100-core.c mfd: Replace strict_strtoul() with kstrtoul() in ab* and att* 2013-06-13 10:51:56 +01:00
ab3100-otp.c mfd: ab3100-otp: Convert to managed resources for allocating memory 2013-06-13 12:11:39 +02:00
ab8500-core.c mfd: ab8500-core: Add AB8500 external regulators as MFD devices 2013-06-13 10:52:00 +01:00
ab8500-debugfs.c mfd: ab8500-debug: Convert to managed resources for allocating memory 2013-06-13 12:11:40 +02:00
ab8500-gpadc.c For the 3.11 merge we only have one new MFD driver for the Kontron PLD. 2013-07-10 11:10:27 -07:00
ab8500-sysctrl.c mfd: ab8500-sysctrl: Let sysctrl driver work without pdata 2013-05-21 23:23:21 +02:00
abx500-core.c mfd: abx500-core: Convert to managed resources for allocating memory 2013-06-13 12:11:41 +02:00
adp5520.c mfd: adp5520: Convert to managed resources for allocating memory 2013-06-13 12:11:41 +02:00
arizona-core.c mfd: arizona: Integrate wm8997 into Arizona mfd 2013-06-18 00:49:52 +02:00
arizona-i2c.c mfd: arizona: Integrate wm8997 into Arizona mfd 2013-06-18 00:49:52 +02:00
arizona-irq.c mfd: arizona: Integrate wm8997 into Arizona mfd 2013-06-18 00:49:52 +02:00
arizona-spi.c mfd: Add device tree bindings for Arizona class devices 2013-05-20 08:13:36 -05:00
arizona.h mfd: arizona: Integrate wm8997 into Arizona mfd 2013-06-18 00:49:52 +02:00
as3711.c mfd: as3711: Add OF support 2013-04-05 11:20:14 +02:00
asic3.c mfd: asic3: Convert to managed resources for allocating memory 2013-06-13 12:11:41 +02:00
cros_ec_i2c.c mfd: Add ChromeOS EC I2C driver 2013-04-05 11:20:13 +02:00
cros_ec_spi.c mfd: cros_ec_spi: Use %z to format pointer differences 2013-05-16 19:14:06 +02:00
cros_ec.c mfd: cros_ec: Convert to managed resources for allocating memory 2013-06-13 12:11:42 +02:00
cs5535-mfd.c mfd: remove use of __devexit 2012-11-28 12:22:27 -08:00
da903x.c mfd: da903x: Use devm_*() functions 2013-04-08 17:25:28 +02:00
da9052-core.c This is the MFD patch set for the 3.8 merge window. 2012-12-16 18:55:20 -08:00
da9052-i2c.c mfd: da9052-i2c: Staticize da9052_i2c_fix() 2013-02-14 00:26:41 +01:00
da9052-irq.c mfd: da9052: Introduce da9052-irq.c 2012-11-20 12:21:10 +01:00
da9052-spi.c mfd: da9052: Use spi_get_drvdata() and spi_set_drvdata() 2013-04-09 12:18:16 +02:00
da9055-core.c mfd: Fix for DA9055 driver initialization 2013-07-31 02:02:53 +02:00
da9055-i2c.c mfd: Update DA9055 i2c device id name 2013-07-31 02:02:54 +02:00
da9063-core.c mfd: da9063: Add IRQ support 2013-08-20 03:16:00 +02:00
da9063-i2c.c mfd: da9063: Add Dialog DA9063 core driver 2013-08-20 03:15:52 +02:00
da9063-irq.c mfd: da9063: Add IRQ support 2013-08-20 03:16:00 +02:00
davinci_voicecodec.c mfd: davinci_voicecodec: Convert to use devm_* APIs 2013-06-19 09:53:26 +01:00
db8500-prcmu.c Power management and ACPI updates for 3.11-rc1 2013-07-03 14:35:40 -07:00
dbx500-prcmu-regs.h For the 3.11 merge we only have one new MFD driver for the Kontron PLD. 2013-07-10 11:10:27 -07:00
dm355evm_msp.c
ezx-pcap.c mfd: ezx-pcap: Use spi_get_drvdata() and spi_set_drvdata() 2013-04-09 12:18:16 +02:00
htc-egpio.c mfd: htc-egpio: Use devm_ioremap_nocache() instead of ioremap_nocache() 2013-06-19 09:53:55 +01:00
htc-i2cpld.c mfd: htc-i2cpld: Convert to managed resources for allocating memory 2013-06-13 12:11:43 +02:00
htc-pasic3.c mfd: htc-pasic3: Convert to managed resources for allocating memory 2013-06-13 12:11:44 +02:00
intel_msic.c mfd: intel_msic: Remove unnecessary platform_set_drvdata() 2013-06-11 19:27:51 +02:00
janz-cmodio.c mfd: janz-cmodio: Convert to managed resources for allocating memory 2013-06-13 12:11:44 +02:00
jz4740-adc.c mfd: jz4740-adc: Use clk_prepare_enable/clk_disable_unprepare 2013-06-11 19:36:59 +02:00
Kconfig mfd: da9063: Add Dialog DA9063 core driver 2013-08-20 03:15:52 +02:00
kempld-core.c mfd: Kontron PLD mfd driver 2013-06-24 13:48:22 +02:00
lm3533-core.c mfd: lm3533: Use devm_gpio_request_one() 2013-04-08 17:25:23 +02:00
lm3533-ctrlbank.c
lp8788-irq.c mfd: Add lp8788 mfd driver 2012-09-23 20:51:34 +02:00
lp8788.c mfd: remove use of __devexit 2012-11-28 12:22:27 -08:00
lpc_ich.c mfd: lpc_ich: iTCO_wdt patch for Intel Coleto Creek DeviceIDs 2013-06-20 10:46:08 +02:00
lpc_sch.c mfd: lpc_sch: Accomodate partial population of the MFD devices 2013-02-14 00:26:45 +01:00
Makefile mfd: da9063: Add IRQ support 2013-08-20 03:16:00 +02:00
max8907.c mfd: remove use of __devexit 2012-11-28 12:22:27 -08:00
max8925-core.c mfd: max8925: Fix onkey driver irq base 2013-02-14 00:23:00 +01:00
max8925-i2c.c mfd: max8925: Convert to managed resources for allocating memory 2013-06-13 12:11:45 +02:00
max8997-irq.c mfd: Add irq domain support for max8997 interrupts 2012-07-09 00:16:13 +02:00
max8997.c Drivers: mfd: remove __dev* attributes. 2013-01-03 15:57:14 -08:00
max8998-irq.c mfd: max8998: Add irq domain support 2013-06-30 23:29:44 +02:00
max8998.c mfd: max8998: Add support for Device Tree 2013-06-30 23:30:04 +02:00
max77686-irq.c mfd: Allow to specify max77686 interrupt through DT or platform file also 2012-07-09 15:13:42 +02:00
max77686.c mfd: max77686: Convert to managed resources for allocating memory 2013-06-13 12:11:45 +02:00
max77693-irq.c mfd: MAX77693: Fix interrupt handling bug 2012-09-16 00:32:57 +02:00
max77693.c mfd: max77693: Init max77693->dev before using it 2013-01-22 03:02:22 +01:00
mc13xxx-core.c mfd: mc13xxx: Add support for mc34708 2012-11-06 23:14:08 +01:00
mc13xxx-i2c.c This is the MFD patch set for the 3.8 merge window. 2012-12-16 18:55:20 -08:00
mc13xxx-spi.c mfd: mc13xxx: Use spi_get_drvdata() and spi_set_drvdata() 2013-04-09 12:18:16 +02:00
mc13xxx.h mfd: mc13xxx: Add support for mc34708 2012-11-06 23:14:08 +01:00
mcp-core.c
mcp-sa11x0.c mfd: mcp-sa11x0: Remove unnecessary platform_set_drvdata() 2013-06-11 19:27:52 +02:00
menelaus.c ARM: OMAP2: Move plat/menelaus.h to linux/mfd/menelaus.h 2012-10-15 13:53:41 -07:00
mfd-core.c mfd: Only unregister platform devices allocated by the mfd core 2012-11-20 12:21:12 +01:00
omap-usb-host.c mfd: omap-usb-host: Convert to devm_ioremap_resource() 2013-04-09 15:01:31 +02:00
omap-usb-tll.c mfd: omap-usb-tll: Convert to devm_ioremap_resource() 2013-04-09 15:01:31 +02:00
omap-usb.h mfd: omap-usb-tll: Move configuration code to omap_tll_init() 2013-04-09 09:46:23 +02:00
palmas.c mfd: palmas: Add support for external control configuration 2013-08-20 03:23:52 +02:00
pcf50633-adc.c mfd: remove use of __devexit 2012-11-28 12:22:27 -08:00
pcf50633-core.c mfd: pcf50633: Init pcf->dev before using it 2013-01-22 03:05:33 +01:00
pcf50633-gpio.c
pcf50633-irq.c
pm8xxx-irq.c mfd: remove use of __devexit 2012-11-28 12:22:27 -08:00
pm8921-core.c SSBI: Remove MSM_ prefix from SSBI drivers 2013-03-25 10:39:40 -07:00
rc5t583-irq.c mfd: rc5t583: Fix array subscript is above array bounds 2012-11-26 12:10:51 +01:00
rc5t583.c mfd: remove use of __devexit 2012-11-28 12:22:27 -08:00
rdc321x-southbridge.c mfd: remove use of __devexit 2012-11-28 12:22:27 -08:00
retu-mfd.c mfd: retu: Add Tahvo support 2013-04-19 00:45:20 +02:00
rtl8411.c mfd: rtsx: Add support for RTL8411B 2013-06-11 19:27:51 +02:00
rts5209.c mfd: rtsx: Implement driving adjustment to device-dependent callbacks 2013-02-14 00:22:59 +01:00
rts5227.c mfd: rtsx: Support RTS5227 2013-02-14 00:22:59 +01:00
rts5229.c mfd: rtsx: Implement driving adjustment to device-dependent callbacks 2013-02-14 00:22:59 +01:00
rts5249.c mfd: rtsx: Support RTS5249 2013-04-19 18:29:18 +02:00
rtsx_pcr.c mfd: rtsx: Add support for RTL8411B 2013-06-11 19:27:51 +02:00
rtsx_pcr.h mfd: rtsx: Add support for RTL8411B 2013-06-11 19:27:51 +02:00
sec-core.c mfd: sec: Add register cache for interrupt mask registers 2013-07-31 02:02:55 +02:00
sec-irq.c mfd: sec: Fix reg_offset for interrupt registers 2012-11-26 00:35:08 +01:00
si476x-cmd.c mfd: si476x: Use get_unaligned_be16() for unaligned be16 loads 2013-05-16 19:15:07 +02:00
si476x-i2c.c mfd: si476x: Fix i2c warning 2013-04-19 18:40:05 +02:00
si476x-prop.c mfd: si476x: Add chip properties handling code 2013-04-19 18:37:59 +02:00
sm501.c mfd: remove use of __devexit 2012-11-28 12:22:27 -08:00
smsc-ece1099.c mfd: smsc: Add support for smsc gpio io/keypad driver 2012-10-01 15:27:48 +02:00
ssbi.c mfd: ssbi: Use devm_* and simplify code 2013-06-18 09:41:15 +02:00
sta2x11-mfd.c mfd: sta2x11: Build warning fix 2013-04-08 17:28:29 +02:00
stmpe-i2c.c mfd: support stmpe1801 18 bits enhanced port expander 2013-04-09 14:15:58 +02:00
stmpe-spi.c mfd: stmpe: Use spi_get_drvdata() 2013-04-09 12:18:16 +02:00
stmpe.c mfd: stmpe: use irq_get_trigger_type() to get IRQ flags 2013-06-25 11:48:25 +02:00
stmpe.h mfd: support stmpe1801 18 bits enhanced port expander 2013-04-09 14:15:58 +02:00
syscon.c mfd: syscon: Remove "base" field from private driver data 2013-07-31 02:02:58 +02:00
t7l66xb.c mfd: t7l66xb: Remove unnecessary platform_set_drvdata() 2013-06-11 19:27:52 +02:00
tc3589x.c mfd: tc3589x: Use devm_*() functions 2013-04-08 17:25:29 +02:00
tc6387xb.c mfd: tc6387xb: Remove unnecessary platform_set_drvdata() 2013-06-11 19:27:52 +02:00
tc6393xb.c mfd: tc6393xb: Remove unnecessary platform_set_drvdata() 2013-06-11 19:27:52 +02:00
ti_am335x_tscadc.c MFD: ti_tscadc: Disable TSC config registers in adc mode 2013-07-31 02:04:40 +02:00
ti-ssp.c mfd: remove use of __devexit 2012-11-28 12:22:27 -08:00
timberdale.c spi: spi-xilinx: Add run run-time endian detection 2013-06-04 18:37:35 +01:00
timberdale.h
tmio_core.c
tps6105x.c mfd: remove use of __devexit 2012-11-28 12:22:27 -08:00
tps6507x.c mfd: tps6507x: Add DT support 2013-02-14 00:22:54 +01:00
tps6586x.c mfd: tps6586x: correct device name of the regulator cell 2013-06-24 12:37:47 +01:00
tps65010.c mfd: remove IRQF_SAMPLE_RANDOM which is now a no-op 2012-07-19 10:38:33 -04:00
tps65090.c mfd: tps65090: Add compatible string for charger subnode 2013-04-11 00:16:29 +02:00
tps65217.c This is the MFD patch set for the 3.8 merge window. 2012-12-16 18:55:20 -08:00
tps65910.c This is the MFD patch set for the 3.8 merge window. 2012-12-16 18:55:20 -08:00
tps65911-comparator.c mfd: remove use of __devexit 2012-11-28 12:22:27 -08:00
tps65912-core.c mfd: tps65912: Convert to managed resources for allocating memory 2013-06-13 12:11:39 +02:00
tps65912-i2c.c mfd: tps65912: Convert to managed resources for allocating memory 2013-06-13 12:11:39 +02:00
tps65912-irq.c
tps65912-spi.c mfd: tps65912: Convert to managed resources for allocating memory 2013-06-13 12:11:39 +02:00
tps80031.c Drivers: mfd: remove __dev* attributes. 2013-01-03 15:57:14 -08:00
twl4030-audio.c mfd: twl4030-audio: Remove unnecessary platform_set_drvdata() 2013-06-11 19:27:52 +02:00
twl4030-irq.c For the 3.11 merge we only have one new MFD driver for the Kontron PLD. 2013-07-10 11:10:27 -07:00
twl4030-madc.c mfd: twl4030-madc: Remove unnecessary platform_set_drvdata() 2013-06-11 19:27:52 +02:00
twl4030-power.c mfd: twl4030-power: Fix relocking on error 2013-06-19 10:19:40 +02:00
twl6030-irq.c mfd: twl6030-irq: Migrate to IRQ threaded handler 2013-08-20 10:19:02 +02:00
twl6040.c mfd: twl6040: Cleanup in early error handling in probe function 2013-07-31 02:02:57 +02:00
twl-core.c mfd: twl-core: Change TWL6025 references to TWL6032 2013-06-20 10:26:29 +02:00
twl-core.h
ucb1x00-assabet.c
ucb1x00-core.c
ucb1x00-ts.c
ucb1400_core.c mfd: ucb1400: Pass ucb1400-gpio data through ac97 bus 2013-04-19 00:40:07 +02:00
vexpress-config.c mfd: vexpress: Handle pending config transactions 2013-04-26 16:10:03 +02:00
vexpress-sysreg.c mfd: vexpress: Make the driver optional for arm and arm64 2013-06-19 11:32:00 +02:00
viperboard.c mfd: viperboard: Do version query in dma memory 2012-11-26 11:48:56 +01:00
vx855.c mfd: remove use of __devexit 2012-11-28 12:22:27 -08:00
wl1273-core.c mfd: remove use of __devinit 2012-11-28 12:20:19 -08:00
wm831x-auxadc.c
wm831x-core.c mfd: core: Push irqdomain mapping out into devices 2012-09-15 23:22:04 +02:00
wm831x-i2c.c
wm831x-irq.c
wm831x-otp.c mfd: wm831x: Feed the device UUID into device_add_randomness() 2012-07-19 10:38:31 -04:00
wm831x-spi.c mfd: wm831x: Use spi_get_drvdata() and spi_set_drvdata() 2013-04-09 12:18:16 +02:00
wm5102-tables.c mfd: wm5102: Expose DRE control registers 2013-06-12 18:06:49 +01:00
wm5110-tables.c mfd: wm5110: Make DSPn_STATUS_3 readable 2013-05-22 19:13:47 -05:00
wm8350-core.c mfd: Remove custom wm8350 cache implementation 2012-07-09 00:16:10 +02:00
wm8350-gpio.c
wm8350-i2c.c
wm8350-irq.c mfd: Rely on regmap cache in wm8350 interrupt controller 2012-07-09 00:16:10 +02:00
wm8350-regmap.c mfd: Remove custom wm8350 cache implementation 2012-07-09 00:16:10 +02:00
wm8400-core.c mfd: core: Push irqdomain mapping out into devices 2012-09-15 23:22:04 +02:00
wm8994-core.c mfd: wm8994: Remove check for active audio in runtime suspend 2013-07-31 02:04:29 +02:00
wm8994-irq.c mfd: wm8994: Emulate level triggered interrupts if required 2013-06-11 19:27:52 +02:00
wm8994-regmap.c mfd: wm8994: Implement support for WM1811 devices with higher cust_ids 2012-09-14 09:52:11 +02:00
wm8994.h
wm8997-tables.c mfd: arizona: Integrate wm8997 into Arizona mfd 2013-06-18 00:49:52 +02:00