diff options
| author | Sangbeom Kim <sbkim73@samsung.com> | 2012-07-11 08:08:11 -0400 |
|---|---|---|
| committer | Samuel Ortiz <sameo@linux.intel.com> | 2012-07-16 08:31:59 -0400 |
| commit | 6445b84abf91549d8568fb5d9155447e6dba86cc (patch) | |
| tree | 07b8341d4360f80630146cb21c171d6e518202d9 /include/linux/mfd/samsung | |
| parent | 9b6d1343068d87f06c8dabf6628a30ea38082eb0 (diff) | |
mfd: Add s2mps11 irq driver
This patch support irq handling driver for s2mps11.
As this patch use regmap_irq, s5m8767 and s5m8763 are modified with
regmap_irq.
Signed-off-by: Sangbeom Kim <sbkim73@samsung.com>
Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
Diffstat (limited to 'include/linux/mfd/samsung')
| -rw-r--r-- | include/linux/mfd/samsung/core.h | 2 | ||||
| -rw-r--r-- | include/linux/mfd/samsung/irq.h | 42 |
2 files changed, 44 insertions, 0 deletions
diff --git a/include/linux/mfd/samsung/core.h b/include/linux/mfd/samsung/core.h index 323e200bc82c..b50c38f8bc48 100644 --- a/include/linux/mfd/samsung/core.h +++ b/include/linux/mfd/samsung/core.h | |||
| @@ -48,6 +48,8 @@ struct sec_pmic_dev { | |||
| 48 | int device_type; | 48 | int device_type; |
| 49 | int irq_base; | 49 | int irq_base; |
| 50 | int irq; | 50 | int irq; |
| 51 | struct regmap_irq_chip_data *irq_data; | ||
| 52 | |||
| 51 | int ono; | 53 | int ono; |
| 52 | u8 irq_masks_cur[NUM_IRQ_REGS]; | 54 | u8 irq_masks_cur[NUM_IRQ_REGS]; |
| 53 | u8 irq_masks_cache[NUM_IRQ_REGS]; | 55 | u8 irq_masks_cache[NUM_IRQ_REGS]; |
diff --git a/include/linux/mfd/samsung/irq.h b/include/linux/mfd/samsung/irq.h index 7f7a6248f707..d43b4f9e7fb2 100644 --- a/include/linux/mfd/samsung/irq.h +++ b/include/linux/mfd/samsung/irq.h | |||
| @@ -13,6 +13,48 @@ | |||
| 13 | #ifndef __LINUX_MFD_SEC_IRQ_H | 13 | #ifndef __LINUX_MFD_SEC_IRQ_H |
| 14 | #define __LINUX_MFD_SEC_IRQ_H | 14 | #define __LINUX_MFD_SEC_IRQ_H |
| 15 | 15 | ||
| 16 | enum s2mps11_irq { | ||
| 17 | S2MPS11_IRQ_PWRONF, | ||
| 18 | S2MPS11_IRQ_PWRONR, | ||
| 19 | S2MPS11_IRQ_JIGONBF, | ||
| 20 | S2MPS11_IRQ_JIGONBR, | ||
| 21 | S2MPS11_IRQ_ACOKBF, | ||
| 22 | S2MPS11_IRQ_ACOKBR, | ||
| 23 | S2MPS11_IRQ_PWRON1S, | ||
| 24 | S2MPS11_IRQ_MRB, | ||
| 25 | |||
| 26 | S2MPS11_IRQ_RTC60S, | ||
| 27 | S2MPS11_IRQ_RTCA1, | ||
| 28 | S2MPS11_IRQ_RTCA2, | ||
| 29 | S2MPS11_IRQ_SMPL, | ||
| 30 | S2MPS11_IRQ_RTC1S, | ||
| 31 | S2MPS11_IRQ_WTSR, | ||
| 32 | |||
| 33 | S2MPS11_IRQ_INT120C, | ||
| 34 | S2MPS11_IRQ_INT140C, | ||
| 35 | |||
| 36 | S2MPS11_IRQ_NR, | ||
| 37 | }; | ||
| 38 | |||
| 39 | #define S2MPS11_IRQ_PWRONF_MASK (1 << 0) | ||
| 40 | #define S2MPS11_IRQ_PWRONR_MASK (1 << 1) | ||
| 41 | #define S2MPS11_IRQ_JIGONBF_MASK (1 << 2) | ||
| 42 | #define S2MPS11_IRQ_JIGONBR_MASK (1 << 3) | ||
| 43 | #define S2MPS11_IRQ_ACOKBF_MASK (1 << 4) | ||
| 44 | #define S2MPS11_IRQ_ACOKBR_MASK (1 << 5) | ||
| 45 | #define S2MPS11_IRQ_PWRON1S_MASK (1 << 6) | ||
| 46 | #define S2MPS11_IRQ_MRB_MASK (1 << 7) | ||
| 47 | |||
| 48 | #define S2MPS11_IRQ_RTC60S_MASK (1 << 0) | ||
| 49 | #define S2MPS11_IRQ_RTCA1_MASK (1 << 1) | ||
| 50 | #define S2MPS11_IRQ_RTCA2_MASK (1 << 2) | ||
| 51 | #define S2MPS11_IRQ_SMPL_MASK (1 << 3) | ||
| 52 | #define S2MPS11_IRQ_RTC1S_MASK (1 << 4) | ||
| 53 | #define S2MPS11_IRQ_WTSR_MASK (1 << 5) | ||
| 54 | |||
| 55 | #define S2MPS11_IRQ_INT120C_MASK (1 << 0) | ||
| 56 | #define S2MPS11_IRQ_INT140C_MASK (1 << 1) | ||
| 57 | |||
| 16 | enum s5m8767_irq { | 58 | enum s5m8767_irq { |
| 17 | S5M8767_IRQ_PWRR, | 59 | S5M8767_IRQ_PWRR, |
| 18 | S5M8767_IRQ_PWRF, | 60 | S5M8767_IRQ_PWRF, |
