11fcc28bcSEmmanuel Vadot// SPDX-License-Identifier: (GPL-2.0 OR MIT) 21fcc28bcSEmmanuel Vadot/* 31fcc28bcSEmmanuel Vadot * Device Tree Source for the R-Car S4 Starter Kit board 41fcc28bcSEmmanuel Vadot * 51fcc28bcSEmmanuel Vadot * Copyright (C) 2023 Renesas Electronics Corp. 61fcc28bcSEmmanuel Vadot */ 71fcc28bcSEmmanuel Vadot 81fcc28bcSEmmanuel Vadot/dts-v1/; 91fcc28bcSEmmanuel Vadot#include <dt-bindings/gpio/gpio.h> 101fcc28bcSEmmanuel Vadot#include "r8a779f4.dtsi" 111fcc28bcSEmmanuel Vadot 121fcc28bcSEmmanuel Vadot/ { 131fcc28bcSEmmanuel Vadot model = "R-Car S4 Starter Kit board"; 141fcc28bcSEmmanuel Vadot compatible = "renesas,s4sk", "renesas,r8a779f4", "renesas,r8a779f0"; 151fcc28bcSEmmanuel Vadot 161fcc28bcSEmmanuel Vadot aliases { 17beb6e748SEmmanuel Vadot i2c0 = &i2c0; 18beb6e748SEmmanuel Vadot i2c1 = &i2c1; 19beb6e748SEmmanuel Vadot i2c2 = &i2c2; 20beb6e748SEmmanuel Vadot i2c3 = &i2c3; 21beb6e748SEmmanuel Vadot i2c4 = &i2c4; 22beb6e748SEmmanuel Vadot i2c5 = &i2c5; 231fcc28bcSEmmanuel Vadot serial0 = &hscif0; 241fcc28bcSEmmanuel Vadot serial1 = &hscif1; 253721eb5aSEmmanuel Vadot ethernet0 = &rswitch_port0; 263721eb5aSEmmanuel Vadot ethernet1 = &rswitch_port1; 271fcc28bcSEmmanuel Vadot }; 281fcc28bcSEmmanuel Vadot 291fcc28bcSEmmanuel Vadot chosen { 301fcc28bcSEmmanuel Vadot bootargs = "ignore_loglevel rw root=/dev/nfs ip=on"; 311fcc28bcSEmmanuel Vadot stdout-path = "serial0:921600n8"; 321fcc28bcSEmmanuel Vadot }; 331fcc28bcSEmmanuel Vadot 341fcc28bcSEmmanuel Vadot memory@48000000 { 351fcc28bcSEmmanuel Vadot device_type = "memory"; 361fcc28bcSEmmanuel Vadot /* first 128MB is reserved for secure area. */ 371fcc28bcSEmmanuel Vadot /* The last 512MB is reserved for CR. */ 381fcc28bcSEmmanuel Vadot reg = <0x0 0x48000000 0x0 0x58000000>; 391fcc28bcSEmmanuel Vadot }; 401fcc28bcSEmmanuel Vadot 411fcc28bcSEmmanuel Vadot memory@480000000 { 421fcc28bcSEmmanuel Vadot device_type = "memory"; 431fcc28bcSEmmanuel Vadot reg = <0x4 0x80000000 0x0 0x80000000>; 441fcc28bcSEmmanuel Vadot }; 451fcc28bcSEmmanuel Vadot 461fcc28bcSEmmanuel Vadot vcc_sdhi: regulator-vcc-sdhi { 471fcc28bcSEmmanuel Vadot compatible = "regulator-fixed"; 481fcc28bcSEmmanuel Vadot regulator-name = "SDHI Vcc"; 491fcc28bcSEmmanuel Vadot regulator-min-microvolt = <3300000>; 501fcc28bcSEmmanuel Vadot regulator-max-microvolt = <3300000>; 511fcc28bcSEmmanuel Vadot gpio = <&gpio1 24 GPIO_ACTIVE_HIGH>; 521fcc28bcSEmmanuel Vadot enable-active-high; 531fcc28bcSEmmanuel Vadot }; 541fcc28bcSEmmanuel Vadot}; 551fcc28bcSEmmanuel Vadot 561fcc28bcSEmmanuel Vadotð_serdes { 571fcc28bcSEmmanuel Vadot status = "okay"; 581fcc28bcSEmmanuel Vadot}; 591fcc28bcSEmmanuel Vadot 601fcc28bcSEmmanuel Vadot&extal_clk { 611fcc28bcSEmmanuel Vadot clock-frequency = <20000000>; 621fcc28bcSEmmanuel Vadot}; 631fcc28bcSEmmanuel Vadot 641fcc28bcSEmmanuel Vadot&extalr_clk { 651fcc28bcSEmmanuel Vadot clock-frequency = <32768>; 661fcc28bcSEmmanuel Vadot}; 671fcc28bcSEmmanuel Vadot 681fcc28bcSEmmanuel Vadot&hscif0 { 691fcc28bcSEmmanuel Vadot pinctrl-0 = <&hscif0_pins>; 701fcc28bcSEmmanuel Vadot pinctrl-names = "default"; 713721eb5aSEmmanuel Vadot bootph-all; 721fcc28bcSEmmanuel Vadot 731fcc28bcSEmmanuel Vadot uart-has-rtscts; 741fcc28bcSEmmanuel Vadot status = "okay"; 751fcc28bcSEmmanuel Vadot}; 761fcc28bcSEmmanuel Vadot 771fcc28bcSEmmanuel Vadot&hscif1 { 781fcc28bcSEmmanuel Vadot pinctrl-0 = <&hscif1_pins>; 791fcc28bcSEmmanuel Vadot pinctrl-names = "default"; 801fcc28bcSEmmanuel Vadot 811fcc28bcSEmmanuel Vadot uart-has-rtscts; 821fcc28bcSEmmanuel Vadot status = "okay"; 831fcc28bcSEmmanuel Vadot}; 841fcc28bcSEmmanuel Vadot 851fcc28bcSEmmanuel Vadot&i2c2 { 861fcc28bcSEmmanuel Vadot pinctrl-0 = <&i2c2_pins>; 871fcc28bcSEmmanuel Vadot pinctrl-names = "default"; 881fcc28bcSEmmanuel Vadot 891fcc28bcSEmmanuel Vadot status = "okay"; 901fcc28bcSEmmanuel Vadot clock-frequency = <400000>; 911fcc28bcSEmmanuel Vadot}; 921fcc28bcSEmmanuel Vadot 931fcc28bcSEmmanuel Vadot&i2c4 { 941fcc28bcSEmmanuel Vadot pinctrl-0 = <&i2c4_pins>; 951fcc28bcSEmmanuel Vadot pinctrl-names = "default"; 961fcc28bcSEmmanuel Vadot 971fcc28bcSEmmanuel Vadot status = "okay"; 981fcc28bcSEmmanuel Vadot clock-frequency = <400000>; 991fcc28bcSEmmanuel Vadot}; 1001fcc28bcSEmmanuel Vadot 1011fcc28bcSEmmanuel Vadot&i2c5 { 1021fcc28bcSEmmanuel Vadot pinctrl-0 = <&i2c5_pins>; 1031fcc28bcSEmmanuel Vadot pinctrl-names = "default"; 1041fcc28bcSEmmanuel Vadot 1051fcc28bcSEmmanuel Vadot status = "okay"; 1061fcc28bcSEmmanuel Vadot clock-frequency = <400000>; 1071fcc28bcSEmmanuel Vadot 1081fcc28bcSEmmanuel Vadot eeprom@50 { 1091fcc28bcSEmmanuel Vadot compatible = "st,24c16", "atmel,24c16"; 1101fcc28bcSEmmanuel Vadot reg = <0x50>; 1111fcc28bcSEmmanuel Vadot pagesize = <16>; 1121fcc28bcSEmmanuel Vadot }; 1131fcc28bcSEmmanuel Vadot}; 1141fcc28bcSEmmanuel Vadot 1151fcc28bcSEmmanuel Vadot&mmc0 { 1161fcc28bcSEmmanuel Vadot pinctrl-0 = <&sd_pins>; 1171fcc28bcSEmmanuel Vadot pinctrl-names = "default"; 1181fcc28bcSEmmanuel Vadot 1191fcc28bcSEmmanuel Vadot vmmc-supply = <&vcc_sdhi>; 1201fcc28bcSEmmanuel Vadot cd-gpios = <&gpio1 23 GPIO_ACTIVE_LOW>; 1211fcc28bcSEmmanuel Vadot bus-width = <4>; 1221fcc28bcSEmmanuel Vadot status = "okay"; 1231fcc28bcSEmmanuel Vadot}; 1241fcc28bcSEmmanuel Vadot 1251fcc28bcSEmmanuel Vadot&pfc { 1261fcc28bcSEmmanuel Vadot pinctrl-0 = <&scif_clk_pins>; 1271fcc28bcSEmmanuel Vadot pinctrl-names = "default"; 1281fcc28bcSEmmanuel Vadot 1291fcc28bcSEmmanuel Vadot hscif0_pins: hscif0 { 1301fcc28bcSEmmanuel Vadot groups = "hscif0_data", "hscif0_ctrl"; 1311fcc28bcSEmmanuel Vadot function = "hscif0"; 1321fcc28bcSEmmanuel Vadot }; 1331fcc28bcSEmmanuel Vadot 1341fcc28bcSEmmanuel Vadot hscif1_pins: hscif1 { 1351fcc28bcSEmmanuel Vadot groups = "hscif1_data", "hscif1_ctrl"; 1361fcc28bcSEmmanuel Vadot function = "hscif1"; 1371fcc28bcSEmmanuel Vadot }; 1381fcc28bcSEmmanuel Vadot 1391fcc28bcSEmmanuel Vadot i2c2_pins: i2c2 { 1401fcc28bcSEmmanuel Vadot groups = "i2c2"; 1411fcc28bcSEmmanuel Vadot function = "i2c2"; 1421fcc28bcSEmmanuel Vadot }; 1431fcc28bcSEmmanuel Vadot 1441fcc28bcSEmmanuel Vadot i2c4_pins: i2c4 { 1451fcc28bcSEmmanuel Vadot groups = "i2c4"; 1461fcc28bcSEmmanuel Vadot function = "i2c4"; 1471fcc28bcSEmmanuel Vadot }; 1481fcc28bcSEmmanuel Vadot 1491fcc28bcSEmmanuel Vadot i2c5_pins: i2c5 { 1501fcc28bcSEmmanuel Vadot groups = "i2c5"; 1511fcc28bcSEmmanuel Vadot function = "i2c5"; 1521fcc28bcSEmmanuel Vadot }; 1531fcc28bcSEmmanuel Vadot 1541fcc28bcSEmmanuel Vadot scif_clk_pins: scif_clk { 1551fcc28bcSEmmanuel Vadot groups = "scif_clk"; 1561fcc28bcSEmmanuel Vadot function = "scif_clk"; 1571fcc28bcSEmmanuel Vadot }; 1581fcc28bcSEmmanuel Vadot 1591fcc28bcSEmmanuel Vadot sd_pins: sd { 1601fcc28bcSEmmanuel Vadot groups = "mmc_data4", "mmc_ctrl"; 1611fcc28bcSEmmanuel Vadot function = "mmc"; 1621fcc28bcSEmmanuel Vadot power-source = <3300>; 1631fcc28bcSEmmanuel Vadot }; 1641fcc28bcSEmmanuel Vadot 1651fcc28bcSEmmanuel Vadot tsn0_pins: tsn0 { 1661fcc28bcSEmmanuel Vadot groups = "tsn0_mdio_b", "tsn0_link_b"; 1671fcc28bcSEmmanuel Vadot function = "tsn0"; 1681fcc28bcSEmmanuel Vadot drive-strength = <18>; 1691fcc28bcSEmmanuel Vadot power-source = <3300>; 1701fcc28bcSEmmanuel Vadot }; 1711fcc28bcSEmmanuel Vadot 1721fcc28bcSEmmanuel Vadot tsn1_pins: tsn1 { 1731fcc28bcSEmmanuel Vadot groups = "tsn1_mdio_b", "tsn1_link_b"; 1741fcc28bcSEmmanuel Vadot function = "tsn1"; 1751fcc28bcSEmmanuel Vadot drive-strength = <18>; 1761fcc28bcSEmmanuel Vadot power-source = <3300>; 1771fcc28bcSEmmanuel Vadot }; 1781fcc28bcSEmmanuel Vadot}; 1791fcc28bcSEmmanuel Vadot 1801fcc28bcSEmmanuel Vadot&rswitch { 1811fcc28bcSEmmanuel Vadot pinctrl-0 = <&tsn0_pins>, <&tsn1_pins>; 1821fcc28bcSEmmanuel Vadot pinctrl-names = "default"; 1831fcc28bcSEmmanuel Vadot status = "okay"; 1843721eb5aSEmmanuel Vadot}; 1851fcc28bcSEmmanuel Vadot 1863721eb5aSEmmanuel Vadot&rswitch_port0 { 1871fcc28bcSEmmanuel Vadot reg = <0>; 1881fcc28bcSEmmanuel Vadot phy-handle = <&ic99>; 1891fcc28bcSEmmanuel Vadot phy-mode = "sgmii"; 1901fcc28bcSEmmanuel Vadot phys = <ð_serdes 0>; 1913721eb5aSEmmanuel Vadot status = "okay"; 1921fcc28bcSEmmanuel Vadot 1931fcc28bcSEmmanuel Vadot mdio { 1941fcc28bcSEmmanuel Vadot #address-cells = <1>; 1951fcc28bcSEmmanuel Vadot #size-cells = <0>; 1961fcc28bcSEmmanuel Vadot 1971fcc28bcSEmmanuel Vadot ic99: ethernet-phy@1 { 1981fcc28bcSEmmanuel Vadot reg = <1>; 1991fcc28bcSEmmanuel Vadot compatible = "ethernet-phy-ieee802.3-c45"; 2002aa9fc59SEmmanuel Vadot interrupts-extended = <&gpio3 10 IRQ_TYPE_LEVEL_LOW>; 2011fcc28bcSEmmanuel Vadot }; 2021fcc28bcSEmmanuel Vadot }; 2031fcc28bcSEmmanuel Vadot}; 2041fcc28bcSEmmanuel Vadot 2053721eb5aSEmmanuel Vadot&rswitch_port1 { 2061fcc28bcSEmmanuel Vadot reg = <1>; 2071fcc28bcSEmmanuel Vadot phy-handle = <&ic102>; 2081fcc28bcSEmmanuel Vadot phy-mode = "sgmii"; 2091fcc28bcSEmmanuel Vadot phys = <ð_serdes 1>; 2103721eb5aSEmmanuel Vadot status = "okay"; 2111fcc28bcSEmmanuel Vadot 2121fcc28bcSEmmanuel Vadot mdio { 2131fcc28bcSEmmanuel Vadot #address-cells = <1>; 2141fcc28bcSEmmanuel Vadot #size-cells = <0>; 2151fcc28bcSEmmanuel Vadot 2161fcc28bcSEmmanuel Vadot ic102: ethernet-phy@2 { 2171fcc28bcSEmmanuel Vadot reg = <2>; 2181fcc28bcSEmmanuel Vadot compatible = "ethernet-phy-ieee802.3-c45"; 2192aa9fc59SEmmanuel Vadot interrupts-extended = <&gpio3 11 IRQ_TYPE_LEVEL_LOW>; 2201fcc28bcSEmmanuel Vadot }; 2211fcc28bcSEmmanuel Vadot }; 2221fcc28bcSEmmanuel Vadot}; 2231fcc28bcSEmmanuel Vadot 2241fcc28bcSEmmanuel Vadot&rwdt { 2251fcc28bcSEmmanuel Vadot timeout-sec = <60>; 2261fcc28bcSEmmanuel Vadot status = "okay"; 2271fcc28bcSEmmanuel Vadot}; 2281fcc28bcSEmmanuel Vadot 2291fcc28bcSEmmanuel Vadot&scif_clk { 2301fcc28bcSEmmanuel Vadot clock-frequency = <24000000>; 2311fcc28bcSEmmanuel Vadot}; 2321fcc28bcSEmmanuel Vadot 2331fcc28bcSEmmanuel Vadot&ufs { 2341fcc28bcSEmmanuel Vadot status = "okay"; 2351fcc28bcSEmmanuel Vadot}; 2361fcc28bcSEmmanuel Vadot 2371fcc28bcSEmmanuel Vadot&ufs30_clk { 2381fcc28bcSEmmanuel Vadot clock-frequency = <38400000>; 2391fcc28bcSEmmanuel Vadot}; 240