pinctrl/msm: Setup GPIO chip in hierarchy
authorLina Iyer <ilina@codeaurora.org>
Fri, 15 Nov 2019 22:11:51 +0000 (15:11 -0700)
committerMarc Zyngier <maz@kernel.org>
Sat, 16 Nov 2019 10:23:15 +0000 (10:23 +0000)
commite35a6ae0eb3a7cc451e8d8db55e9b938a95de416
tree621ac3bead84a8d4ab5ab59956304856c0966b2b
parente71374c07564536d38caed3e80a1ff1c4609161d
pinctrl/msm: Setup GPIO chip in hierarchy

Some GPIOs are marked as wakeup capable and are routed to another
interrupt controller that is an always-domain and can detect interrupts
even when most of the SoC is powered off. The wakeup interrupt
controller wakes up the GIC and replays the interrupt at the GIC.

Setup the TLMM irqchip in hierarchy with the wakeup interrupt controller
and ensure the wakeup GPIOs are handled correctly.

Co-developed-by: Maulik Shah <mkshah@codeaurora.org>
Signed-off-by: Lina Iyer <ilina@codeaurora.org>
Signed-off-by: Marc Zyngier <maz@kernel.org>
Reviewed-by: Stephen Boyd <swboyd@chromium.org>
Link: https://lore.kernel.org/r/1573855915-9841-9-git-send-email-ilina@codeaurora.org
----
Changes in v2:
- Address review comments
- Fix Co-developed-by tag
Changes in v1:
- Address minor review comments
- Remove redundant call to set irq handler
- Move irq_domain_qcom_handle_wakeup() to this patch
Changes in RFC v2:
- Rebase on top of GPIO hierarchy support in linux-next
- Set the chained irq handler for summary line
drivers/pinctrl/qcom/pinctrl-msm.c
drivers/pinctrl/qcom/pinctrl-msm.h
include/linux/soc/qcom/irq.h