18989230eSPaul Barker// SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 28989230eSPaul Barker/* 38989230eSPaul Barker * Common Device Tree Source for the RZ/T2H and RZ/N2H EVK boards. 48989230eSPaul Barker * 58989230eSPaul Barker * Copyright (C) 2025 Renesas Electronics Corp. 68989230eSPaul Barker */ 78989230eSPaul Barker 877aae525SLad Prabhakar#include <dt-bindings/gpio/gpio.h> 977aae525SLad Prabhakar#include <dt-bindings/leds/common.h> 1077aae525SLad Prabhakar#include <dt-bindings/pinctrl/renesas,r9a09g077-pinctrl.h> 1177aae525SLad Prabhakar 128989230eSPaul Barker/ { 138989230eSPaul Barker aliases { 146f21672cSLad Prabhakar i2c0 = &i2c0; 156f21672cSLad Prabhakar i2c1 = &i2c1; 164d7624fcSLad Prabhakar mmc0 = &sdhi0; 17dba8ee27SLad Prabhakar mmc1 = &sdhi1; 188989230eSPaul Barker serial0 = &sci0; 198989230eSPaul Barker }; 208989230eSPaul Barker 218989230eSPaul Barker chosen { 228989230eSPaul Barker stdout-path = "serial0:115200n8"; 238989230eSPaul Barker }; 244d7624fcSLad Prabhakar 254d7624fcSLad Prabhakar reg_1p8v: regulator-1p8v { 264d7624fcSLad Prabhakar compatible = "regulator-fixed"; 274d7624fcSLad Prabhakar regulator-name = "fixed-1.8V"; 284d7624fcSLad Prabhakar regulator-min-microvolt = <1800000>; 294d7624fcSLad Prabhakar regulator-max-microvolt = <1800000>; 304d7624fcSLad Prabhakar regulator-boot-on; 314d7624fcSLad Prabhakar regulator-always-on; 324d7624fcSLad Prabhakar }; 334d7624fcSLad Prabhakar 344d7624fcSLad Prabhakar reg_3p3v: regulator-3p3v { 354d7624fcSLad Prabhakar compatible = "regulator-fixed"; 364d7624fcSLad Prabhakar regulator-name = "fixed-3.3V"; 374d7624fcSLad Prabhakar regulator-min-microvolt = <3300000>; 384d7624fcSLad Prabhakar regulator-max-microvolt = <3300000>; 394d7624fcSLad Prabhakar regulator-boot-on; 404d7624fcSLad Prabhakar regulator-always-on; 414d7624fcSLad Prabhakar }; 42dba8ee27SLad Prabhakar 43d065453eSLad Prabhakar#if SD0_SD 44d065453eSLad Prabhakar vqmmc_sdhi0: regulator-vqmmc-sdhi0 { 45d065453eSLad Prabhakar compatible = "regulator-gpio"; 46d065453eSLad Prabhakar regulator-name = "SDHI0 VqmmC"; 47d065453eSLad Prabhakar gpios = <&pinctrl RZT2H_GPIO(2, 6) GPIO_ACTIVE_HIGH>; 48d065453eSLad Prabhakar regulator-min-microvolt = <1800000>; 49d065453eSLad Prabhakar regulator-max-microvolt = <3300000>; 50d065453eSLad Prabhakar gpios-states = <0>; 51d065453eSLad Prabhakar states = <3300000 0>, <1800000 1>; 52d065453eSLad Prabhakar }; 53d065453eSLad Prabhakar#endif 54d065453eSLad Prabhakar 55dba8ee27SLad Prabhakar#if SD1_MICRO_SD 56dba8ee27SLad Prabhakar vccq_sdhi1: regulator-vccq-sdhi1 { 57dba8ee27SLad Prabhakar compatible = "regulator-gpio"; 58dba8ee27SLad Prabhakar regulator-name = "SDHI1 VccQ"; 59dba8ee27SLad Prabhakar regulator-min-microvolt = <1800000>; 60dba8ee27SLad Prabhakar regulator-max-microvolt = <3300000>; 61dba8ee27SLad Prabhakar gpios = <&pinctrl RZT2H_GPIO(8, 6) GPIO_ACTIVE_HIGH>; 62dba8ee27SLad Prabhakar gpios-states = <0>; 63dba8ee27SLad Prabhakar states = <3300000 0>, <1800000 1>; 64dba8ee27SLad Prabhakar }; 65dba8ee27SLad Prabhakar#endif 668989230eSPaul Barker}; 678989230eSPaul Barker 68*7e7bac72SLad Prabhakar&ehci { 69*7e7bac72SLad Prabhakar dr_mode = "otg"; 70*7e7bac72SLad Prabhakar status = "okay"; 71*7e7bac72SLad Prabhakar}; 72*7e7bac72SLad Prabhakar 738989230eSPaul Barker&extal_clk { 748989230eSPaul Barker clock-frequency = <25000000>; 758989230eSPaul Barker}; 768989230eSPaul Barker 77*7e7bac72SLad Prabhakar&hsusb { 78*7e7bac72SLad Prabhakar dr_mode = "otg"; 79*7e7bac72SLad Prabhakar status = "okay"; 80*7e7bac72SLad Prabhakar}; 81*7e7bac72SLad Prabhakar 820176c9e8SLad Prabhakar&i2c0 { 830176c9e8SLad Prabhakar eeprom: eeprom@50 { 840176c9e8SLad Prabhakar compatible = "renesas,r1ex24016", "atmel,24c16"; 850176c9e8SLad Prabhakar reg = <0x50>; 860176c9e8SLad Prabhakar pagesize = <16>; 870176c9e8SLad Prabhakar }; 880176c9e8SLad Prabhakar}; 890176c9e8SLad Prabhakar 90*7e7bac72SLad Prabhakar&ohci { 91*7e7bac72SLad Prabhakar dr_mode = "otg"; 92*7e7bac72SLad Prabhakar status = "okay"; 93*7e7bac72SLad Prabhakar}; 94*7e7bac72SLad Prabhakar 951366c160SLad Prabhakar&pinctrl { 961366c160SLad Prabhakar /* 971366c160SLad Prabhakar * SCI0 Pin Configuration: 981366c160SLad Prabhakar * ------------------------ 991366c160SLad Prabhakar * Signal | Pin | RZ/T2H (SW4) | RZ/N2H (DSW9) 1001366c160SLad Prabhakar * -----------|---------|--------------|--------------- 1011366c160SLad Prabhakar * SCI0_RXD | P27_4 | 5: ON, 6: OFF| 1: ON, 2: OFF 1021366c160SLad Prabhakar * SCI0_TXD | P27_5 | 7: ON, 8: OFF| 3: ON, 4: OFF 1031366c160SLad Prabhakar */ 1041366c160SLad Prabhakar sci0_pins: sci0-pins { 1051366c160SLad Prabhakar pinmux = <RZT2H_PORT_PINMUX(27, 4, 0x14)>, 1061366c160SLad Prabhakar <RZT2H_PORT_PINMUX(27, 5, 0x14)>; 1071366c160SLad Prabhakar }; 1084d7624fcSLad Prabhakar 1094d7624fcSLad Prabhakar#if SD0_EMMC 1104d7624fcSLad Prabhakar sdhi0-emmc-iovs-hog { 1114d7624fcSLad Prabhakar gpio-hog; 1124d7624fcSLad Prabhakar gpios = <RZT2H_GPIO(2, 6) GPIO_ACTIVE_HIGH>; 1134d7624fcSLad Prabhakar output-high; 1144d7624fcSLad Prabhakar line-name = "SD0_IOVS"; 1154d7624fcSLad Prabhakar }; 1164d7624fcSLad Prabhakar#endif 1174d7624fcSLad Prabhakar 1184d7624fcSLad Prabhakar sdhi0_emmc_pins: sd0-emmc-group { 1194d7624fcSLad Prabhakar data-pins { 1204d7624fcSLad Prabhakar pinmux = <RZT2H_PORT_PINMUX(12, 2, 0x29)>, /* SD0_DATA0 */ 1214d7624fcSLad Prabhakar <RZT2H_PORT_PINMUX(12, 3, 0x29)>, /* SD0_DATA1 */ 1224d7624fcSLad Prabhakar <RZT2H_PORT_PINMUX(12, 4, 0x29)>, /* SD0_DATA2 */ 1234d7624fcSLad Prabhakar <RZT2H_PORT_PINMUX(12, 5, 0x29)>, /* SD0_DATA3 */ 1244d7624fcSLad Prabhakar <RZT2H_PORT_PINMUX(12, 6, 0x29)>, /* SD0_DATA4 */ 1254d7624fcSLad Prabhakar <RZT2H_PORT_PINMUX(12, 7, 0x29)>, /* SD0_DATA5 */ 1264d7624fcSLad Prabhakar <RZT2H_PORT_PINMUX(13, 0, 0x29)>, /* SD0_DATA6 */ 1274d7624fcSLad Prabhakar <RZT2H_PORT_PINMUX(13, 1, 0x29)>; /* SD0_DATA7 */ 1284d7624fcSLad Prabhakar }; 1294d7624fcSLad Prabhakar 1304d7624fcSLad Prabhakar ctrl-pins { 1314d7624fcSLad Prabhakar pinmux = <RZT2H_PORT_PINMUX(12, 0, 0x29)>, /* SD0_CLK */ 1324d7624fcSLad Prabhakar <RZT2H_PORT_PINMUX(12, 1, 0x29)>, /* SD0_CMD */ 1334d7624fcSLad Prabhakar <RZT2H_PORT_PINMUX(13, 2, 0x29)>; /* SD0_RST# */ 1344d7624fcSLad Prabhakar }; 1354d7624fcSLad Prabhakar }; 136dba8ee27SLad Prabhakar 137d065453eSLad Prabhakar#if SD0_SD 138d065453eSLad Prabhakar sdhi0-pwen-hog { 139d065453eSLad Prabhakar gpio-hog; 140d065453eSLad Prabhakar gpios = <RZT2H_GPIO(2, 5) GPIO_ACTIVE_HIGH>; 141d065453eSLad Prabhakar output-high; 142d065453eSLad Prabhakar line-name = "SD0_PWEN"; 143d065453eSLad Prabhakar }; 144d065453eSLad Prabhakar#endif 145d065453eSLad Prabhakar 146d065453eSLad Prabhakar sdhi0_sd_pins: sd0-sd-group { 147d065453eSLad Prabhakar data-pins { 148d065453eSLad Prabhakar pinmux = <RZT2H_PORT_PINMUX(12, 2, 0x29)>, /* SD0_DATA0 */ 149d065453eSLad Prabhakar <RZT2H_PORT_PINMUX(12, 3, 0x29)>, /* SD0_DATA1 */ 150d065453eSLad Prabhakar <RZT2H_PORT_PINMUX(12, 4, 0x29)>, /* SD0_DATA2 */ 151d065453eSLad Prabhakar <RZT2H_PORT_PINMUX(12, 5, 0x29)>; /* SD0_DATA3 */ 152d065453eSLad Prabhakar }; 153d065453eSLad Prabhakar 154d065453eSLad Prabhakar ctrl-pins { 155d065453eSLad Prabhakar pinmux = <RZT2H_PORT_PINMUX(12, 0, 0x29)>, /* SD0_CLK */ 156d065453eSLad Prabhakar <RZT2H_PORT_PINMUX(12, 1, 0x29)>, /* SD0_CMD */ 157d065453eSLad Prabhakar <RZT2H_PORT_PINMUX(22, 5, 0x29)>, /* SD0_CD */ 158d065453eSLad Prabhakar <RZT2H_PORT_PINMUX(22, 6, 0x29)>; /* SD0_WP */ 159d065453eSLad Prabhakar }; 160d065453eSLad Prabhakar }; 161d065453eSLad Prabhakar 162dba8ee27SLad Prabhakar#if SD1_MICRO_SD 163dba8ee27SLad Prabhakar sdhi1-pwen-hog { 164dba8ee27SLad Prabhakar gpio-hog; 165dba8ee27SLad Prabhakar gpios = <RZT2H_GPIO(8, 5) GPIO_ACTIVE_HIGH>; 166dba8ee27SLad Prabhakar output-high; 167dba8ee27SLad Prabhakar line-name = "SD1_PWEN"; 168dba8ee27SLad Prabhakar }; 169dba8ee27SLad Prabhakar#endif 170dba8ee27SLad Prabhakar 171dba8ee27SLad Prabhakar sdhi1_pins: sd1-group { 172dba8ee27SLad Prabhakar data-pins { 173dba8ee27SLad Prabhakar pinmux = <RZT2H_PORT_PINMUX(16, 7, 0x29)>, /* SD1_DATA0 */ 174dba8ee27SLad Prabhakar <RZT2H_PORT_PINMUX(17, 0, 0x29)>, /* SD1_DATA1 */ 175dba8ee27SLad Prabhakar <RZT2H_PORT_PINMUX(17, 1, 0x29)>, /* SD1_DATA2 */ 176dba8ee27SLad Prabhakar <RZT2H_PORT_PINMUX(17, 2, 0x29)>; /* SD1_DATA3 */ 177dba8ee27SLad Prabhakar }; 178dba8ee27SLad Prabhakar 179dba8ee27SLad Prabhakar ctrl-pins { 180dba8ee27SLad Prabhakar pinmux = <RZT2H_PORT_PINMUX(16, 5, 0x29)>, /* SD1_CLK */ 181dba8ee27SLad Prabhakar <RZT2H_PORT_PINMUX(16, 6, 0x29)>, /* SD1_CMD */ 182dba8ee27SLad Prabhakar <RZT2H_PORT_PINMUX(17, 4, 0x29)>; /* SD1_CD */ 183dba8ee27SLad Prabhakar }; 184dba8ee27SLad Prabhakar }; 1851366c160SLad Prabhakar}; 1861366c160SLad Prabhakar 1878989230eSPaul Barker&sci0 { 1881366c160SLad Prabhakar pinctrl-0 = <&sci0_pins>; 1891366c160SLad Prabhakar pinctrl-names = "default"; 1908989230eSPaul Barker status = "okay"; 1918989230eSPaul Barker}; 1924d7624fcSLad Prabhakar 1934d7624fcSLad Prabhakar#if SD0_EMMC 1944d7624fcSLad Prabhakar&sdhi0 { 1954d7624fcSLad Prabhakar pinctrl-0 = <&sdhi0_emmc_pins>; 1964d7624fcSLad Prabhakar pinctrl-1 = <&sdhi0_emmc_pins>; 1974d7624fcSLad Prabhakar pinctrl-names = "default", "state_uhs"; 1984d7624fcSLad Prabhakar vmmc-supply = <®_3p3v>; 1994d7624fcSLad Prabhakar vqmmc-supply = <®_1p8v>; 2004d7624fcSLad Prabhakar bus-width = <8>; 2014d7624fcSLad Prabhakar non-removable; 2024d7624fcSLad Prabhakar mmc-hs200-1_8v; 2034d7624fcSLad Prabhakar fixed-emmc-driver-type = <1>; 2044d7624fcSLad Prabhakar status = "okay"; 2054d7624fcSLad Prabhakar}; 2064d7624fcSLad Prabhakar#endif 207dba8ee27SLad Prabhakar 208d065453eSLad Prabhakar#if SD0_SD 209d065453eSLad Prabhakar&sdhi0 { 210d065453eSLad Prabhakar pinctrl-0 = <&sdhi0_sd_pins>; 211d065453eSLad Prabhakar pinctrl-1 = <&sdhi0_sd_pins>; 212d065453eSLad Prabhakar pinctrl-names = "default", "state_uhs"; 213d065453eSLad Prabhakar vmmc-supply = <®_3p3v>; 214d065453eSLad Prabhakar vqmmc-supply = <&vqmmc_sdhi0>; 215d065453eSLad Prabhakar bus-width = <4>; 216d065453eSLad Prabhakar sd-uhs-sdr50; 217d065453eSLad Prabhakar sd-uhs-sdr104; 218d065453eSLad Prabhakar status = "okay"; 219d065453eSLad Prabhakar}; 220d065453eSLad Prabhakar#endif 221d065453eSLad Prabhakar 222dba8ee27SLad Prabhakar#if SD1_MICRO_SD 223dba8ee27SLad Prabhakar&sdhi1 { 224dba8ee27SLad Prabhakar pinctrl-0 = <&sdhi1_pins>; 225dba8ee27SLad Prabhakar pinctrl-1 = <&sdhi1_pins>; 226dba8ee27SLad Prabhakar pinctrl-names = "default", "state_uhs"; 227dba8ee27SLad Prabhakar vmmc-supply = <®_3p3v>; 228dba8ee27SLad Prabhakar vqmmc-supply = <&vccq_sdhi1>; 229dba8ee27SLad Prabhakar bus-width = <4>; 230dba8ee27SLad Prabhakar sd-uhs-sdr50; 231dba8ee27SLad Prabhakar sd-uhs-sdr104; 232dba8ee27SLad Prabhakar status = "okay"; 233dba8ee27SLad Prabhakar}; 234dba8ee27SLad Prabhakar#endif 235da23f1bdSLad Prabhakar 236*7e7bac72SLad Prabhakar&usb2_phy { 237*7e7bac72SLad Prabhakar pinctrl-0 = <&usb_pins>; 238*7e7bac72SLad Prabhakar pinctrl-names = "default"; 239*7e7bac72SLad Prabhakar 240*7e7bac72SLad Prabhakar status = "okay"; 241*7e7bac72SLad Prabhakar}; 242*7e7bac72SLad Prabhakar 243da23f1bdSLad Prabhakar&wdt2 { 244da23f1bdSLad Prabhakar status = "okay"; 245da23f1bdSLad Prabhakar timeout-sec = <60>; 246da23f1bdSLad Prabhakar}; 247