diff options
author | Graeme Gregory <gg@slimlogic.co.uk> | 2011-05-02 17:20:04 -0400 |
---|---|---|
committer | Liam Girdwood <lrg@slimlogic.co.uk> | 2011-05-27 05:48:43 -0400 |
commit | e3471bdc2784ee20a0d636c5904200c2d1148ef9 (patch) | |
tree | b8031223f737830b05d59189fae09452cabfd8aa /include/linux | |
parent | 2537df722d338ab687d7ed91dc589265c0d14aec (diff) |
TPS65910: IRQ: Add interrupt controller
This module controls the interrupt handling for the tps chip. The
interrupt sources are the following:
- GPIO falling/rising edge detection
- Battery voltage below/above threshold
- PWRON signal
- PWRHOLD signal
- Temperature detection
- RTC alarm and periodic event
Signed-off-by: Graeme Gregory <gg@slimlogic.co.uk>
Signed-off-by: Jorge Eduardo Candelaria <jedu@slimlogic.co.uk>
Reviewed-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Acked-by: Samuel Ortiz <sameo@linux.intel.com>
Signed-off-by: Liam Girdwood <lrg@slimlogic.co.uk>
Diffstat (limited to 'include/linux')
-rw-r--r-- | include/linux/mfd/tps65910.h | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/include/linux/mfd/tps65910.h b/include/linux/mfd/tps65910.h index 0e01d504ab58..8afe91c85587 100644 --- a/include/linux/mfd/tps65910.h +++ b/include/linux/mfd/tps65910.h | |||
@@ -715,6 +715,8 @@ | |||
715 | 715 | ||
716 | struct tps65910_board { | 716 | struct tps65910_board { |
717 | int gpio_base; | 717 | int gpio_base; |
718 | int irq; | ||
719 | int irq_base; | ||
718 | struct regulator_init_data *tps65910_pmic_init_data; | 720 | struct regulator_init_data *tps65910_pmic_init_data; |
719 | }; | 721 | }; |
720 | 722 | ||
@@ -745,11 +747,14 @@ struct tps65910 { | |||
745 | }; | 747 | }; |
746 | 748 | ||
747 | struct tps65910_platform_data { | 749 | struct tps65910_platform_data { |
750 | int irq; | ||
748 | int irq_base; | 751 | int irq_base; |
749 | }; | 752 | }; |
750 | 753 | ||
751 | int tps65910_set_bits(struct tps65910 *tps65910, u8 reg, u8 mask); | 754 | int tps65910_set_bits(struct tps65910 *tps65910, u8 reg, u8 mask); |
752 | int tps65910_clear_bits(struct tps65910 *tps65910, u8 reg, u8 mask); | 755 | int tps65910_clear_bits(struct tps65910 *tps65910, u8 reg, u8 mask); |
753 | void tps65910_gpio_init(struct tps65910 *tps65910, int gpio_base); | 756 | void tps65910_gpio_init(struct tps65910 *tps65910, int gpio_base); |
757 | int tps65910_irq_init(struct tps65910 *tps65910, int irq, | ||
758 | struct tps65910_platform_data *pdata); | ||
754 | 759 | ||
755 | #endif /* __LINUX_MFD_TPS65910_H */ | 760 | #endif /* __LINUX_MFD_TPS65910_H */ |