linux/drivers/input/misc
Mark Brown cd99758ba3 mfd: Convert wm831x to irq_domain
The modern idiom is to use irq_domain to allocate interrupts. This is
useful partly to allow further infrastructure to be based on the domains
and partly because it makes it much easier to allocate virtual interrupts
to devices as we don't need to allocate a contiguous range of interrupt
numbers.

Convert the wm831x driver over to this infrastructure, using a legacy
IRQ mapping if an irq_base is specified in platform data and otherwise
using a linear mapping, always registering the interrupts even if they
won't ever be used. Only boards which need to use the GPIOs as
interrupts should need to use an irq_base.

This means that we can't use the MFD irq_base management since the
unless we're using an explicit irq_base from platform data we can't rely
on a linear mapping of interrupts.  Instead we need to map things via
the irq_domain - provide a conveniencem function wm831x_irq() to save a
small amount of typing when doing so. Looking at this I couldn't clearly
see anything the MFD core could do to make this nicer.

Since we're not supporting device tree yet there's no meaningful
advantage if we don't do this conversion in one, the fact that the
interrupt resources are used for repeated IP blocks makes accessor
functions for the irq_domain more trouble to do than they're worth.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
2012-05-20 17:27:07 +02:00
..
88pm860x_onkey.c mfd: Add ability to wake the system for 88pm860x 2012-03-06 18:46:49 +01:00
ab8500-ponkey.c Merge branch 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/sameo/mfd-2.6 2012-01-13 20:43:32 -08:00
ad714x-i2c.c Input: convert I2C drivers to use module_i2c_driver() 2012-03-16 23:06:19 -07:00
ad714x-spi.c Input: convert SPI drivers to use module_spi_driver() 2012-03-16 23:06:11 -07:00
ad714x.c drivers/input: Add module.h to modular drivers implicitly using it 2011-10-31 19:31:16 -04:00
ad714x.h Input: ad714x - read the interrupt status registers in a row 2011-08-22 09:59:26 -07:00
adxl34x-i2c.c Input: convert I2C drivers to use module_i2c_driver() 2012-03-16 23:06:19 -07:00
adxl34x-spi.c Input: convert SPI drivers to use module_spi_driver() 2012-03-16 23:06:11 -07:00
adxl34x.c Merge commit 'v3.2-rc3' into next 2011-11-29 01:51:07 -08:00
adxl34x.h Input: adxl34 - make enable/disable separate from suspend/resume 2010-07-03 13:13:21 -07:00
apanel.c Input: make i2c device ids constant 2010-01-09 23:28:33 -08:00
ati_remote2.c Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input 2012-01-10 10:55:52 -08:00
atlas_btns.c Input: atlas_btns - switch to using pr_err() and friends 2010-07-13 09:43:24 -07:00
bfin_rotary.c Input: misc - use macro module_platform_driver() 2011-11-30 23:41:42 -08:00
bma150.c Input: convert I2C drivers to use module_i2c_driver() 2012-03-16 23:06:19 -07:00
cm109.c Input: cm109 - fix checking return value of usb_control_msg 2011-08-26 23:20:30 -07:00
cma3000_d0x_i2c.c Input: convert I2C drivers to use module_i2c_driver() 2012-03-16 23:06:19 -07:00
cma3000_d0x.c Merge branch 'next' into for-linus 2012-01-08 23:38:23 -08:00
cma3000_d0x.h Input: add CMA3000 accelerometer driver 2010-11-30 23:05:21 -08:00
cobalt_btns.c Input: misc - use macro module_platform_driver() 2011-11-30 23:41:42 -08:00
da9052_onkey.c Input: da9052 - fix memory leak in da9052_onkey_probe() 2012-04-11 22:15:04 -07:00
dm355evm_keys.c Input: misc - use macro module_platform_driver() 2011-11-30 23:41:42 -08:00
gp2ap002a00f.c Input: synaptics_usb - switch to module_usb_driver() 2012-03-16 23:06:34 -07:00
gpio_tilt_polled.c Input: add generic GPIO-tilt driver 2011-11-30 23:41:16 -08:00
hp_sdc_rtc.c Merge branch 'trivial' of git://git.kernel.org/pub/scm/linux/kernel/git/arnd/bkl 2010-10-22 10:49:54 -07:00
ixp4xx-beeper.c Input: misc - use macro module_platform_driver() 2011-11-30 23:41:42 -08:00
Kconfig mfd: Convert twl6040 to i2c driver, and separate it from twl core 2012-04-16 16:45:34 +02:00
keyspan_remote.c USB: convert drivers/input/* to use module_usb_driver() 2011-11-18 09:48:31 -08:00
kxtj9.c Input: convert I2C drivers to use module_i2c_driver() 2012-03-16 23:06:19 -07:00
m68kspkr.c
Makefile Input: add driver support for MAX8997-haptic 2012-03-16 22:49:25 -07:00
max8925_onkey.c Input: max8925_onkey - avoid accessing input device too early 2012-03-06 11:03:30 -08:00
max8997_haptic.c Input: add driver support for MAX8997-haptic 2012-03-16 22:49:25 -07:00
mc13783-pwrbutton.c Input: mc13783-pwrbutton - convert to use module_platform_driver() 2011-12-12 00:02:51 -08:00
mma8450.c Input: convert I2C drivers to use module_i2c_driver() 2012-03-16 23:06:19 -07:00
mpu3050.c Input: convert I2C drivers to use module_i2c_driver() 2012-03-16 23:06:19 -07:00
pcap_keys.c Input: misc - use macro module_platform_driver() 2011-11-30 23:41:42 -08:00
pcf8574_keypad.c Input: convert I2C drivers to use module_i2c_driver() 2012-03-16 23:06:19 -07:00
pcf50633-input.c Input: misc - use macro module_platform_driver() 2011-11-30 23:41:42 -08:00
pcspkr.c Input: misc - use macro module_platform_driver() 2011-11-30 23:41:42 -08:00
pm8xxx-vibrator.c Input: misc - use macro module_platform_driver() 2011-11-30 23:41:42 -08:00
pmic8xxx-pwrkey.c Input: misc - use macro module_platform_driver() 2011-11-30 23:41:42 -08:00
powermate.c USB: convert drivers/input/* to use module_usb_driver() 2011-11-18 09:48:31 -08:00
pwm-beeper.c Input: misc - use macro module_platform_driver() 2011-11-30 23:41:42 -08:00
rb532_button.c Input: misc - use macro module_platform_driver() 2011-11-30 23:41:42 -08:00
rotary_encoder.c Input: misc - use macro module_platform_driver() 2011-11-30 23:41:42 -08:00
sgi_btns.c Input: misc - use macro module_platform_driver() 2011-11-30 23:41:42 -08:00
sparcspkr.c dt/sparc: Eliminate users of of_platform_{,un}register_driver 2011-02-28 01:36:39 -07:00
twl4030-pwrbutton.c Input: revert some over-zealous conversions to module_platform_driver() 2012-01-10 23:12:46 -08:00
twl4030-vibra.c Input: twl4030-vibra - really switch from #if to #ifdef 2012-03-12 22:18:54 -07:00
twl6040-vibra.c mfd: Convert twl6040 to i2c driver, and separate it from twl core 2012-04-16 16:45:34 +02:00
uinput.c Input: uinput - allow for 0/0 min/max on absolute axes. 2011-03-31 00:02:39 -07:00
wistron_btns.c module_param: make bool parameters really bool (drivers & misc) 2012-01-13 09:32:20 +10:30
wm831x-on.c mfd: Convert wm831x to irq_domain 2012-05-20 17:27:07 +02:00
xen-kbdfront.c Xen: consolidate and simplify struct xenbus_driver instantiation 2012-01-04 17:01:17 -05:00
yealink.c USB: convert drivers/input/* to use module_usb_driver() 2011-11-18 09:48:31 -08:00
yealink.h tree-wide: Assorted spelling fixes 2010-02-09 11:13:56 +01:00