aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGeert Uytterhoeven <geert+renesas@glider.be>2024-04-23 11:45:42 +0200
committerGeert Uytterhoeven <geert+renesas@glider.be>2024-04-23 11:45:42 +0200
commit30f74497570c0edec6b89f90d87de1c95b49a3ea (patch)
tree7a15f71c3450e12b8f468dbe54e680eb6f3ce5f2
parent6f8a2215071bcd64e042cdf636daaee5b7752da2 (diff)
parent91d0dccc7a15704ad8d28f7579aee086843acff8 (diff)
downloadrenesas-drivers-30f74497570c0edec6b89f90d87de1c95b49a3ea.tar.gz
Merge branch 'topic/v4m-gray-hawk-single-v3' into renesas-drivers
Notice: this object is not reachable from any branch.
Notice: this object is not reachable from any branch.
-rw-r--r--Documentation/devicetree/bindings/interrupt-controller/renesas,irqc.yaml1
-rw-r--r--Documentation/devicetree/bindings/iommu/renesas,ipmmu-vmsa.yaml1
-rw-r--r--arch/arm64/boot/dts/renesas/r8a779h0-gray-hawk-single.dts37
-rw-r--r--drivers/soc/renesas/rcar-rst.c2
4 files changed, 40 insertions, 1 deletions
diff --git a/Documentation/devicetree/bindings/interrupt-controller/renesas,irqc.yaml b/Documentation/devicetree/bindings/interrupt-controller/renesas,irqc.yaml
index b417341fc8ae0..fb3c29e813499 100644
--- a/Documentation/devicetree/bindings/interrupt-controller/renesas,irqc.yaml
+++ b/Documentation/devicetree/bindings/interrupt-controller/renesas,irqc.yaml
@@ -39,6 +39,7 @@ properties:
- renesas,intc-ex-r8a779a0 # R-Car V3U
- renesas,intc-ex-r8a779f0 # R-Car S4-8
- renesas,intc-ex-r8a779g0 # R-Car V4H
+ - renesas,intc-ex-r8a779h0 # R-Car V4M
- const: renesas,irqc
'#interrupt-cells':
diff --git a/Documentation/devicetree/bindings/iommu/renesas,ipmmu-vmsa.yaml b/Documentation/devicetree/bindings/iommu/renesas,ipmmu-vmsa.yaml
index be90f68c11d18..0acaa2bcec089 100644
--- a/Documentation/devicetree/bindings/iommu/renesas,ipmmu-vmsa.yaml
+++ b/Documentation/devicetree/bindings/iommu/renesas,ipmmu-vmsa.yaml
@@ -50,6 +50,7 @@ properties:
- renesas,ipmmu-r8a779a0 # R-Car V3U
- renesas,ipmmu-r8a779f0 # R-Car S4-8
- renesas,ipmmu-r8a779g0 # R-Car V4H
+ - renesas,ipmmu-r8a779h0 # R-Car V4M
- const: renesas,rcar-gen4-ipmmu-vmsa # R-Car Gen4
reg:
diff --git a/arch/arm64/boot/dts/renesas/r8a779h0-gray-hawk-single.dts b/arch/arm64/boot/dts/renesas/r8a779h0-gray-hawk-single.dts
index cfbe8c8680cd8..cc9f067c058f5 100644
--- a/arch/arm64/boot/dts/renesas/r8a779h0-gray-hawk-single.dts
+++ b/arch/arm64/boot/dts/renesas/r8a779h0-gray-hawk-single.dts
@@ -9,6 +9,7 @@
/dts-v1/;
#include <dt-bindings/gpio/gpio.h>
+#include <dt-bindings/input/input.h>
#include "r8a779h0.dtsi"
@@ -27,6 +28,37 @@
stdout-path = "serial0:921600n8";
};
+ /*
+ * Using IRQ2 on Gray Hawk GPIO Connector CN3004 as a key
+ *
+ * Pinout:
+ * - IRQ2 = CN3004 pin 2
+ * - GND = CN3004 pin 3/4/7/11
+ *
+ * Note that this pin is also used as MD0. Make sure SW5-1 on the SW
+ * Board is in the OFF position, to avoid IRQ2 being asserted all the
+ * time, causing an interrupt storm.
+ *
+ * Use driver_override and bind to enable:
+ * echo gpio-keys > /sys/bus/platform/devices/irq2-keys/driver_override
+ * echo irq2-keys > /sys/bus/platform/drivers/gpio-keys/bind
+ */
+ irq2-keys {
+ compatible = "gpio-keys-to-be-overridden-at-runtime";
+
+ pinctrl-0 = <&irq2_pins>;
+ pinctrl-names = "default";
+
+ key-I {
+ interrupt-parent = <&intc_ex>;
+ interrupts = <2 IRQ_TYPE_LEVEL_LOW>;
+ linux,code = <KEY_I>;
+ label = "IRQ2";
+ wakeup-source;
+ debounce-interval = <20>;
+ };
+ };
+
memory@48000000 {
device_type = "memory";
/* first 128MB is reserved for secure area. */
@@ -189,6 +221,11 @@
function = "i2c0";
};
+ irq2_pins: irq2_pins {
+ groups = "intc_ex_irq2_a";
+ function = "intc_ex";
+ };
+
mmc_pins: mmc {
groups = "mmc_data8", "mmc_ctrl", "mmc_ds";
function = "mmc";
diff --git a/drivers/soc/renesas/rcar-rst.c b/drivers/soc/renesas/rcar-rst.c
index 7ba02f3a4a4fb..008d26d013a61 100644
--- a/drivers/soc/renesas/rcar-rst.c
+++ b/drivers/soc/renesas/rcar-rst.c
@@ -117,7 +117,7 @@ static const struct of_device_id rcar_rst_matches[] __initconst = {
{ .compatible = "renesas,r8a779a0-rst", .data = &rcar_rst_v3u },
{ .compatible = "renesas,r8a779f0-rst", .data = &rcar_rst_gen4 },
{ .compatible = "renesas,r8a779g0-rst", .data = &rcar_rst_gen4 },
- { .compatible = "renesas,r8a779h0-rst", .data = &rcar_rst_gen4 },
+ { .compatible = "renesas,r8a779h0-rst", .data = &rcar_rst_v3u },
{ /* sentinel */ }
};