From: Kendall Willis <k-willis@ti.com>
To: Dmitry Torokhov <dmitry.torokhov@gmail.com>,
Rob Herring <robh@kernel.org>,
Krzysztof Kozlowski <krzk+dt@kernel.org>,
Conor Dooley <conor+dt@kernel.org>
Cc: <msp@baylibre.com>, <s-kochidanadu@ti.com>, <a-kaur@ti.com>,
<s-tripathi1@ti.com>, <vishalm@ti.com>, <k-willis@ti.com>,
<linux-input@vger.kernel.org>, <linux-kernel@vger.kernel.org>,
<devicetree@vger.kernel.org>
Subject: [PATCH v3 0/2] Input: gpio-keys - support wakeup pinctrl state
Date: Thu, 1 Oct 2026 10:50:32 -0500 [thread overview]
Message-ID: <20261001-upstream-gpio-wakeup-v3-0-6f3bcde367a3@ti.com> (raw)
Add 'wakeup' pinctrl state to support separate pin wakeup
configurations for GPIO. Upon suspend the 'wakeup' pinctrl state is
chosen if it exists. On resume the 'default' pinctrl state is selected.
The 'wakeup' pinctrl state allows wakeup from low-power states if a
specific pin configuration is needed.
On TI K3 AM62 family of devices, the GPIO controller is turned off in
suspend to RAM states, so no interrupt can be received by the
controller. This prevents system wakeup from low-power states.
Alternatively, the pins can wakeup the system if a wakeup flag is set on
the pin by using pinctrl.
A corresponding device tree patch using the 'wakeup' pinctrl state can
be found under "arm64: dts: ti: k3-am62l3-evm: add wakeup-source for GPIO
button" [1].
Tested GPIO wakeup from suspend on AM62L EVM and AM62P EVM.
[1] https://lore.kernel.org/all/20260912-upstream-gpio-wakeup-dts-v1-1-2057d76c63aa@ti.com/
Signed-off-by: Kendall Willis <k-willis@ti.com>
---
Changes in v3:
- Propagate -EPROBE_DEFER from devm_pinctrl_get() in probe().
- Link to v2: https://lore.kernel.org/r/20260925-upstream-gpio-wakeup-v2-0-6c5533356246@ti.com
Changes in v2:
- Update gpio-keys dt bindings commit message for better explanation of
wakeup state.
- Fix error pathways for if switching to the "wakeup" pinctrl state
fails.
- Link to v1: https://lore.kernel.org/r/20260912-upstream-gpio-wakeup-v1-0-f0e12484b836@ti.com
---
Kendall Willis (2):
dt-bindings: input: gpio-keys: add pinctrl states
Input: gpio-keys - support wakeup pinctrl state on suspend
.../devicetree/bindings/input/gpio-keys.yaml | 16 +++++++++++++++
drivers/input/keyboard/gpio_keys.c | 24 ++++++++++++++++++++++
2 files changed, 40 insertions(+)
---
base-commit: 93f51579e7df248780214094418f205253383cc5
change-id: 20260904-upstream-gpio-wakeup-52a54080c948
Best regards,
--
Kendall Willis <k-willis@ti.com>
next reply other threads:[~2026-10-01 15:51 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-10-01 15:50 Kendall Willis [this message]
2026-10-01 15:50 ` [PATCH v3 1/2] dt-bindings: input: gpio-keys: add pinctrl states Kendall Willis
2026-10-01 15:59 ` sashiko-bot
2026-10-01 16:11 ` Kendall Willis
2026-10-01 20:01 ` Rob Herring (Arm)
2026-10-01 15:50 ` [PATCH v3 2/2] Input: gpio-keys - support wakeup pinctrl state on suspend Kendall Willis
2026-10-01 16:02 ` sashiko-bot
2026-10-01 16:12 ` Kendall Willis
2026-10-03 5:26 ` Dmitry Torokhov
2026-10-05 20:42 ` Kendall Willis
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20261001-upstream-gpio-wakeup-v3-0-6f3bcde367a3@ti.com \
--to=k-willis@ti.com \
--cc=a-kaur@ti.com \
--cc=conor+dt@kernel.org \
--cc=devicetree@vger.kernel.org \
--cc=dmitry.torokhov@gmail.com \
--cc=krzk+dt@kernel.org \
--cc=linux-input@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=msp@baylibre.com \
--cc=robh@kernel.org \
--cc=s-kochidanadu@ti.com \
--cc=s-tripathi1@ti.com \
--cc=vishalm@ti.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox