1*01950c46SEmmanuel Vadot// SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 2*01950c46SEmmanuel Vadot/* 3*01950c46SEmmanuel Vadot * Device Tree Source for the R-Car V4M Gray Hawk Single board 4*01950c46SEmmanuel Vadot * 5*01950c46SEmmanuel Vadot * Copyright (C) 2023 Renesas Electronics Corp. 6*01950c46SEmmanuel Vadot * Copyright (C) 2024 Glider bv 7*01950c46SEmmanuel Vadot */ 8*01950c46SEmmanuel Vadot 9*01950c46SEmmanuel Vadot/dts-v1/; 10*01950c46SEmmanuel Vadot 11*01950c46SEmmanuel Vadot#include <dt-bindings/gpio/gpio.h> 12*01950c46SEmmanuel Vadot 13*01950c46SEmmanuel Vadot#include "r8a779h0.dtsi" 14*01950c46SEmmanuel Vadot 15*01950c46SEmmanuel Vadot/ { 16*01950c46SEmmanuel Vadot model = "Renesas Gray Hawk Single board based on r8a779h0"; 17*01950c46SEmmanuel Vadot compatible = "renesas,gray-hawk-single", "renesas,r8a779h0"; 18*01950c46SEmmanuel Vadot 19*01950c46SEmmanuel Vadot aliases { 20*01950c46SEmmanuel Vadot serial0 = &hscif0; 21*01950c46SEmmanuel Vadot ethernet0 = &avb0; 22*01950c46SEmmanuel Vadot }; 23*01950c46SEmmanuel Vadot 24*01950c46SEmmanuel Vadot chosen { 25*01950c46SEmmanuel Vadot bootargs = "ignore_loglevel"; 26*01950c46SEmmanuel Vadot stdout-path = "serial0:921600n8"; 27*01950c46SEmmanuel Vadot }; 28*01950c46SEmmanuel Vadot 29*01950c46SEmmanuel Vadot memory@48000000 { 30*01950c46SEmmanuel Vadot device_type = "memory"; 31*01950c46SEmmanuel Vadot /* first 128MB is reserved for secure area. */ 32*01950c46SEmmanuel Vadot reg = <0x0 0x48000000 0x0 0x78000000>; 33*01950c46SEmmanuel Vadot }; 34*01950c46SEmmanuel Vadot 35*01950c46SEmmanuel Vadot memory@480000000 { 36*01950c46SEmmanuel Vadot device_type = "memory"; 37*01950c46SEmmanuel Vadot reg = <0x4 0x80000000 0x1 0x80000000>; 38*01950c46SEmmanuel Vadot }; 39*01950c46SEmmanuel Vadot 40*01950c46SEmmanuel Vadot reg_1p8v: regulator-1p8v { 41*01950c46SEmmanuel Vadot compatible = "regulator-fixed"; 42*01950c46SEmmanuel Vadot regulator-name = "fixed-1.8V"; 43*01950c46SEmmanuel Vadot regulator-min-microvolt = <1800000>; 44*01950c46SEmmanuel Vadot regulator-max-microvolt = <1800000>; 45*01950c46SEmmanuel Vadot regulator-boot-on; 46*01950c46SEmmanuel Vadot regulator-always-on; 47*01950c46SEmmanuel Vadot }; 48*01950c46SEmmanuel Vadot 49*01950c46SEmmanuel Vadot reg_3p3v: regulator-3p3v { 50*01950c46SEmmanuel Vadot compatible = "regulator-fixed"; 51*01950c46SEmmanuel Vadot regulator-name = "fixed-3.3V"; 52*01950c46SEmmanuel Vadot regulator-min-microvolt = <3300000>; 53*01950c46SEmmanuel Vadot regulator-max-microvolt = <3300000>; 54*01950c46SEmmanuel Vadot regulator-boot-on; 55*01950c46SEmmanuel Vadot regulator-always-on; 56*01950c46SEmmanuel Vadot }; 57*01950c46SEmmanuel Vadot}; 58*01950c46SEmmanuel Vadot 59*01950c46SEmmanuel Vadot&avb0 { 60*01950c46SEmmanuel Vadot pinctrl-0 = <&avb0_pins>; 61*01950c46SEmmanuel Vadot pinctrl-names = "default"; 62*01950c46SEmmanuel Vadot phy-handle = <&phy0>; 63*01950c46SEmmanuel Vadot tx-internal-delay-ps = <2000>; 64*01950c46SEmmanuel Vadot status = "okay"; 65*01950c46SEmmanuel Vadot 66*01950c46SEmmanuel Vadot phy0: ethernet-phy@0 { 67*01950c46SEmmanuel Vadot compatible = "ethernet-phy-id0022.1622", 68*01950c46SEmmanuel Vadot "ethernet-phy-ieee802.3-c22"; 69*01950c46SEmmanuel Vadot rxc-skew-ps = <1500>; 70*01950c46SEmmanuel Vadot reg = <0>; 71*01950c46SEmmanuel Vadot interrupt-parent = <&gpio7>; 72*01950c46SEmmanuel Vadot interrupts = <5 IRQ_TYPE_LEVEL_LOW>; 73*01950c46SEmmanuel Vadot reset-gpios = <&gpio7 10 GPIO_ACTIVE_LOW>; 74*01950c46SEmmanuel Vadot }; 75*01950c46SEmmanuel Vadot}; 76*01950c46SEmmanuel Vadot 77*01950c46SEmmanuel Vadot&extal_clk { 78*01950c46SEmmanuel Vadot clock-frequency = <16666666>; 79*01950c46SEmmanuel Vadot}; 80*01950c46SEmmanuel Vadot 81*01950c46SEmmanuel Vadot&extalr_clk { 82*01950c46SEmmanuel Vadot clock-frequency = <32768>; 83*01950c46SEmmanuel Vadot}; 84*01950c46SEmmanuel Vadot 85*01950c46SEmmanuel Vadot&hscif0 { 86*01950c46SEmmanuel Vadot pinctrl-0 = <&hscif0_pins>; 87*01950c46SEmmanuel Vadot pinctrl-names = "default"; 88*01950c46SEmmanuel Vadot 89*01950c46SEmmanuel Vadot uart-has-rtscts; 90*01950c46SEmmanuel Vadot status = "okay"; 91*01950c46SEmmanuel Vadot}; 92*01950c46SEmmanuel Vadot 93*01950c46SEmmanuel Vadot&i2c0 { 94*01950c46SEmmanuel Vadot pinctrl-0 = <&i2c0_pins>; 95*01950c46SEmmanuel Vadot pinctrl-names = "default"; 96*01950c46SEmmanuel Vadot 97*01950c46SEmmanuel Vadot status = "okay"; 98*01950c46SEmmanuel Vadot clock-frequency = <400000>; 99*01950c46SEmmanuel Vadot 100*01950c46SEmmanuel Vadot eeprom@50 { 101*01950c46SEmmanuel Vadot compatible = "rohm,br24g01", "atmel,24c01"; 102*01950c46SEmmanuel Vadot label = "cpu-board"; 103*01950c46SEmmanuel Vadot reg = <0x50>; 104*01950c46SEmmanuel Vadot pagesize = <8>; 105*01950c46SEmmanuel Vadot }; 106*01950c46SEmmanuel Vadot 107*01950c46SEmmanuel Vadot eeprom@51 { 108*01950c46SEmmanuel Vadot compatible = "rohm,br24g01", "atmel,24c01"; 109*01950c46SEmmanuel Vadot label = "breakout-board"; 110*01950c46SEmmanuel Vadot reg = <0x51>; 111*01950c46SEmmanuel Vadot pagesize = <8>; 112*01950c46SEmmanuel Vadot }; 113*01950c46SEmmanuel Vadot 114*01950c46SEmmanuel Vadot eeprom@52 { 115*01950c46SEmmanuel Vadot compatible = "rohm,br24g01", "atmel,24c01"; 116*01950c46SEmmanuel Vadot label = "csi-dsi-sub-board-id"; 117*01950c46SEmmanuel Vadot reg = <0x52>; 118*01950c46SEmmanuel Vadot pagesize = <8>; 119*01950c46SEmmanuel Vadot }; 120*01950c46SEmmanuel Vadot 121*01950c46SEmmanuel Vadot eeprom@53 { 122*01950c46SEmmanuel Vadot compatible = "rohm,br24g01", "atmel,24c01"; 123*01950c46SEmmanuel Vadot label = "ethernet-sub-board-id"; 124*01950c46SEmmanuel Vadot reg = <0x53>; 125*01950c46SEmmanuel Vadot pagesize = <8>; 126*01950c46SEmmanuel Vadot }; 127*01950c46SEmmanuel Vadot}; 128*01950c46SEmmanuel Vadot 129*01950c46SEmmanuel Vadot&mmc0 { 130*01950c46SEmmanuel Vadot pinctrl-0 = <&mmc_pins>; 131*01950c46SEmmanuel Vadot pinctrl-1 = <&mmc_pins>; 132*01950c46SEmmanuel Vadot pinctrl-names = "default", "state_uhs"; 133*01950c46SEmmanuel Vadot 134*01950c46SEmmanuel Vadot vmmc-supply = <®_3p3v>; 135*01950c46SEmmanuel Vadot vqmmc-supply = <®_1p8v>; 136*01950c46SEmmanuel Vadot mmc-hs200-1_8v; 137*01950c46SEmmanuel Vadot mmc-hs400-1_8v; 138*01950c46SEmmanuel Vadot bus-width = <8>; 139*01950c46SEmmanuel Vadot no-sd; 140*01950c46SEmmanuel Vadot no-sdio; 141*01950c46SEmmanuel Vadot non-removable; 142*01950c46SEmmanuel Vadot full-pwr-cycle-in-suspend; 143*01950c46SEmmanuel Vadot status = "okay"; 144*01950c46SEmmanuel Vadot}; 145*01950c46SEmmanuel Vadot 146*01950c46SEmmanuel Vadot&pfc { 147*01950c46SEmmanuel Vadot pinctrl-0 = <&scif_clk_pins>; 148*01950c46SEmmanuel Vadot pinctrl-names = "default"; 149*01950c46SEmmanuel Vadot 150*01950c46SEmmanuel Vadot avb0_pins: avb0 { 151*01950c46SEmmanuel Vadot mux { 152*01950c46SEmmanuel Vadot groups = "avb0_link", "avb0_mdio", "avb0_rgmii", 153*01950c46SEmmanuel Vadot "avb0_txcrefclk"; 154*01950c46SEmmanuel Vadot function = "avb0"; 155*01950c46SEmmanuel Vadot }; 156*01950c46SEmmanuel Vadot 157*01950c46SEmmanuel Vadot pins_mdio { 158*01950c46SEmmanuel Vadot groups = "avb0_mdio"; 159*01950c46SEmmanuel Vadot drive-strength = <21>; 160*01950c46SEmmanuel Vadot }; 161*01950c46SEmmanuel Vadot 162*01950c46SEmmanuel Vadot pins_mii { 163*01950c46SEmmanuel Vadot groups = "avb0_rgmii"; 164*01950c46SEmmanuel Vadot drive-strength = <21>; 165*01950c46SEmmanuel Vadot }; 166*01950c46SEmmanuel Vadot }; 167*01950c46SEmmanuel Vadot 168*01950c46SEmmanuel Vadot hscif0_pins: hscif0 { 169*01950c46SEmmanuel Vadot groups = "hscif0_data", "hscif0_ctrl"; 170*01950c46SEmmanuel Vadot function = "hscif0"; 171*01950c46SEmmanuel Vadot }; 172*01950c46SEmmanuel Vadot 173*01950c46SEmmanuel Vadot i2c0_pins: i2c0 { 174*01950c46SEmmanuel Vadot groups = "i2c0"; 175*01950c46SEmmanuel Vadot function = "i2c0"; 176*01950c46SEmmanuel Vadot }; 177*01950c46SEmmanuel Vadot 178*01950c46SEmmanuel Vadot mmc_pins: mmc { 179*01950c46SEmmanuel Vadot groups = "mmc_data8", "mmc_ctrl", "mmc_ds"; 180*01950c46SEmmanuel Vadot function = "mmc"; 181*01950c46SEmmanuel Vadot power-source = <1800>; 182*01950c46SEmmanuel Vadot }; 183*01950c46SEmmanuel Vadot 184*01950c46SEmmanuel Vadot qspi0_pins: qspi0 { 185*01950c46SEmmanuel Vadot groups = "qspi0_ctrl", "qspi0_data4"; 186*01950c46SEmmanuel Vadot function = "qspi0"; 187*01950c46SEmmanuel Vadot }; 188*01950c46SEmmanuel Vadot 189*01950c46SEmmanuel Vadot scif_clk_pins: scif-clk { 190*01950c46SEmmanuel Vadot groups = "scif_clk"; 191*01950c46SEmmanuel Vadot function = "scif_clk"; 192*01950c46SEmmanuel Vadot }; 193*01950c46SEmmanuel Vadot}; 194*01950c46SEmmanuel Vadot 195*01950c46SEmmanuel Vadot&rpc { 196*01950c46SEmmanuel Vadot pinctrl-0 = <&qspi0_pins>; 197*01950c46SEmmanuel Vadot pinctrl-names = "default"; 198*01950c46SEmmanuel Vadot 199*01950c46SEmmanuel Vadot status = "okay"; 200*01950c46SEmmanuel Vadot 201*01950c46SEmmanuel Vadot flash@0 { 202*01950c46SEmmanuel Vadot compatible = "spansion,s25fs512s", "jedec,spi-nor"; 203*01950c46SEmmanuel Vadot reg = <0>; 204*01950c46SEmmanuel Vadot spi-max-frequency = <40000000>; 205*01950c46SEmmanuel Vadot spi-rx-bus-width = <4>; 206*01950c46SEmmanuel Vadot 207*01950c46SEmmanuel Vadot partitions { 208*01950c46SEmmanuel Vadot compatible = "fixed-partitions"; 209*01950c46SEmmanuel Vadot #address-cells = <1>; 210*01950c46SEmmanuel Vadot #size-cells = <1>; 211*01950c46SEmmanuel Vadot 212*01950c46SEmmanuel Vadot boot@0 { 213*01950c46SEmmanuel Vadot reg = <0x0 0x1200000>; 214*01950c46SEmmanuel Vadot read-only; 215*01950c46SEmmanuel Vadot }; 216*01950c46SEmmanuel Vadot user@1200000 { 217*01950c46SEmmanuel Vadot reg = <0x1200000 0x2e00000>; 218*01950c46SEmmanuel Vadot }; 219*01950c46SEmmanuel Vadot }; 220*01950c46SEmmanuel Vadot }; 221*01950c46SEmmanuel Vadot}; 222*01950c46SEmmanuel Vadot 223*01950c46SEmmanuel Vadot&rwdt { 224*01950c46SEmmanuel Vadot timeout-sec = <60>; 225*01950c46SEmmanuel Vadot status = "okay"; 226*01950c46SEmmanuel Vadot}; 227*01950c46SEmmanuel Vadot 228*01950c46SEmmanuel Vadot&scif_clk { 229*01950c46SEmmanuel Vadot clock-frequency = <24000000>; 230*01950c46SEmmanuel Vadot}; 231