[PATCH 0/2] Add support for programming gs101 EINT_WAKEUP_MASK registers

Peter Griffin posted 2 patches 6 months ago
drivers/pinctrl/samsung/pinctrl-exynos-arm64.c |   6 +-
drivers/pinctrl/samsung/pinctrl-exynos.c       | 100 +++++++++++++++++++++----
drivers/pinctrl/samsung/pinctrl-samsung.h      |   4 +
include/linux/soc/samsung/exynos-regs-pmu.h    |   1 +
4 files changed, 95 insertions(+), 16 deletions(-)
[PATCH 0/2] Add support for programming gs101 EINT_WAKEUP_MASK registers
Posted by Peter Griffin 6 months ago
Hi folks,

The following series adds support for programming the gs101
EINT_WAKEUP_MASK registers for the 67 external wakeup interrupts on gpa0 to
gpa11 (alive and far_alive). gs101 differs to previous SoCs in that it has
3 EINT_WAKEUP_MASK registers

EINT_WAKEUP_MASK  0x3A80 EINT[31:0]
EINT_WAKEUP_MASK2 0x3A84 EINT[63:32]
EINT_WAKEUP_MASK3 0x3A88 EINT[66:64]

This is achieved by adding gs101 specific callbacks and a dedicated
gs101_wkup_irq_chip struct which is triggered from the existing
google,gs101-wakeup-eint compatible.

This code path can be tested  using:
echo mem > /sys/power/state

With the functional CPU hotplug, this brings us another step closer to
having functional suspend to RAM upstream.

kind regards,

Peter

Signed-off-by: Peter Griffin <peter.griffin@linaro.org>
---
Peter Griffin (2):
      pinctrl: samsung: rename exynosautov920_retention_data to no_retention_data
      pinctrl: samsung: add support for gs101 wakeup mask programming

 drivers/pinctrl/samsung/pinctrl-exynos-arm64.c |   6 +-
 drivers/pinctrl/samsung/pinctrl-exynos.c       | 100 +++++++++++++++++++++----
 drivers/pinctrl/samsung/pinctrl-samsung.h      |   4 +
 include/linux/soc/samsung/exynos-regs-pmu.h    |   1 +
 4 files changed, 95 insertions(+), 16 deletions(-)
---
base-commit: b27cc623e01be9de1580eaa913508b237a7a9673
change-id: 20250619-gs101-eint-mask-a4c1162de9b6

Best regards,
-- 
Peter Griffin <peter.griffin@linaro.org>
Re: [PATCH 0/2] Add support for programming gs101 EINT_WAKEUP_MASK registers
Posted by Krzysztof Kozlowski 5 months, 3 weeks ago
On Thu, 19 Jun 2025 12:18:14 +0100, Peter Griffin wrote:
> The following series adds support for programming the gs101
> EINT_WAKEUP_MASK registers for the 67 external wakeup interrupts on gpa0 to
> gpa11 (alive and far_alive). gs101 differs to previous SoCs in that it has
> 3 EINT_WAKEUP_MASK registers
> 
> EINT_WAKEUP_MASK  0x3A80 EINT[31:0]
> EINT_WAKEUP_MASK2 0x3A84 EINT[63:32]
> EINT_WAKEUP_MASK3 0x3A88 EINT[66:64]
> 
> [...]

Applied, thanks!

[1/2] pinctrl: samsung: rename exynosautov920_retention_data to no_retention_data
      https://git.kernel.org/pinctrl/samsung/c/c8edb80494407f65a253ea63ffbae3fb831f397a
[2/2] pinctrl: samsung: add support for gs101 wakeup mask programming
      https://git.kernel.org/pinctrl/samsung/c/2642f55d44ce563f227dd9c620eda0dec8d882be

Best regards,
-- 
Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Re: [PATCH 0/2] Add support for programming gs101 EINT_WAKEUP_MASK registers
Posted by Linus Walleij 5 months, 3 weeks ago
On Thu, Jun 19, 2025 at 1:18 PM Peter Griffin <peter.griffin@linaro.org> wrote:

> The following series adds support for programming the gs101
> EINT_WAKEUP_MASK registers for the 67 external wakeup interrupts on gpa0 to
> gpa11 (alive and far_alive). gs101 differs to previous SoCs in that it has
> 3 EINT_WAKEUP_MASK registers

Looks all right to me, I expect Krzysztof to review and queue this and
send to me as a pull request.

Yours,
Linus Walleij