summaryrefslogtreecommitdiffstats
path: root/drivers/mfd/wm8994-irq.c (follow)
Commit message (Collapse)AuthorAgeFilesLines
* mfd: Use dev_get_platdata()Jingoo Han2013-07-311-1/+1
| | | | | | | | Use the wrapper function for retrieving the platform data instead of accessing dev->platform_data directly. Signed-off-by: Jingoo Han <jg1.han@samsung.com> Signed-off-by: Lee Jones <lee.jones@linaro.org>
* mfd: wm8994: Emulate level triggered interrupts if requiredMark Brown2013-06-111-4/+96
| | | | | | | | | The interrupt controller on the wm8994 series of devices requires a level triggered parent. If one is not available but a GPIO is available for the interrupt then emulate. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
* mfd: wm8994: Flag the interrupt block as requiring runtime PM be enabledMark Brown2012-08-071-0/+1
| | | | | | It's only required in a few circumstances but better to be safe. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* mfd: Support for user defined wm8994 irq flagsMark Brown2012-07-091-1/+9
| | | | | | Signed-off-by: Chris Rattray <crattray@opensource.wolfsonmicro.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
* mfd: wm8994: Update to fully use irq_domainMark Brown2012-05-151-6/+0
| | | | | | | | | | Take advantage of the new regmap irq_domain support to dynamically allocate interrupts, using regmap_irq_get_virq() rather than irq_base to look up the interrupts. This means that most users should not need to specify an irq_base at all. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Acked-by: Samuel Ortiz <sameo@linux.intel.com>
* mfd: Convert wm8994 to use generic regmap irq_chipMark Brown2011-12-121-163/+33
| | | | | | | | Factor out the irq_chip implementation, substantially reducing the code size for the driver. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Acked-by: Samuel Ortiz <sameo@linux.intel.com>
* mfd: Remove some unused functions in wm8894-irqMark Brown2011-12-121-10/+0
| | | | | Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Acked-by: Samuel Oritz <sameo@linux.intel.com>
* mfd: Acknowledge WM8994 IRQs before reportingMark Brown2011-07-311-6/+6
| | | | | | | | This ensures we never have a window where we've handled an interrupt but not told the hardware about it. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
* mfd: Cleanup irq namespaceThomas Gleixner2011-03-271-4/+4
| | | | | | | | Converted with coccinelle. Signed-off-by: Thomas Gleixner <tglx@linutronix.de> Acked-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
* mfd: Push byte swaps out of wm8994 bulk read pathMark Brown2011-03-231-2/+4
| | | | | | | | | | For consistency with the write path push byte swaps of the WM8994 register data out of the bulk read data path into the per-register APIs. The only user of the bulk register read is the interrupt code which is updated to do the swaps itself part of this patch. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
* mfd: Convert WM8994/58 interrupt masking to enable/disable operationsMark Brown2011-03-231-4/+4
| | | | | | | | | | | The WM8994/58 interrupt masking support is a much better match for the genirq enable and disable operations than for the mask and unmask operations. The latter are intended to used during interrupt handling for temporary changes which isn't really practical on a slow bus. Convert the operations over to match this. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
* mfd: Convert Wolfson MFD drivers to use irq_data accessor functionMark Brown2011-01-141-4/+4
| | | | | | | | Actually makes the code larger rathe rthan smaller but does provide some isolation against core API changes. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
* mfd: Convert WM8994 to new irq_ interrupt methodsMark Brown2011-01-141-15/+17
| | | | | | | | | Kernel 2.6.37 adds new interrupt methods which take a struct irq_data rather than an irq number. Convert over to these as they will become mandatory in future. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
* mfd: Add WM8994 interrupt controller supportMark Brown2010-04-051-0/+310
The WM8994 has an interrupt controller which supports interrupts for both CODEC and GPIO portions of the chip. Support this using genirq, while allowing for systems that do not have an interrupt hooked up. Wrapper functions are provided for the IRQ request and free to simplify the code in consumer drivers when handling cases where IRQs are not set up. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Acked-by: Samuel Ortiz <sameo@linux.intel.com>