.../dts/renesas/r9a09g057h44-rzv2h-evk.dts | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+)
RZ/V2H EVK has a user pushbutton connected to the SoC NMI pin, which
can be used to wake up the system from suspend to idle. Add a DT node
in the device tree to instantiate the gpio-keys driver for this button.
Signed-off-by: Ovidiu Panait <ovidiu.panait.rb@renesas.com>
---
.../dts/renesas/r9a09g057h44-rzv2h-evk.dts | 19 +++++++++++++++++++
1 file changed, 19 insertions(+)
diff --git a/arch/arm64/boot/dts/renesas/r9a09g057h44-rzv2h-evk.dts b/arch/arm64/boot/dts/renesas/r9a09g057h44-rzv2h-evk.dts
index 5c06bce3d5b4..7fff8bea9494 100644
--- a/arch/arm64/boot/dts/renesas/r9a09g057h44-rzv2h-evk.dts
+++ b/arch/arm64/boot/dts/renesas/r9a09g057h44-rzv2h-evk.dts
@@ -9,6 +9,7 @@
#include <dt-bindings/pinctrl/renesas,r9a09g057-pinctrl.h>
#include <dt-bindings/gpio/gpio.h>
+#include <dt-bindings/input/input.h>
#include "r9a09g057.dtsi"
/ {
@@ -34,6 +35,20 @@ chosen {
stdout-path = "serial0:115200n8";
};
+ keys: keys {
+ compatible = "gpio-keys";
+ pinctrl-0 = <&nmi_pins>;
+ pinctrl-names = "default";
+
+ key-wakeup {
+ interrupts-extended = <&icu 0 IRQ_TYPE_EDGE_FALLING>;
+ linux,code = <KEY_WAKEUP>;
+ label = "NMI_SW";
+ debounce-interval = <20>;
+ wakeup-source;
+ };
+ };
+
memory@48000000 {
device_type = "memory";
/* first 128MB is reserved for secure area. */
@@ -320,6 +335,10 @@ i2c8_pins: i2c8 {
<RZV2H_PORT_PINMUX(0, 7, 1)>; /* I2C8_SCL */
};
+ nmi_pins: nmi {
+ pins = "NMI";
+ };
+
scif_pins: scif {
pins = "SCIF_TXD", "SCIF_RXD";
renesas,output-impedance = <1>;
--
2.51.0
Hi Ovidiu,
On Mon, 27 Oct 2025 at 15:07, Ovidiu Panait
<ovidiu.panait.rb@renesas.com> wrote:
> RZ/V2H EVK has a user pushbutton connected to the SoC NMI pin, which
> can be used to wake up the system from suspend to idle. Add a DT node
> in the device tree to instantiate the gpio-keys driver for this button.
>
> Signed-off-by: Ovidiu Panait <ovidiu.panait.rb@renesas.com>
Thanks for your patch!
> --- a/arch/arm64/boot/dts/renesas/r9a09g057h44-rzv2h-evk.dts
> +++ b/arch/arm64/boot/dts/renesas/r9a09g057h44-rzv2h-evk.dts
> @@ -9,6 +9,7 @@
>
> #include <dt-bindings/pinctrl/renesas,r9a09g057-pinctrl.h>
> #include <dt-bindings/gpio/gpio.h>
> +#include <dt-bindings/input/input.h>
> #include "r9a09g057.dtsi"
>
> / {
> @@ -34,6 +35,20 @@ chosen {
> stdout-path = "serial0:115200n8";
> };
>
> + keys: keys {
> + compatible = "gpio-keys";
> + pinctrl-0 = <&nmi_pins>;
> + pinctrl-names = "default";
Do you need these pinctrl properties? ...
> +
> + key-wakeup {
> + interrupts-extended = <&icu 0 IRQ_TYPE_EDGE_FALLING>;
> + linux,code = <KEY_WAKEUP>;
> + label = "NMI_SW";
> + debounce-interval = <20>;
> + wakeup-source;
> + };
> + };
> +
> memory@48000000 {
> device_type = "memory";
> /* first 128MB is reserved for secure area. */
> @@ -320,6 +335,10 @@ i2c8_pins: i2c8 {
> <RZV2H_PORT_PINMUX(0, 7, 1)>; /* I2C8_SCL */
> };
>
> + nmi_pins: nmi {
> + pins = "NMI";
... as no actual pin configuration is done here?
If you confirm, I can drop these while applying.
> + };
> +
> scif_pins: scif {
> pins = "SCIF_TXD", "SCIF_RXD";
> renesas,output-impedance = <1>;
The rest LGTM, so with the above fixed:
Reviewed-by: Geert Uytterhoeven <geert+renesas@glider.be>
Gr{oetje,eeting}s,
Geert
--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org
In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
-- Linus Torvalds
© 2016 - 2026 Red Hat, Inc.