linux/drivers/rtc
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
..
Kconfig ARM: driver specific updates 2012-03-27 16:41:24 -07:00
Makefile rtc: driver for DA9052/53 PMIC v1 2012-03-23 16:58:40 -07:00
class.c Merge branch 'timers-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip 2011-12-05 16:53:43 -08:00
hctosys.c
interface.c rtc: Provide flag for rtc devices that don't support UIE 2012-03-15 18:23:10 -07:00
rtc-88pm860x.c Merge branch 'akpm' (Andrew's patch-bomb) 2012-04-05 15:30:34 -07:00
rtc-ab3100.c drivers/rtc/rtc-ab3100.c: add missing platform_set_drvdata() in ab3100_rtc_probe() 2010-09-22 17:22:39 -07:00
rtc-ab8500.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
rtc-at32ap700x.c treewide: Convert uses of struct resource to resource_size(ptr) 2011-06-10 14:55:36 +02:00
rtc-at91rm9200.c ARM: at91: make rm9200 rtc drivers soc independent 2011-11-28 22:50:39 +08:00
rtc-at91sam9.c ARM: device tree work 2012-03-27 16:47:35 -07:00
rtc-au1xxx.c
rtc-bfin.c rtc: convert drivers/rtc/* to use module_platform_driver() 2012-01-10 16:30:53 -08:00
rtc-bq32k.c rtc: convert rtc i2c drivers to module_i2c_driver 2012-03-23 16:58:39 -07:00
rtc-bq4802.c rtc: convert drivers/rtc/* to use module_platform_driver() 2012-01-10 16:30:53 -08:00
rtc-cmos.c drivers/rtc: remove IRQF_DISABLED 2012-03-23 16:58:39 -07:00
rtc-coh901331.c drivers/rtc: remove IRQF_DISABLED 2012-03-23 16:58:39 -07:00
rtc-core.h
rtc-da9052.c rtc: driver for DA9052/53 PMIC v1 2012-03-23 16:58:40 -07:00
rtc-davinci.c drivers/rtc: remove IRQF_DISABLED 2012-03-23 16:58:39 -07:00
rtc-dev.c rtc: Fix ioctl error path return 2011-06-01 19:29:39 -07:00
rtc-dm355evm.c rtc: convert drivers/rtc/* to use module_platform_driver() 2012-01-10 16:30:53 -08:00
rtc-ds1216.c
rtc-ds1286.c rtc: convert drivers/rtc/* to use module_platform_driver() 2012-01-10 16:30:53 -08:00
rtc-ds1302.c sh: mach-snapgear: Kill off machtype, consolidate board def. 2010-10-29 19:06:53 +09:00
rtc-ds1305.c rtc: convert rtc spi drivers to module_spi_driver 2012-03-23 16:58:39 -07:00
rtc-ds1307.c drivers/rtc/rtc-ds1307.c: fix BUG shown with lock debugging enabled 2012-04-25 21:26:34 -07:00
rtc-ds1374.c rtc: convert rtc i2c drivers to module_i2c_driver 2012-03-23 16:58:39 -07:00
rtc-ds1390.c rtc: convert rtc spi drivers to module_spi_driver 2012-03-23 16:58:39 -07:00
rtc-ds1511.c drivers/rtc: remove IRQF_DISABLED 2012-03-23 16:58:39 -07:00
rtc-ds1553.c drivers/rtc: remove IRQF_DISABLED 2012-03-23 16:58:39 -07:00
rtc-ds1672.c rtc: convert rtc i2c drivers to module_i2c_driver 2012-03-23 16:58:39 -07:00
rtc-ds1742.c rtc: convert drivers/rtc/* to use module_platform_driver() 2012-01-10 16:30:53 -08:00
rtc-ds3232.c rtc: convert rtc i2c drivers to module_i2c_driver 2012-03-23 16:58:39 -07:00
rtc-ds3234.c rtc: convert rtc spi drivers to module_spi_driver 2012-03-23 16:58:39 -07:00
rtc-efi.c drivers/rtc/rtc-efi.c: fix section mismatch warning 2012-04-12 13:12:12 -07:00
rtc-em3027.c rtc: convert rtc i2c drivers to module_i2c_driver 2012-03-23 16:58:39 -07:00
rtc-ep93xx.c rtc: ep93xx: Fix 'rtc' may be used uninitialized warning 2011-08-10 15:54:24 -07:00
rtc-fm3130.c rtc: convert rtc i2c drivers to module_i2c_driver 2012-03-23 16:58:39 -07:00
rtc-generic.c
rtc-imxdi.c drivers/rtc/rtc-imxdi.c needs linux/sched.h 2011-09-14 18:09:37 -07:00
rtc-isl1208.c rtc: convert rtc i2c drivers to module_i2c_driver 2012-03-23 16:58:39 -07:00
rtc-isl12022.c rtc: convert rtc i2c drivers to module_i2c_driver 2012-03-23 16:58:39 -07:00
rtc-jz4740.c drivers/rtc/rtc-jz4740.c: make jz4740_rtc_driver static 2012-01-10 16:30:53 -08:00
rtc-lib.c rtc: Initialized rtc_time->tm_isdst 2011-08-26 17:26:35 -07:00
rtc-lpc32xx.c drivers/rtc: remove IRQF_DISABLED 2012-03-23 16:58:39 -07:00
rtc-ls1x.c MIPS: add RTC support for loongson1B 2012-03-23 16:58:39 -07:00
rtc-m41t80.c rtc: convert rtc i2c drivers to module_i2c_driver 2012-03-23 16:58:39 -07:00
rtc-m41t93.c rtc: convert rtc spi drivers to module_spi_driver 2012-03-23 16:58:39 -07:00
rtc-m41t94.c rtc: convert rtc spi drivers to module_spi_driver 2012-03-23 16:58:39 -07:00
rtc-m48t35.c rtc: convert drivers/rtc/* to use module_platform_driver() 2012-01-10 16:30:53 -08:00
rtc-m48t59.c rtc: convert drivers/rtc/* to use module_platform_driver() 2012-01-10 16:30:53 -08:00
rtc-m48t86.c rtc: convert drivers/rtc/* to use module_platform_driver() 2012-01-10 16:30:53 -08:00
rtc-max6900.c rtc: convert rtc i2c drivers to module_i2c_driver 2012-03-23 16:58:39 -07:00
rtc-max6902.c rtc: convert rtc spi drivers to module_spi_driver 2012-03-23 16:58:39 -07:00
rtc-max8925.c drivers/rtc/rtc-max8925.c: fix alarm->enabled mistake in max8925_rtc_read_alarm/max8925_rtc_set_alarm 2012-03-23 16:58:39 -07:00
rtc-max8998.c rtc: convert drivers/rtc/* to use module_platform_driver() 2012-01-10 16:30:53 -08:00
rtc-mc13xxx.c drivers/rtc/rtc-mc13xxx.c: make mc13xxx_rtc_idtable static 2012-01-10 16:30:53 -08:00
rtc-mpc5121.c Merge branch 'timers-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip 2012-03-29 14:16:48 -07:00
rtc-mrst.c drivers/rtc: remove IRQF_DISABLED 2012-03-23 16:58:39 -07:00
rtc-msm6242.c rtc: msm6242: Initialize drvdata before registering device 2011-05-06 18:02:03 -07:00
rtc-mv.c ARM: More device tree support updates 2012-03-28 12:34:33 -07:00
rtc-mxc.c drivers/rtc/rtc-mxc.c: make alarm work 2012-01-10 16:30:52 -08:00
rtc-nuc900.c drivers/rtc: remove IRQF_DISABLED 2012-03-23 16:58:39 -07:00
rtc-omap.c drivers/rtc: remove IRQF_DISABLED 2012-03-23 16:58:39 -07:00
rtc-pcap.c rtc: pcap: Initialize drvdata before registering device 2011-05-06 18:02:04 -07:00
rtc-pcf2123.c rtc: convert rtc spi drivers to module_spi_driver 2012-03-23 16:58:39 -07:00
rtc-pcf8563.c rtc: convert rtc i2c drivers to module_i2c_driver 2012-03-23 16:58:39 -07:00
rtc-pcf8583.c rtc: convert rtc i2c drivers to module_i2c_driver 2012-03-23 16:58:39 -07:00
rtc-pcf50633.c rtc: convert drivers/rtc/* to use module_platform_driver() 2012-01-10 16:30:53 -08:00
rtc-pl030.c Merge branch 'amba' of git://git.linaro.org/people/rmk/linux-arm 2012-03-23 17:36:29 -07:00
rtc-pl031.c drivers/rtc/rtc-pl031.c: enable clock on all ST variants 2012-04-12 13:12:12 -07:00
rtc-pm8xxx.c drivers/rtc/rtc-pm8xxx.c: make pm8xxx_rtc_pm_ops static 2012-03-23 16:58:39 -07:00
rtc-proc.c RTC: Include information about UIE and PIE in RTC driver proc. 2011-03-09 11:25:04 -08:00
rtc-ps3.c
rtc-puv3.c rtc-puv3: solve section mismatch in rtc-puv3.c 2012-01-10 10:29:42 +08:00
rtc-pxa.c drivers/rtc: remove IRQF_DISABLED 2012-03-23 16:58:39 -07:00
rtc-r9701.c drivers/rtc/rtc-r9701.c: reset registers if invalid values are detected 2012-04-12 13:12:12 -07:00
rtc-rp5c01.c rtc: rp5c01: Initialize drvdata before registering device 2011-05-06 18:02:05 -07:00
rtc-rs5c313.c rtc: rtc-rs5c313: ctrl_in/outX to __raw_read/writeX conversion. 2010-10-27 15:30:32 +09:00
rtc-rs5c348.c rtc: convert rtc spi drivers to module_spi_driver 2012-03-23 16:58:39 -07:00
rtc-rs5c372.c rtc: convert rtc i2c drivers to module_i2c_driver 2012-03-23 16:58:39 -07:00
rtc-rv3029c2.c rtc: convert rtc i2c drivers to module_i2c_driver 2012-03-23 16:58:39 -07:00
rtc-rx8025.c rtc: convert rtc i2c drivers to module_i2c_driver 2012-03-23 16:58:39 -07:00
rtc-rx8581.c rtc: convert rtc i2c drivers to module_i2c_driver 2012-03-23 16:58:39 -07:00
rtc-s3c.c drivers/rtc/rtc-s3c.c: add placeholder for driver private data 2012-04-12 13:12:12 -07:00
rtc-s35390a.c rtc: convert rtc i2c drivers to module_i2c_driver 2012-03-23 16:58:39 -07:00
rtc-sa1100.c ARM: cleanups of io includes 2012-03-29 18:02:10 -07:00
rtc-sh.c drivers/rtc: remove IRQF_DISABLED 2012-03-23 16:58:39 -07:00
rtc-spear.c rtc/rtc-spear: call platform_set_drvdata() before registering rtc device 2012-03-23 16:58:39 -07:00
rtc-starfire.c
rtc-stk17ta8.c drivers/rtc: remove IRQF_DISABLED 2012-03-23 16:58:39 -07:00
rtc-stmp3xxx.c rtc: convert drivers/rtc/* to use module_platform_driver() 2012-01-10 16:30:53 -08:00
rtc-sun4v.c
rtc-sysfs.c
rtc-tegra.c drivers/rtc/rtc-tegra.c: properly initialize spinlock 2011-07-25 20:57:17 -07:00
rtc-test.c RTC: Fix the cross interrupt issue on rtc-test. 2011-03-09 11:25:07 -08:00
rtc-tile.c tile: add an RTC driver for the Tilera hypervisor 2011-05-17 14:44:36 -04:00
rtc-twl.c drivers/rtc/rtc-twl.c: use static register while reading time 2012-04-12 13:12:12 -07:00
rtc-tx4939.c drivers/rtc: remove IRQF_DISABLED 2012-03-23 16:58:39 -07:00
rtc-v3020.c rtc: convert drivers/rtc/* to use module_platform_driver() 2012-01-10 16:30:53 -08:00
rtc-vr41xx.c drivers/rtc: remove IRQF_DISABLED 2012-03-23 16:58:39 -07:00
rtc-vt8500.c rtc: convert drivers/rtc/* to use module_platform_driver() 2012-01-10 16:30:53 -08:00
rtc-wm831x.c mfd: Convert wm831x to irq_domain 2012-05-20 17:27:07 +02:00
rtc-wm8350.c rtc: convert drivers/rtc/* to use module_platform_driver() 2012-01-10 16:30:53 -08:00
rtc-x1205.c rtc: convert rtc i2c drivers to module_i2c_driver 2012-03-23 16:58:39 -07:00