]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
arm64: dts: renesas: r9a09g087m44-rzt2h-evk: Enable I2C0 and I2C1 support
authorLad Prabhakar <prabhakar.mahadev-lad.rj@bp.renesas.com>
Wed, 20 Aug 2025 20:06:55 +0000 (21:06 +0100)
committerGeert Uytterhoeven <geert+renesas@glider.be>
Thu, 4 Sep 2025 09:39:20 +0000 (11:39 +0200)
Enable I2C0 and I2C1 on the RZ/N2H evaluation board.

Signed-off-by: Lad Prabhakar <prabhakar.mahadev-lad.rj@bp.renesas.com>
Reviewed-by: Geert Uytterhoeven <geert+renesas@glider.be>
Link: https://lore.kernel.org/20250820200659.2048755-6-prabhakar.mahadev-lad.rj@bp.renesas.com
Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
arch/arm64/boot/dts/renesas/r9a09g087m44-rzn2h-evk.dts

index fb2651c4c33832405d713eabf3c2c2ead023cd5d..a068661fc4429ad6f27d7ee3860922adb00e2178 100644 (file)
 #include "r9a09g087m44.dtsi"
 #include "rzt2h-n2h-evk-common.dtsi"
 
+/*
+ * I2C0 and LED8/9 share the same pins use the below
+ * macro to choose (and set approopriate DIP switches).
+ */
+#define I2C0   1
+#define LED8   (!I2C0)
+#define LED9   (!I2C0)
+
 / {
        model = "Renesas RZ/N2H EVK Board based on r9a09g087m44";
        compatible = "renesas,rzn2h-evk", "renesas,r9a09g087m44", "renesas,r9a09g087";
@@ -60,6 +68,7 @@
                        function-enumerator = <8>;
                };
 
+#if LED8
                led-8 {
                        /*
                         * USER_LED0
@@ -70,7 +79,9 @@
                        function = LED_FUNCTION_DEBUG;
                        function-enumerator = <0>;
                };
+#endif
 
+#if LED9
                led-9 {
                        /*
                         * USER_LED1
@@ -81,6 +92,7 @@
                        function = LED_FUNCTION_DEBUG;
                        function-enumerator = <1>;
                };
+#endif
 
                led-10 {
                        /*
                };
        };
 };
+
+#if I2C0
+&i2c0 {
+       pinctrl-0 = <&i2c0_pins>;
+       pinctrl-names = "default";
+       clock-frequency = <400000>;
+       status = "okay";
+};
+#endif
+
+&i2c1 {
+       pinctrl-0 = <&i2c1_pins>;
+       pinctrl-names = "default";
+       clock-frequency = <400000>;
+       status = "okay";
+};
+
+&pinctrl {
+       /*
+        * I2C0 Pin Configuration:
+        * ------------------------
+        * Signal | Pin     | DSW15
+        * -------|---------|--------------
+        * SCL    | P14_6   | 8: OFF, 9: ON, 10: OFF
+        * SDA    | P14_7   | 5: ON, 6: OFF
+        */
+       i2c0_pins: i2c0-pins {
+               pinmux = <RZT2H_PORT_PINMUX(14, 6, 0x17)>,
+                        <RZT2H_PORT_PINMUX(14, 7, 0x17)>;
+       };
+
+       /*
+        * I2C1 Pin Configuration:
+        * ------------------------
+        * Signal | Pin     | DSW7
+        * -------|---------|--------------
+        * SCL    | P03_3   | 1: ON, 2: OFF
+        * SDA    | P03_4   | 3: ON, 4: OFF
+        */
+       i2c1_pins: i2c1-pins {
+               pinmux = <RZT2H_PORT_PINMUX(3, 3, 0x17)>,
+                        <RZT2H_PORT_PINMUX(3, 4, 0x17)>;
+       };
+};