diff options
author | Uwe Kleine-König <u.kleine-koenig@pengutronix.de> | 2010-06-30 06:16:24 -0400 |
---|---|---|
committer | Uwe Kleine-König <u.kleine-koenig@pengutronix.de> | 2010-07-26 08:27:25 -0400 |
commit | 2dcf78c0eeae3bd07082821557014f25f02ca2e9 (patch) | |
tree | 8ca5c4c7f35c9a9ab07fcd9732124c905e609aa1 /drivers/mfd/wm831x-irq.c | |
parent | 6b6322676add0fa2713d0ec89a28390fd4d907f5 (diff) | |
parent | 5109a4597f7e758b8d20694392d0361a0b4c43b1 (diff) |
Merge branch 'imx/for-2.6.36' of git://git.pengutronix.de/git/ukl/linux-2.6 into HEAD
There are some more conflicts than detected by git, namely support for
the newly added cpuimx machines needed to be converted to dynamic device
registration.
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Conflicts:
arch/arm/mach-imx/Makefile
arch/arm/mach-imx/devices.c
arch/arm/mach-imx/devices.h
arch/arm/mach-imx/eukrea_mbimx27-baseboard.c
arch/arm/mach-mx2/Kconfig
arch/arm/mach-mx25/Makefile
arch/arm/mach-mx25/devices.c
arch/arm/plat-mxc/include/mach/mx25.h
arch/arm/plat-mxc/include/mach/mxc_nand.h
Diffstat (limited to 'drivers/mfd/wm831x-irq.c')
-rw-r--r-- | drivers/mfd/wm831x-irq.c | 18 |
1 files changed, 8 insertions, 10 deletions
diff --git a/drivers/mfd/wm831x-irq.c b/drivers/mfd/wm831x-irq.c index 4c1122ceb443..7dabe4dbd373 100644 --- a/drivers/mfd/wm831x-irq.c +++ b/drivers/mfd/wm831x-irq.c | |||
@@ -39,8 +39,6 @@ struct wm831x_irq_data { | |||
39 | int primary; | 39 | int primary; |
40 | int reg; | 40 | int reg; |
41 | int mask; | 41 | int mask; |
42 | irq_handler_t handler; | ||
43 | void *handler_data; | ||
44 | }; | 42 | }; |
45 | 43 | ||
46 | static struct wm831x_irq_data wm831x_irqs[] = { | 44 | static struct wm831x_irq_data wm831x_irqs[] = { |
@@ -492,6 +490,14 @@ int wm831x_irq_init(struct wm831x *wm831x, int irq) | |||
492 | 490 | ||
493 | mutex_init(&wm831x->irq_lock); | 491 | mutex_init(&wm831x->irq_lock); |
494 | 492 | ||
493 | /* Mask the individual interrupt sources */ | ||
494 | for (i = 0; i < ARRAY_SIZE(wm831x->irq_masks_cur); i++) { | ||
495 | wm831x->irq_masks_cur[i] = 0xffff; | ||
496 | wm831x->irq_masks_cache[i] = 0xffff; | ||
497 | wm831x_reg_write(wm831x, WM831X_INTERRUPT_STATUS_1_MASK + i, | ||
498 | 0xffff); | ||
499 | } | ||
500 | |||
495 | if (!irq) { | 501 | if (!irq) { |
496 | dev_warn(wm831x->dev, | 502 | dev_warn(wm831x->dev, |
497 | "No interrupt specified - functionality limited\n"); | 503 | "No interrupt specified - functionality limited\n"); |
@@ -507,14 +513,6 @@ int wm831x_irq_init(struct wm831x *wm831x, int irq) | |||
507 | wm831x->irq = irq; | 513 | wm831x->irq = irq; |
508 | wm831x->irq_base = pdata->irq_base; | 514 | wm831x->irq_base = pdata->irq_base; |
509 | 515 | ||
510 | /* Mask the individual interrupt sources */ | ||
511 | for (i = 0; i < ARRAY_SIZE(wm831x->irq_masks_cur); i++) { | ||
512 | wm831x->irq_masks_cur[i] = 0xffff; | ||
513 | wm831x->irq_masks_cache[i] = 0xffff; | ||
514 | wm831x_reg_write(wm831x, WM831X_INTERRUPT_STATUS_1_MASK + i, | ||
515 | 0xffff); | ||
516 | } | ||
517 | |||
518 | /* Register them with genirq */ | 516 | /* Register them with genirq */ |
519 | for (cur_irq = wm831x->irq_base; | 517 | for (cur_irq = wm831x->irq_base; |
520 | cur_irq < ARRAY_SIZE(wm831x_irqs) + wm831x->irq_base; | 518 | cur_irq < ARRAY_SIZE(wm831x_irqs) + wm831x->irq_base; |