diff options
author | Charles Keepax <ckeepax@opensource.wolfsonmicro.com> | 2016-11-22 16:10:27 +0000 |
---|---|---|
committer | Lee Jones <lee.jones@linaro.org> | 2017-02-13 09:29:40 +0000 |
commit | 1a86dcb3f1405a0152b9df7cebb75b839386c997 (patch) | |
tree | 7a762359b594bbec4e076165601e9e8394069e73 /drivers/mfd/arizona-irq.c | |
parent | 003db34ef33eb2d8848e0962bd72ee42d7344271 (diff) | |
download | linux-1a86dcb3f1405a0152b9df7cebb75b839386c997.tar.bz2 |
mfd: arizona: Add defines for IRQs on the main Arizona IRQ domain
Signed-off-by: Charles Keepax <ckeepax@opensource.wolfsonmicro.com>
Signed-off-by: Lee Jones <lee.jones@linaro.org>
Diffstat (limited to 'drivers/mfd/arizona-irq.c')
-rw-r--r-- | drivers/mfd/arizona-irq.c | 21 |
1 files changed, 15 insertions, 6 deletions
diff --git a/drivers/mfd/arizona-irq.c b/drivers/mfd/arizona-irq.c index 724fa5404306..88729cf6cb32 100644 --- a/drivers/mfd/arizona-irq.c +++ b/drivers/mfd/arizona-irq.c @@ -26,6 +26,9 @@ #include "arizona.h" +#define ARIZONA_AOD_IRQ_INDEX 0 +#define ARIZONA_MAIN_IRQ_INDEX 1 + static int arizona_map_irq(struct arizona *arizona, int irq) { int ret; @@ -319,7 +322,8 @@ int arizona_irq_init(struct arizona *arizona) if (aod) { ret = regmap_add_irq_chip(arizona->regmap, - irq_create_mapping(arizona->virq, 0), + irq_create_mapping(arizona->virq, + ARIZONA_AOD_IRQ_INDEX), IRQF_ONESHOT, 0, aod, &arizona->aod_irq_chip); if (ret != 0) { @@ -330,7 +334,8 @@ int arizona_irq_init(struct arizona *arizona) } ret = regmap_add_irq_chip(arizona->regmap, - irq_create_mapping(arizona->virq, 1), + irq_create_mapping(arizona->virq, + ARIZONA_MAIN_IRQ_INDEX), IRQF_ONESHOT, 0, irq, &arizona->irq_chip); if (ret != 0) { @@ -396,10 +401,12 @@ err_ctrlif: err_boot_done: free_irq(arizona->irq, arizona); err_main_irq: - regmap_del_irq_chip(irq_find_mapping(arizona->virq, 1), + regmap_del_irq_chip(irq_find_mapping(arizona->virq, + ARIZONA_MAIN_IRQ_INDEX), arizona->irq_chip); err_aod: - regmap_del_irq_chip(irq_find_mapping(arizona->virq, 0), + regmap_del_irq_chip(irq_find_mapping(arizona->virq, + ARIZONA_AOD_IRQ_INDEX), arizona->aod_irq_chip); err: return ret; @@ -411,9 +418,11 @@ int arizona_irq_exit(struct arizona *arizona) arizona_free_irq(arizona, ARIZONA_IRQ_CTRLIF_ERR, arizona); arizona_free_irq(arizona, ARIZONA_IRQ_BOOT_DONE, arizona); - regmap_del_irq_chip(irq_find_mapping(arizona->virq, 1), + regmap_del_irq_chip(irq_find_mapping(arizona->virq, + ARIZONA_MAIN_IRQ_INDEX), arizona->irq_chip); - regmap_del_irq_chip(irq_find_mapping(arizona->virq, 0), + regmap_del_irq_chip(irq_find_mapping(arizona->virq, + ARIZONA_AOD_IRQ_INDEX), arizona->aod_irq_chip); free_irq(arizona->irq, arizona); |