summaryrefslogtreecommitdiffstats
path: root/drivers/mfd/sec-irq.c
diff options
context:
space:
mode:
authorKrzysztof Kozlowski <krzk@kernel.org>2021-06-02 13:04:42 +0200
committerLee Jones <lee.jones@linaro.org>2021-11-05 15:40:06 +0100
commit6854a10526f88ad79c7a648697ec656af1d5da1a (patch)
treeaa918828de67f2842b76ea8d65936305532048c3 /drivers/mfd/sec-irq.c
parentdt-bindings: mfd: logicvc: Add patternProperties for the display (diff)
downloadlinux-6854a10526f88ad79c7a648697ec656af1d5da1a.tar.xz
linux-6854a10526f88ad79c7a648697ec656af1d5da1a.zip
mfd: sec-irq: Do not enforce (incorrect) interrupt trigger type
Interrupt line can be configured on different hardware in different way, even inverted. Therefore driver should not enforce specific trigger type - edge falling - but instead rely on Devicetree to configure it. The Samsung PMIC drivers are used only on Devicetree boards. Additionally, the PMIC datasheets describe the interrupt line as active low with a requirement of acknowledge from the CPU therefore the edge falling is not correct. Marek Szyprowski reports that together with DTS change (proper level in DTS) it fixes RTC alarm failure that he observed from time to time on TM2e board. Signed-off-by: Krzysztof Kozlowski <krzk@kernel.org> Tested-by: Marek Szyprowski <m.szyprowski@samsung.com> Signed-off-by: Lee Jones <lee.jones@linaro.org> Link: https://lore.kernel.org/r/20210602110445.33536-1-krzysztof.kozlowski@canonical.com
Diffstat (limited to 'drivers/mfd/sec-irq.c')
-rw-r--r--drivers/mfd/sec-irq.c3
1 files changed, 1 insertions, 2 deletions
diff --git a/drivers/mfd/sec-irq.c b/drivers/mfd/sec-irq.c
index e473c2fb42d5..f5f59fdc72fe 100644
--- a/drivers/mfd/sec-irq.c
+++ b/drivers/mfd/sec-irq.c
@@ -479,8 +479,7 @@ int sec_irq_init(struct sec_pmic_dev *sec_pmic)
}
ret = devm_regmap_add_irq_chip(sec_pmic->dev, sec_pmic->regmap_pmic,
- sec_pmic->irq,
- IRQF_TRIGGER_FALLING | IRQF_ONESHOT,
+ sec_pmic->irq, IRQF_ONESHOT,
0, sec_irq_chip, &sec_pmic->irq_data);
if (ret != 0) {
dev_err(sec_pmic->dev, "Failed to register IRQ chip: %d\n", ret);