2019-11-15 22:23:24

by Lina Iyer

[permalink] [raw]
Subject: [PATCH v2 00/12] Support wakeup capable GPIOs

Hi,

Here is the spin of the series with the review comments addressed and
Reviewed-by tags added. Thanks all for your reviews.

Andy/Bjorn, would you pull patches 10-12 in your tree? Marc would be
pulling the patches 1-9 into the irqchip tree.

Thanks.

--Lina

---
Changes in v2:
- Address review comments
- Added Reviewed-by tags

Changes in v1[7]:
- Address review comments
- Add Reviewed-by tags
- Drop SPI config patches
- Rebase on top of Rajendra's PDC changes [6]

Changes in RFC v2[5]:
- Address review comments #3, #4, #6, #7, #8, #9, #10
- Rebased on top of linux-next GPIO latest patches [1],[3],[4]
- Increase PDC max irqs in #2 (avoid merge conflicts with
downstream)
- Add Reviewed-by #5


[1].
https://lore.kernel.org/linux-gpio/[email protected]/
[2].
https://lkml.org/lkml/2019/5/7/1173
[3].
https://lore.kernel.org/r/[email protected]
[4].
https://lore.kernel.org/r/[email protected]
[5].
https://lore.kernel.org/linux-gpio/[email protected]/t/
[6].
https://lore.kernel.org/linux-arm-msm/[email protected]/
[7].
https://lore.kernel.org/linux-gpio/[email protected]/T/#t

Lina Iyer (10):
irqdomain: add bus token DOMAIN_BUS_WAKEUP
drivers: irqchip: qcom-pdc: update max PDC interrupts
drivers: irqchip: pdc: Do not toggle IRQ_ENABLE during mask/unmask
drivers: irqchip: add PDC irqdomain for wakeup capable GPIOs
of: irq: document properties for wakeup interrupt parent
drivers: pinctrl: msm: setup GPIO chip in hierarchy
drivers: pinctrl: sdm845: add PDC wakeup interrupt map for GPIOs
arm64: dts: qcom: add PDC interrupt controller for SDM845
arm64: dts: qcom: setup PDC as the wakeup parent for TLMM on SDM845
arm64: defconfig: enable PDC interrupt controller for Qualcomm SDM845

Maulik Shah (2):
genirq: Introduce irq_chip_get/set_parent_state calls
drivers: irqchip: pdc: Add irqchip set/get state calls

.../bindings/interrupt-controller/interrupts.txt | 12 ++
arch/arm64/boot/dts/qcom/sdm845.dtsi | 10 ++
arch/arm64/configs/defconfig | 1 +
drivers/irqchip/qcom-pdc.c | 147 +++++++++++++++++++--
drivers/pinctrl/qcom/pinctrl-msm.c | 112 +++++++++++++++-
drivers/pinctrl/qcom/pinctrl-msm.h | 14 ++
drivers/pinctrl/qcom/pinctrl-sdm845.c | 23 +++-
include/linux/irq.h | 6 +
include/linux/irqdomain.h | 1 +
include/linux/soc/qcom/irq.h | 34 +++++
kernel/irq/chip.c | 44 ++++++
11 files changed, 388 insertions(+), 16 deletions(-)
create mode 100644 include/linux/soc/qcom/irq.h

--
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
a Linux Foundation Collaborative Project


2019-11-15 22:23:30

by Lina Iyer

[permalink] [raw]
Subject: [PATCH v2 01/12] irqdomain: add bus token DOMAIN_BUS_WAKEUP

A single controller can handle normal interrupts and wake-up interrupts
independently, with a different numbering space. It is thus crucial to
allow the driver for such a controller discriminate between the two.

A simple way to do so is to tag the wake-up irqdomain with a "bus token"
that indicates the wake-up domain. This slightly abuses the notion of
bus, but also radically simplifies the design of such a driver. Between
two evils, we choose the least damaging.

Suggested-by: Stephen Boyd <[email protected]>
Signed-off-by: Lina Iyer <[email protected]>
Reviewed-by: Stephen Boyd <[email protected]>
---
include/linux/irqdomain.h | 1 +
1 file changed, 1 insertion(+)

diff --git a/include/linux/irqdomain.h b/include/linux/irqdomain.h
index 583e7ab..3c340db 100644
--- a/include/linux/irqdomain.h
+++ b/include/linux/irqdomain.h
@@ -83,6 +83,7 @@ enum irq_domain_bus_token {
DOMAIN_BUS_IPI,
DOMAIN_BUS_FSL_MC_MSI,
DOMAIN_BUS_TI_SCI_INTA_MSI,
+ DOMAIN_BUS_WAKEUP,
};

/**
--
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
a Linux Foundation Collaborative Project

2019-11-16 10:32:01

by Marc Zyngier

[permalink] [raw]
Subject: Re: [PATCH v2 00/12] Support wakeup capable GPIOs

On Fri, 15 Nov 2019 22:11:43 +0000,
Lina Iyer <[email protected]> wrote:
>
> Hi,
>
> Here is the spin of the series with the review comments addressed and
> Reviewed-by tags added. Thanks all for your reviews.
>
> Andy/Bjorn, would you pull patches 10-12 in your tree? Marc would be
> pulling the patches 1-9 into the irqchip tree.

Applied 1-9 with some minor subject refactoring and series reordering,
and pushed out in irq/irqchip-next. Any late change, please provide
fixes on top of that branch.

Thanks,

M.

--
Jazz is not dead, it just smells funny.

2019-11-18 23:38:40

by Lina Iyer

[permalink] [raw]
Subject: Re: [PATCH v2 00/12] Support wakeup capable GPIOs

On Sat, Nov 16 2019 at 03:30 -0700, Marc Zyngier wrote:
>On Fri, 15 Nov 2019 22:11:43 +0000,
>Lina Iyer <[email protected]> wrote:
>>
>> Hi,
>>
>> Here is the spin of the series with the review comments addressed and
>> Reviewed-by tags added. Thanks all for your reviews.
>>
>> Andy/Bjorn, would you pull patches 10-12 in your tree? Marc would be
>> pulling the patches 1-9 into the irqchip tree.
>
>Applied 1-9 with some minor subject refactoring and series reordering,
>and pushed out in irq/irqchip-next. Any late change, please provide
>fixes on top of that branch.
>
Sure. Thanks Marc.

--Lina

2019-11-19 01:08:58

by Bjorn Andersson

[permalink] [raw]
Subject: Re: [PATCH v2 00/12] Support wakeup capable GPIOs

On Fri 15 Nov 14:11 PST 2019, Lina Iyer wrote:

> Hi,
>
> Here is the spin of the series with the review comments addressed and
> Reviewed-by tags added. Thanks all for your reviews.
>
> Andy/Bjorn, would you pull patches 10-12 in your tree? Marc would be
> pulling the patches 1-9 into the irqchip tree.
>

Patches 10-12 picked up for v5.6

Regards,
Bjorn

> Thanks.
>
> --Lina
>
> ---
> Changes in v2:
> - Address review comments
> - Added Reviewed-by tags
>
> Changes in v1[7]:
> - Address review comments
> - Add Reviewed-by tags
> - Drop SPI config patches
> - Rebase on top of Rajendra's PDC changes [6]
>
> Changes in RFC v2[5]:
> - Address review comments #3, #4, #6, #7, #8, #9, #10
> - Rebased on top of linux-next GPIO latest patches [1],[3],[4]
> - Increase PDC max irqs in #2 (avoid merge conflicts with
> downstream)
> - Add Reviewed-by #5
>
>
> [1].
> https://lore.kernel.org/linux-gpio/[email protected]/
> [2].
> https://lkml.org/lkml/2019/5/7/1173
> [3].
> https://lore.kernel.org/r/[email protected]
> [4].
> https://lore.kernel.org/r/[email protected]
> [5].
> https://lore.kernel.org/linux-gpio/[email protected]/t/
> [6].
> https://lore.kernel.org/linux-arm-msm/[email protected]/
> [7].
> https://lore.kernel.org/linux-gpio/[email protected]/T/#t
>
> Lina Iyer (10):
> irqdomain: add bus token DOMAIN_BUS_WAKEUP
> drivers: irqchip: qcom-pdc: update max PDC interrupts
> drivers: irqchip: pdc: Do not toggle IRQ_ENABLE during mask/unmask
> drivers: irqchip: add PDC irqdomain for wakeup capable GPIOs
> of: irq: document properties for wakeup interrupt parent
> drivers: pinctrl: msm: setup GPIO chip in hierarchy
> drivers: pinctrl: sdm845: add PDC wakeup interrupt map for GPIOs
> arm64: dts: qcom: add PDC interrupt controller for SDM845
> arm64: dts: qcom: setup PDC as the wakeup parent for TLMM on SDM845
> arm64: defconfig: enable PDC interrupt controller for Qualcomm SDM845
>
> Maulik Shah (2):
> genirq: Introduce irq_chip_get/set_parent_state calls
> drivers: irqchip: pdc: Add irqchip set/get state calls
>
> .../bindings/interrupt-controller/interrupts.txt | 12 ++
> arch/arm64/boot/dts/qcom/sdm845.dtsi | 10 ++
> arch/arm64/configs/defconfig | 1 +
> drivers/irqchip/qcom-pdc.c | 147 +++++++++++++++++++--
> drivers/pinctrl/qcom/pinctrl-msm.c | 112 +++++++++++++++-
> drivers/pinctrl/qcom/pinctrl-msm.h | 14 ++
> drivers/pinctrl/qcom/pinctrl-sdm845.c | 23 +++-
> include/linux/irq.h | 6 +
> include/linux/irqdomain.h | 1 +
> include/linux/soc/qcom/irq.h | 34 +++++
> kernel/irq/chip.c | 44 ++++++
> 11 files changed, 388 insertions(+), 16 deletions(-)
> create mode 100644 include/linux/soc/qcom/irq.h
>
> --
> The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
> a Linux Foundation Collaborative Project
>

2019-11-20 15:41:20

by tip-bot2 for Jacob Pan

[permalink] [raw]
Subject: [tip: irq/core] irqdomain: Add bus token DOMAIN_BUS_WAKEUP

The following commit has been merged into the irq/core branch of tip:

Commit-ID: d46bca2b5d06cbb5f3e66945080f275bcfab7181
Gitweb: https://git.kernel.org/tip/d46bca2b5d06cbb5f3e66945080f275bcfab7181
Author: Lina Iyer <[email protected]>
AuthorDate: Fri, 15 Nov 2019 15:11:44 -07:00
Committer: Marc Zyngier <[email protected]>
CommitterDate: Sat, 16 Nov 2019 10:18:52

irqdomain: Add bus token DOMAIN_BUS_WAKEUP

A single controller can handle normal interrupts and wake-up interrupts
independently, with a different numbering space. It is thus crucial to
allow the driver for such a controller discriminate between the two.

A simple way to do so is to tag the wake-up irqdomain with a "bus token"
that indicates the wake-up domain. This slightly abuses the notion of
bus, but also radically simplifies the design of such a driver. Between
two evils, we choose the least damaging.

Suggested-by: Stephen Boyd <[email protected]>
Signed-off-by: Lina Iyer <[email protected]>
Signed-off-by: Marc Zyngier <[email protected]>
Reviewed-by: Stephen Boyd <[email protected]>
Link: https://lore.kernel.org/r/[email protected]
---
include/linux/irqdomain.h | 1 +
1 file changed, 1 insertion(+)

diff --git a/include/linux/irqdomain.h b/include/linux/irqdomain.h
index 583e7ab..3c340db 100644
--- a/include/linux/irqdomain.h
+++ b/include/linux/irqdomain.h
@@ -83,6 +83,7 @@ enum irq_domain_bus_token {
DOMAIN_BUS_IPI,
DOMAIN_BUS_FSL_MC_MSI,
DOMAIN_BUS_TI_SCI_INTA_MSI,
+ DOMAIN_BUS_WAKEUP,
};

/**