kernel-fxtec-pro1x/drivers/mfd
Lee Jones 7da0cbfc54 mfd: Prevent STMPE from abusing mfd_add_devices' irq_base parameter
Originally IRQ incrementers were provided in some template resource
structures for keypad and touchscreen devices. These were passed as
IORESOURCE_IRQs to MFD core in the usual way. The true device IRQs
were instead added to the irq_base when mfd_add_devices was invoked.
This is clearly an abuse of the call, and does not scale when IRQ
Domains are brought into play. Before we can provide the STMPE with
its own IRQ Domain we must first fix this. This patche keeps most
of the driver's structure, keeping the template strategy. However,
instead of providing the IRQ as an increment to irq_base, we
dynamically populate the IORESOURCE_IRQ with the correct device IRQ.

Acked-by: Arnd Bergmann <arnd@arndb.de>
Acked-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Lee Jones <lee.jones@linaro.org>
Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
2012-11-11 23:35:03 +01:00
..
88pm80x.c mfd: Remove __devexit annotation for pm80x_deinit 2012-07-16 15:26:45 +02:00
88pm800.c mfd: core: Push irqdomain mapping out into devices 2012-09-15 23:22:04 +02:00
88pm805.c mfd: core: Push irqdomain mapping out into devices 2012-09-15 23:22:04 +02:00
88pm860x-core.c 1. New drivers: 2012-10-07 17:29:24 +09: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: core: Push irqdomain mapping out into devices 2012-09-15 23:22:04 +02:00
ab3100-core.c mfd: core: Push irqdomain mapping out into devices 2012-09-15 23:22:04 +02:00
ab3100-otp.c
ab8500-core.c mfd: ab8500-core: Remove unused ab8500-gpio IRQ ranges 2012-11-11 23:35:03 +01:00
ab8500-debugfs.c mfd: Register ab8500 devices using the newly DT:ed MFD API 2012-07-09 00:16:13 +02:00
ab8500-gpadc.c Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial 2012-10-01 09:06:36 -07:00
ab8500-sysctrl.c mfd: Register ab8500 devices using the newly DT:ed MFD API 2012-07-09 00:16:13 +02:00
abx500-core.c
adp5520.c mfd: Guard adp5520 PM methods with CONFIG_PM_SLEEP 2012-07-09 00:16:13 +02:00
arizona-core.c mfd: core: Push irqdomain mapping out into devices 2012-09-15 23:22:04 +02:00
arizona-i2c.c mfd: Initial support for the WM5110 2012-07-16 15:00:32 +02:00
arizona-irq.c mfd: wm5110: Disable control interface error report for WM5110 rev B 2012-09-28 23:57:28 +02:00
arizona-spi.c mfd: Initial support for the WM5110 2012-07-16 15:00:32 +02:00
arizona.h mfd: Initial support for the WM5110 2012-07-16 15:00:32 +02:00
asic3.c mfd: core: Push irqdomain mapping out into devices 2012-09-15 23:22:04 +02:00
cs5535-mfd.c mfd: core: Push irqdomain mapping out into devices 2012-09-15 23:22:04 +02:00
da903x.c
da9052-core.c mfd: core: Push irqdomain mapping out into devices 2012-09-15 23:22:04 +02:00
da9052-i2c.c mfd/da9052: make i2c_device_id array const 2012-09-11 08:57:36 +02:00
da9052-spi.c mfd: Convert da9052 to use devm_* APIs 2012-05-20 17:27:03 +02:00
da9055-core.c mfd: DA9055 core driver 2012-09-29 01:25:28 +02:00
da9055-i2c.c mfd: DA9055 core driver 2012-09-29 01:25:28 +02:00
davinci_voicecodec.c mfd: core: Push irqdomain mapping out into devices 2012-09-15 23:22:04 +02:00
db8500-prcmu.c MFD bits for the 3.7 merge window. 2012-10-05 12:01:30 +09:00
dbx500-prcmu-regs.h mfd: dbx500: Provide a more accurate smp_twd clock 2012-09-23 20:51:34 +02:00
dm355evm_msp.c
ezx-pcap.c ARM: pxa: remove irq_to_gpio from ezx-pcap driver 2012-08-09 15:16:41 +02:00
htc-egpio.c
htc-i2cpld.c
htc-pasic3.c mfd: core: Push irqdomain mapping out into devices 2012-09-15 23:22:04 +02:00
intel_msic.c mfd: core: Push irqdomain mapping out into devices 2012-09-15 23:22:04 +02:00
janz-cmodio.c mfd: core: Push irqdomain mapping out into devices 2012-09-15 23:22:04 +02:00
jz4740-adc.c mfd: core: Push irqdomain mapping out into devices 2012-09-15 23:22:04 +02:00
Kconfig mfd: Select MFD_CORE for rtsx 2012-11-08 10:38:56 +01:00
lm3533-core.c mfd: core: Push irqdomain mapping out into devices 2012-09-15 23:22:04 +02:00
lm3533-ctrlbank.c mfd: Use SI-units for the lm3533 max-current interface 2012-05-20 17:27:02 +02:00
lp8788-irq.c mfd: Add lp8788 mfd driver 2012-09-23 20:51:34 +02:00
lp8788.c mfd: Add lp8788 mfd driver 2012-09-23 20:51:34 +02:00
lpc_ich.c mfd: lpc_ich: Add Device IDs for Intel Lynx Point-LP PCH 2012-09-16 00:39:47 +02:00
lpc_sch.c mfd: core: Push irqdomain mapping out into devices 2012-09-15 23:22:04 +02:00
Makefile mfd: Add realtek pcie card reader driver 2012-11-08 10:35:17 +01:00
max8907.c mfd: Fix max8907 sparse warning 2012-09-23 20:51:35 +02:00
max8925-core.c mfd: max8925: Remove array in regulator platform data 2012-09-19 12:39:13 +02:00
max8925-i2c.c
max8997-irq.c mfd: Add irq domain support for max8997 interrupts 2012-07-09 00:16:13 +02:00
max8997.c mfd: core: Push irqdomain mapping out into devices 2012-09-15 23:22:04 +02:00
max8998-irq.c
max8998.c mfd: core: Push irqdomain mapping out into devices 2012-09-15 23:22: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: core: Push irqdomain mapping out into devices 2012-09-15 23:22:04 +02:00
max77693-irq.c mfd: MAX77693: Fix interrupt handling bug 2012-09-16 00:32:57 +02:00
max77693.c mfd: MAX77693: Fix NULL pointer error when initializing irqs 2012-09-16 00:33:09 +02:00
mc13xxx-core.c mfd: mc13xxx: Add support for mc34708 2012-11-06 23:14:08 +01:00
mc13xxx-i2c.c mfd: mc13xxx: Add support for mc34708 2012-11-06 23:14:08 +01:00
mc13xxx-spi.c mfd: mc13xxx: Add support for mc34708 2012-11-06 23:14:08 +01:00
mc13xxx.h mfd: mc13xxx: Add support for mc34708 2012-11-06 23:14:08 +01:00
mcp-core.c
mcp-sa11x0.c ARM: sa1100: move platform_data definitions 2012-09-14 11:18:57 +02:00
menelaus.c workqueue: deprecate flush[_delayed]_work_sync() 2012-08-20 14:51:24 -07:00
mfd-core.c mfd: core: Push irqdomain mapping out into devices 2012-09-15 23:22:04 +02:00
omap-usb-host.c mfd: omap-usb-host: Remove TLL specific code from USB HS core driver 2012-09-21 23:40:33 +02:00
omap-usb-tll.c mfd: omap-usb-tll: HOST TLL platform driver 2012-09-21 23:39:24 +02:00
palmas.c mfd: palmas: Add device tree handling to mfd 2012-09-23 20:41:59 +02:00
pcf50633-adc.c
pcf50633-core.c mfd: Add missing out of memory check for pcf50633 2012-07-16 15:55:41 +02:00
pcf50633-gpio.c
pcf50633-irq.c
pm8xxx-irq.c
pm8921-core.c
rc5t583-irq.c mfd: rc5t583: Fix warning messages 2012-09-23 20:51:33 +02:00
rc5t583.c MFD bits for the 3.7 merge window. 2012-10-05 12:01:30 +09:00
rdc321x-southbridge.c Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial 2012-10-01 09:06:36 -07:00
rtl8411.c mfd: Add realtek pcie card reader driver 2012-11-08 10:35:17 +01:00
rts5209.c mfd: Add realtek pcie card reader driver 2012-11-08 10:35:17 +01:00
rts5229.c mfd: Add realtek pcie card reader driver 2012-11-08 10:35:17 +01:00
rtsx_pcr.c mfd: Explicitely include slab.h to rtsx 2012-11-09 10:27:45 +01:00
rtsx_pcr.h mfd: Add realtek pcie card reader driver 2012-11-08 10:35:17 +01:00
sec-core.c mfd: core: Push irqdomain mapping out into devices 2012-09-15 23:22:04 +02:00
sec-irq.c mfd: Add s2mps11 irq driver 2012-07-16 14:31:59 +02:00
sm501.c
smsc-ece1099.c mfd: smsc: Add support for smsc gpio io/keypad driver 2012-10-01 15:27:48 +02:00
sta2x11-mfd.c mfd: core: Push irqdomain mapping out into devices 2012-09-15 23:22:04 +02:00
stmpe-i2c.c Viresh has moved 2012-06-20 14:39:36 -07:00
stmpe-spi.c Viresh has moved 2012-06-20 14:39:36 -07:00
stmpe.c mfd: Prevent STMPE from abusing mfd_add_devices' irq_base parameter 2012-11-11 23:35:03 +01:00
stmpe.h
syscon.c mfd: Add syscon driver based on regmap 2012-09-17 15:24:14 +02:00
t7l66xb.c mfd: core: Push irqdomain mapping out into devices 2012-09-15 23:22:04 +02:00
tc3589x.c mfd: Enable the tc3589x for Device Tree 2012-09-17 15:03:38 +02:00
tc6387xb.c mfd: core: Push irqdomain mapping out into devices 2012-09-15 23:22:04 +02:00
tc6393xb.c mfd: core: Push irqdomain mapping out into devices 2012-09-15 23:22:04 +02:00
ti-ssp.c mfd: core: Push irqdomain mapping out into devices 2012-09-15 23:22:04 +02:00
ti_am335x_tscadc.c IIO : ADC: tiadc: Add support of TI's ADC driver 2012-11-05 23:50:27 +01:00
timberdale.c mfd: core: Push irqdomain mapping out into devices 2012-09-15 23:22:04 +02:00
timberdale.h
tmio_core.c
tps6105x.c mfd: core: Push irqdomain mapping out into devices 2012-09-15 23:22:04 +02:00
tps6507x.c mfd: core: Push irqdomain mapping out into devices 2012-09-15 23:22:04 +02:00
tps6586x.c MFD bits for the 3.7 merge window. 2012-10-05 12:01:30 +09: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: Remove redundant check 2012-09-19 12:44:47 +02:00
tps65217.c mfd: Add backlight as subdevice to the tps65217 2012-09-24 23:53:48 +02:00
tps65910-irq.c mfd: Add tps65910-irq devicetree init and irqdomain support 2012-05-20 17:27:08 +02:00
tps65910.c mfd: tps65910: Add alarm interrupt of TPS65910 RTC to mfd device list 2012-09-29 00:32:34 +02:00
tps65911-comparator.c mfd: printk/comment fixes 2012-09-01 10:01:31 -07:00
tps65912-core.c mfd: core: Push irqdomain mapping out into devices 2012-09-15 23:22:04 +02:00
tps65912-i2c.c
tps65912-irq.c
tps65912-spi.c
twl-core.c MFD bits for the 3.7 merge window. 2012-10-05 12:01:30 +09:00
twl-core.h
twl4030-audio.c mfd: twl4030-audio: Add DT support 2012-09-18 15:45:05 +02:00
twl4030-irq.c mfd: enable wakeup on twl4030 IRQ. 2012-05-09 18:02:51 +02:00
twl4030-madc.c
twl4030-power.c
twl6030-irq.c
twl6040-core.c mfd: twl6040: Add twl6040-gpio child 2012-09-19 12:21:20 +02:00
twl6040-irq.c mfd: Add support for Device Tree to twl6040 2012-05-20 17:27:12 +02:00
ucb1x00-assabet.c
ucb1x00-core.c
ucb1x00-ts.c
ucb1400_core.c
vx855.c mfd: core: Push irqdomain mapping out into devices 2012-09-15 23:22:04 +02:00
wl1273-core.c mfd: core: Push irqdomain mapping out into devices 2012-09-15 23:22:04 +02:00
wm831x-auxadc.c mfd: Convert wm831x to irq_domain 2012-05-20 17:27:07 +02:00
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 mfd: Emulate active low IRQs as well as active high IRQs for wm831x 2012-05-20 17:27:14 +02:00
wm831x-otp.c mfd: wm831x: Feed the device UUID into device_add_randomness() 2012-07-19 10:38:31 -04:00
wm831x-spi.c
wm5102-tables.c mfd: Mark headphone detect readback wm5102 register volatile 2012-07-09 00:46:29 +02:00
wm5110-tables.c mfd: wm5110: Add register patches for revision B 2012-09-28 23:57:28 +02:00
wm8350-core.c mfd: Remove custom wm8350 cache implementation 2012-07-09 00:16:10 +02:00
wm8350-gpio.c
wm8350-i2c.c mfd: Add regmap cache support for wm8350 2012-07-09 00:16:10 +02:00
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 Merge branch 'akpm' (Andrew's patch-bomb) 2012-10-06 03:09:16 +09:00
wm8994-irq.c mfd: wm8994: Flag the interrupt block as requiring runtime PM be enabled 2012-08-07 20:30:00 +01: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