1// SPDX-License-Identifier: GPL-2.0 2/* 3 * Device Tree Source for the Eagle board with R-Car V3M 4 * 5 * Copyright (C) 2016-2017 Renesas Electronics Corp. 6 * Copyright (C) 2017 Cogent Embedded, Inc. 7 */ 8 9/dts-v1/; 10#include "r8a77970.dtsi" 11#include <dt-bindings/gpio/gpio.h> 12 13/ { 14 model = "Renesas Eagle board based on r8a77970"; 15 compatible = "renesas,eagle", "renesas,r8a77970"; 16 17 aliases { 18 serial0 = &scif0; 19 ethernet0 = &avb; 20 }; 21 22 chosen { 23 bootargs = "ignore_loglevel rw root=/dev/nfs ip=on"; 24 stdout-path = "serial0:115200n8"; 25 }; 26 27 d3p3: regulator-fixed { 28 compatible = "regulator-fixed"; 29 regulator-name = "fixed-3.3V"; 30 regulator-min-microvolt = <3300000>; 31 regulator-max-microvolt = <3300000>; 32 regulator-boot-on; 33 regulator-always-on; 34 }; 35 36 hdmi-out { 37 compatible = "hdmi-connector"; 38 type = "a"; 39 40 port { 41 hdmi_con_out: endpoint { 42 remote-endpoint = <&adv7511_out>; 43 }; 44 }; 45 }; 46 47 lvds-decoder { 48 compatible = "thine,thc63lvd1024"; 49 50 vcc-supply = <&d3p3>; 51 52 ports { 53 #address-cells = <1>; 54 #size-cells = <0>; 55 56 port@0 { 57 reg = <0>; 58 thc63lvd1024_in: endpoint { 59 remote-endpoint = <&lvds0_out>; 60 }; 61 }; 62 63 port@2 { 64 reg = <2>; 65 thc63lvd1024_out: endpoint { 66 remote-endpoint = <&adv7511_in>; 67 }; 68 }; 69 }; 70 }; 71 72 memory@48000000 { 73 device_type = "memory"; 74 /* first 128MB is reserved for secure area. */ 75 reg = <0x0 0x48000000 0x0 0x38000000>; 76 }; 77 78 x1_clk: x1-clock { 79 compatible = "fixed-clock"; 80 #clock-cells = <0>; 81 clock-frequency = <148500000>; 82 }; 83}; 84 85&avb { 86 pinctrl-0 = <&avb_pins>; 87 pinctrl-names = "default"; 88 89 renesas,no-ether-link; 90 phy-handle = <&phy0>; 91 rx-internal-delay-ps = <1800>; 92 tx-internal-delay-ps = <2000>; 93 status = "okay"; 94 95 phy0: ethernet-phy@0 { 96 compatible = "ethernet-phy-id0022.1622", 97 "ethernet-phy-ieee802.3-c22"; 98 rxc-skew-ps = <1500>; 99 reg = <0>; 100 interrupt-parent = <&gpio1>; 101 interrupts = <17 IRQ_TYPE_LEVEL_LOW>; 102 reset-gpios = <&gpio1 16 GPIO_ACTIVE_LOW>; 103 }; 104}; 105 106&canfd { 107 pinctrl-0 = <&canfd0_pins>; 108 pinctrl-names = "default"; 109 status = "okay"; 110 111 channel0 { 112 status = "okay"; 113 }; 114}; 115 116&csi40 { 117 status = "okay"; 118 119 ports { 120 port@0 { 121 csi40_in: endpoint { 122 clock-lanes = <0>; 123 data-lanes = <1 2 3 4>; 124 remote-endpoint = <&max9286_out0>; 125 }; 126 }; 127 }; 128}; 129 130&du { 131 clocks = <&cpg CPG_MOD 724>, <&x1_clk>; 132 clock-names = "du.0", "dclkin.0"; 133 status = "okay"; 134}; 135 136&extal_clk { 137 clock-frequency = <16666666>; 138}; 139 140&extalr_clk { 141 clock-frequency = <32768>; 142}; 143 144&i2c0 { 145 pinctrl-0 = <&i2c0_pins>; 146 pinctrl-names = "default"; 147 148 status = "okay"; 149 clock-frequency = <400000>; 150 151 io_expander: gpio@20 { 152 compatible = "onnn,pca9654"; 153 reg = <0x20>; 154 gpio-controller; 155 #gpio-cells = <2>; 156 }; 157 158 hdmi@39 { 159 compatible = "adi,adv7511w"; 160 reg = <0x39>; 161 interrupt-parent = <&gpio1>; 162 interrupts = <20 IRQ_TYPE_LEVEL_LOW>; 163 164 adi,input-depth = <8>; 165 adi,input-colorspace = "rgb"; 166 adi,input-clock = "1x"; 167 168 ports { 169 #address-cells = <1>; 170 #size-cells = <0>; 171 172 port@0 { 173 reg = <0>; 174 adv7511_in: endpoint { 175 remote-endpoint = <&thc63lvd1024_out>; 176 }; 177 }; 178 179 port@1 { 180 reg = <1>; 181 adv7511_out: endpoint { 182 remote-endpoint = <&hdmi_con_out>; 183 }; 184 }; 185 }; 186 }; 187}; 188 189&i2c3 { 190 pinctrl-0 = <&i2c3_pins>; 191 pinctrl-names = "default"; 192 193 status = "okay"; 194 clock-frequency = <400000>; 195 196 gmsl0: gmsl-deserializer@48 { 197 compatible = "maxim,max9286"; 198 reg = <0x48>; 199 200 maxim,gpio-poc = <0 GPIO_ACTIVE_LOW>; 201 enable-gpios = <&io_expander 0 GPIO_ACTIVE_HIGH>; 202 203 ports { 204 #address-cells = <1>; 205 #size-cells = <0>; 206 207 port@0 { 208 reg = <0>; 209 }; 210 211 port@1 { 212 reg = <1>; 213 }; 214 215 port@2 { 216 reg = <2>; 217 }; 218 219 port@3 { 220 reg = <3>; 221 }; 222 223 port@4 { 224 reg = <4>; 225 max9286_out0: endpoint { 226 clock-lanes = <0>; 227 data-lanes = <1 2 3 4>; 228 remote-endpoint = <&csi40_in>; 229 }; 230 }; 231 }; 232 233 i2c-mux { 234 #address-cells = <1>; 235 #size-cells = <0>; 236 237 i2c@0 { 238 #address-cells = <1>; 239 #size-cells = <0>; 240 reg = <0>; 241 242 status = "disabled"; 243 }; 244 245 i2c@1 { 246 #address-cells = <1>; 247 #size-cells = <0>; 248 reg = <1>; 249 250 status = "disabled"; 251 }; 252 253 i2c@2 { 254 #address-cells = <1>; 255 #size-cells = <0>; 256 reg = <2>; 257 258 status = "disabled"; 259 }; 260 261 i2c@3 { 262 #address-cells = <1>; 263 #size-cells = <0>; 264 reg = <3>; 265 266 status = "disabled"; 267 }; 268 }; 269 }; 270}; 271 272&lvds0 { 273 status = "okay"; 274 275 ports { 276 port@1 { 277 lvds0_out: endpoint { 278 remote-endpoint = <&thc63lvd1024_in>; 279 }; 280 }; 281 }; 282}; 283 284&pfc { 285 avb_pins: avb0 { 286 groups = "avb0_mdio", "avb0_rgmii", "avb0_txcrefclk"; 287 function = "avb0"; 288 }; 289 290 canfd0_pins: canfd0 { 291 groups = "canfd0_data_a"; 292 function = "canfd0"; 293 }; 294 295 i2c0_pins: i2c0 { 296 groups = "i2c0"; 297 function = "i2c0"; 298 }; 299 300 i2c3_pins: i2c3 { 301 groups = "i2c3_a"; 302 function = "i2c3"; 303 }; 304 305 qspi0_pins: qspi0 { 306 groups = "qspi0_ctrl", "qspi0_data4"; 307 function = "qspi0"; 308 }; 309 310 scif0_pins: scif0 { 311 groups = "scif0_data"; 312 function = "scif0"; 313 }; 314}; 315 316&rpc { 317 pinctrl-0 = <&qspi0_pins>; 318 pinctrl-names = "default"; 319 320 status = "okay"; 321 322 flash@0 { 323 compatible = "spansion,s25fs512s", "jedec,spi-nor"; 324 reg = <0>; 325 spi-max-frequency = <50000000>; 326 spi-rx-bus-width = <4>; 327 328 partitions { 329 compatible = "fixed-partitions"; 330 #address-cells = <1>; 331 #size-cells = <1>; 332 333 bootparam@0 { 334 reg = <0x00000000 0x040000>; 335 read-only; 336 }; 337 cr7@40000 { 338 reg = <0x00040000 0x080000>; 339 read-only; 340 }; 341 cert_header_sa3@c0000 { 342 reg = <0x000c0000 0x080000>; 343 read-only; 344 }; 345 bl2@140000 { 346 reg = <0x00140000 0x040000>; 347 read-only; 348 }; 349 cert_header_sa6@180000 { 350 reg = <0x00180000 0x040000>; 351 read-only; 352 }; 353 bl31@1c0000 { 354 reg = <0x001c0000 0x460000>; 355 read-only; 356 }; 357 uboot@640000 { 358 reg = <0x00640000 0x0c0000>; 359 read-only; 360 }; 361 uboot-env@700000 { 362 reg = <0x00700000 0x040000>; 363 read-only; 364 }; 365 dtb@740000 { 366 reg = <0x00740000 0x080000>; 367 }; 368 kernel@7c0000 { 369 reg = <0x007c0000 0x1400000>; 370 }; 371 user@1bc0000 { 372 reg = <0x01bc0000 0x2440000>; 373 }; 374 }; 375 }; 376}; 377 378&rwdt { 379 timeout-sec = <60>; 380 status = "okay"; 381}; 382 383&scif0 { 384 pinctrl-0 = <&scif0_pins>; 385 pinctrl-names = "default"; 386 387 status = "okay"; 388}; 389