1cba59c25SWolfram Sang// SPDX-License-Identifier: GPL-2.0 21a48290eSSergei Shtylyov/* 3cfd7bf66SGeert Uytterhoeven * Device Tree Source for the Eagle board with R-Car V3M 41a48290eSSergei Shtylyov * 51a48290eSSergei Shtylyov * Copyright (C) 2016-2017 Renesas Electronics Corp. 61a48290eSSergei Shtylyov * Copyright (C) 2017 Cogent Embedded, Inc. 71a48290eSSergei Shtylyov */ 81a48290eSSergei Shtylyov 91a48290eSSergei Shtylyov/dts-v1/; 101a48290eSSergei Shtylyov#include "r8a77970.dtsi" 11732e8ee0SGeert Uytterhoeven#include <dt-bindings/gpio/gpio.h> 121a48290eSSergei Shtylyov 131a48290eSSergei Shtylyov/ { 141a48290eSSergei Shtylyov model = "Renesas Eagle board based on r8a77970"; 151a48290eSSergei Shtylyov compatible = "renesas,eagle", "renesas,r8a77970"; 161a48290eSSergei Shtylyov 171a48290eSSergei Shtylyov aliases { 188cc5dcfaSWolfram Sang i2c0 = &i2c0; 198cc5dcfaSWolfram Sang i2c1 = &i2c1; 208cc5dcfaSWolfram Sang i2c2 = &i2c2; 218cc5dcfaSWolfram Sang i2c3 = &i2c3; 228cc5dcfaSWolfram Sang i2c4 = &i2c4; 231a48290eSSergei Shtylyov serial0 = &scif0; 2438525608SSergei Shtylyov ethernet0 = &avb; 251a48290eSSergei Shtylyov }; 261a48290eSSergei Shtylyov 271a48290eSSergei Shtylyov chosen { 28b31b43c9SMagnus Damm bootargs = "ignore_loglevel rw root=/dev/nfs ip=on"; 291a48290eSSergei Shtylyov stdout-path = "serial0:115200n8"; 301a48290eSSergei Shtylyov }; 311a48290eSSergei Shtylyov 3283c5cf19SYoshihiro Kaneko d3p3: regulator-fixed { 3383c5cf19SYoshihiro Kaneko compatible = "regulator-fixed"; 3483c5cf19SYoshihiro Kaneko regulator-name = "fixed-3.3V"; 3583c5cf19SYoshihiro Kaneko regulator-min-microvolt = <3300000>; 3683c5cf19SYoshihiro Kaneko regulator-max-microvolt = <3300000>; 3783c5cf19SYoshihiro Kaneko regulator-boot-on; 3883c5cf19SYoshihiro Kaneko regulator-always-on; 391a48290eSSergei Shtylyov }; 403c3d1672SJacopo Mondi 413c3d1672SJacopo Mondi hdmi-out { 423c3d1672SJacopo Mondi compatible = "hdmi-connector"; 433c3d1672SJacopo Mondi type = "a"; 443c3d1672SJacopo Mondi 453c3d1672SJacopo Mondi port { 463c3d1672SJacopo Mondi hdmi_con_out: endpoint { 473c3d1672SJacopo Mondi remote-endpoint = <&adv7511_out>; 483c3d1672SJacopo Mondi }; 493c3d1672SJacopo Mondi }; 503c3d1672SJacopo Mondi }; 513c3d1672SJacopo Mondi 523c3d1672SJacopo Mondi lvds-decoder { 533c3d1672SJacopo Mondi compatible = "thine,thc63lvd1024"; 543c3d1672SJacopo Mondi 553c3d1672SJacopo Mondi vcc-supply = <&d3p3>; 563c3d1672SJacopo Mondi 573c3d1672SJacopo Mondi ports { 583c3d1672SJacopo Mondi #address-cells = <1>; 593c3d1672SJacopo Mondi #size-cells = <0>; 603c3d1672SJacopo Mondi 613c3d1672SJacopo Mondi port@0 { 623c3d1672SJacopo Mondi reg = <0>; 633c3d1672SJacopo Mondi thc63lvd1024_in: endpoint { 643c3d1672SJacopo Mondi remote-endpoint = <&lvds0_out>; 653c3d1672SJacopo Mondi }; 663c3d1672SJacopo Mondi }; 673c3d1672SJacopo Mondi 683c3d1672SJacopo Mondi port@2 { 693c3d1672SJacopo Mondi reg = <2>; 703c3d1672SJacopo Mondi thc63lvd1024_out: endpoint { 713c3d1672SJacopo Mondi remote-endpoint = <&adv7511_in>; 723c3d1672SJacopo Mondi }; 733c3d1672SJacopo Mondi }; 743c3d1672SJacopo Mondi }; 753c3d1672SJacopo Mondi }; 7683c5cf19SYoshihiro Kaneko 7783c5cf19SYoshihiro Kaneko memory@48000000 { 7883c5cf19SYoshihiro Kaneko device_type = "memory"; 7983c5cf19SYoshihiro Kaneko /* first 128MB is reserved for secure area. */ 8083c5cf19SYoshihiro Kaneko reg = <0x0 0x48000000 0x0 0x38000000>; 8183c5cf19SYoshihiro Kaneko }; 82e9550a53SValentine Barshak 83e9550a53SValentine Barshak x1_clk: x1-clock { 84e9550a53SValentine Barshak compatible = "fixed-clock"; 85e9550a53SValentine Barshak #clock-cells = <0>; 86e9550a53SValentine Barshak clock-frequency = <148500000>; 87e9550a53SValentine Barshak }; 881a48290eSSergei Shtylyov}; 891a48290eSSergei Shtylyov 90d0ff035fSGeert Uytterhoeven&avb { 911119cffeSSergei Shtylyov pinctrl-0 = <&avb_pins>; 921119cffeSSergei Shtylyov pinctrl-names = "default"; 931119cffeSSergei Shtylyov 94d0ff035fSGeert Uytterhoeven renesas,no-ether-link; 95d0ff035fSGeert Uytterhoeven phy-handle = <&phy0>; 969b810181SGeert Uytterhoeven rx-internal-delay-ps = <1800>; 979b810181SGeert Uytterhoeven tx-internal-delay-ps = <2000>; 98d0ff035fSGeert Uytterhoeven status = "okay"; 99d0ff035fSGeert Uytterhoeven 100d0ff035fSGeert Uytterhoeven phy0: ethernet-phy@0 { 101722d55f3SGeert Uytterhoeven compatible = "ethernet-phy-id0022.1622", 102722d55f3SGeert Uytterhoeven "ethernet-phy-ieee802.3-c22"; 103d0ff035fSGeert Uytterhoeven rxc-skew-ps = <1500>; 104d0ff035fSGeert Uytterhoeven reg = <0>; 10551671b26SSergei Shtylyov interrupt-parent = <&gpio1>; 10651671b26SSergei Shtylyov interrupts = <17 IRQ_TYPE_LEVEL_LOW>; 107732e8ee0SGeert Uytterhoeven reset-gpios = <&gpio1 16 GPIO_ACTIVE_LOW>; 108d0ff035fSGeert Uytterhoeven }; 109d0ff035fSGeert Uytterhoeven}; 110d0ff035fSGeert Uytterhoeven 111bb8d2033SSergei Shtylyov&canfd { 112bb8d2033SSergei Shtylyov pinctrl-0 = <&canfd0_pins>; 113bb8d2033SSergei Shtylyov pinctrl-names = "default"; 114bb8d2033SSergei Shtylyov status = "okay"; 115bb8d2033SSergei Shtylyov 116bb8d2033SSergei Shtylyov channel0 { 117bb8d2033SSergei Shtylyov status = "okay"; 118bb8d2033SSergei Shtylyov }; 119bb8d2033SSergei Shtylyov}; 120bb8d2033SSergei Shtylyov 121557165ffSKieran Bingham&csi40 { 122557165ffSKieran Bingham status = "okay"; 123557165ffSKieran Bingham 124557165ffSKieran Bingham ports { 125557165ffSKieran Bingham port@0 { 126557165ffSKieran Bingham csi40_in: endpoint { 127557165ffSKieran Bingham clock-lanes = <0>; 128557165ffSKieran Bingham data-lanes = <1 2 3 4>; 129557165ffSKieran Bingham remote-endpoint = <&max9286_out0>; 130557165ffSKieran Bingham }; 131557165ffSKieran Bingham }; 132557165ffSKieran Bingham }; 133557165ffSKieran Bingham}; 134557165ffSKieran Bingham 13583c5cf19SYoshihiro Kaneko&du { 136e9550a53SValentine Barshak clocks = <&cpg CPG_MOD 724>, <&x1_clk>; 137e9550a53SValentine Barshak clock-names = "du.0", "dclkin.0"; 13883c5cf19SYoshihiro Kaneko status = "okay"; 13983c5cf19SYoshihiro Kaneko}; 14083c5cf19SYoshihiro Kaneko 1411a48290eSSergei Shtylyov&extal_clk { 1421a48290eSSergei Shtylyov clock-frequency = <16666666>; 1431a48290eSSergei Shtylyov}; 1441a48290eSSergei Shtylyov 1451a48290eSSergei Shtylyov&extalr_clk { 1461a48290eSSergei Shtylyov clock-frequency = <32768>; 1471a48290eSSergei Shtylyov}; 1481a48290eSSergei Shtylyov 1497859eb31SSergei Shtylyov&i2c0 { 1507859eb31SSergei Shtylyov pinctrl-0 = <&i2c0_pins>; 1517859eb31SSergei Shtylyov pinctrl-names = "default"; 1527859eb31SSergei Shtylyov 1537859eb31SSergei Shtylyov status = "okay"; 1547859eb31SSergei Shtylyov clock-frequency = <400000>; 1557859eb31SSergei Shtylyov 1567859eb31SSergei Shtylyov io_expander: gpio@20 { 1577859eb31SSergei Shtylyov compatible = "onnn,pca9654"; 1587859eb31SSergei Shtylyov reg = <0x20>; 1597859eb31SSergei Shtylyov gpio-controller; 1607859eb31SSergei Shtylyov #gpio-cells = <2>; 1617859eb31SSergei Shtylyov }; 1623c3d1672SJacopo Mondi 1633c3d1672SJacopo Mondi hdmi@39 { 1643c3d1672SJacopo Mondi compatible = "adi,adv7511w"; 1653c3d1672SJacopo Mondi reg = <0x39>; 1663c3d1672SJacopo Mondi interrupt-parent = <&gpio1>; 1673c3d1672SJacopo Mondi interrupts = <20 IRQ_TYPE_LEVEL_LOW>; 1683c3d1672SJacopo Mondi 1693c3d1672SJacopo Mondi adi,input-depth = <8>; 1703c3d1672SJacopo Mondi adi,input-colorspace = "rgb"; 1713c3d1672SJacopo Mondi adi,input-clock = "1x"; 1723c3d1672SJacopo Mondi 1733c3d1672SJacopo Mondi ports { 1743c3d1672SJacopo Mondi #address-cells = <1>; 1753c3d1672SJacopo Mondi #size-cells = <0>; 1763c3d1672SJacopo Mondi 1773c3d1672SJacopo Mondi port@0 { 1783c3d1672SJacopo Mondi reg = <0>; 1793c3d1672SJacopo Mondi adv7511_in: endpoint { 1803c3d1672SJacopo Mondi remote-endpoint = <&thc63lvd1024_out>; 1813c3d1672SJacopo Mondi }; 1823c3d1672SJacopo Mondi }; 1833c3d1672SJacopo Mondi 1843c3d1672SJacopo Mondi port@1 { 1853c3d1672SJacopo Mondi reg = <1>; 1863c3d1672SJacopo Mondi adv7511_out: endpoint { 1873c3d1672SJacopo Mondi remote-endpoint = <&hdmi_con_out>; 1883c3d1672SJacopo Mondi }; 1893c3d1672SJacopo Mondi }; 1903c3d1672SJacopo Mondi }; 1913c3d1672SJacopo Mondi }; 1927859eb31SSergei Shtylyov}; 1937859eb31SSergei Shtylyov 194557165ffSKieran Bingham&i2c3 { 195557165ffSKieran Bingham pinctrl-0 = <&i2c3_pins>; 196557165ffSKieran Bingham pinctrl-names = "default"; 197557165ffSKieran Bingham 198557165ffSKieran Bingham status = "okay"; 199557165ffSKieran Bingham clock-frequency = <400000>; 200557165ffSKieran Bingham 201557165ffSKieran Bingham gmsl0: gmsl-deserializer@48 { 202557165ffSKieran Bingham compatible = "maxim,max9286"; 203557165ffSKieran Bingham reg = <0x48>; 204557165ffSKieran Bingham 205557165ffSKieran Bingham maxim,gpio-poc = <0 GPIO_ACTIVE_LOW>; 206557165ffSKieran Bingham enable-gpios = <&io_expander 0 GPIO_ACTIVE_HIGH>; 207557165ffSKieran Bingham 208557165ffSKieran Bingham ports { 209557165ffSKieran Bingham #address-cells = <1>; 210557165ffSKieran Bingham #size-cells = <0>; 211557165ffSKieran Bingham 212557165ffSKieran Bingham port@0 { 213557165ffSKieran Bingham reg = <0>; 214557165ffSKieran Bingham }; 215557165ffSKieran Bingham 216557165ffSKieran Bingham port@1 { 217557165ffSKieran Bingham reg = <1>; 218557165ffSKieran Bingham }; 219557165ffSKieran Bingham 220557165ffSKieran Bingham port@2 { 221557165ffSKieran Bingham reg = <2>; 222557165ffSKieran Bingham }; 223557165ffSKieran Bingham 224557165ffSKieran Bingham port@3 { 225557165ffSKieran Bingham reg = <3>; 226557165ffSKieran Bingham }; 227557165ffSKieran Bingham 228557165ffSKieran Bingham port@4 { 229557165ffSKieran Bingham reg = <4>; 230557165ffSKieran Bingham max9286_out0: endpoint { 231557165ffSKieran Bingham clock-lanes = <0>; 232557165ffSKieran Bingham data-lanes = <1 2 3 4>; 233557165ffSKieran Bingham remote-endpoint = <&csi40_in>; 234557165ffSKieran Bingham }; 235557165ffSKieran Bingham }; 236557165ffSKieran Bingham }; 237557165ffSKieran Bingham 238557165ffSKieran Bingham i2c-mux { 239557165ffSKieran Bingham #address-cells = <1>; 240557165ffSKieran Bingham #size-cells = <0>; 241557165ffSKieran Bingham 242557165ffSKieran Bingham i2c@0 { 243557165ffSKieran Bingham #address-cells = <1>; 244557165ffSKieran Bingham #size-cells = <0>; 245557165ffSKieran Bingham reg = <0>; 246557165ffSKieran Bingham 247557165ffSKieran Bingham status = "disabled"; 248557165ffSKieran Bingham }; 249557165ffSKieran Bingham 250557165ffSKieran Bingham i2c@1 { 251557165ffSKieran Bingham #address-cells = <1>; 252557165ffSKieran Bingham #size-cells = <0>; 253557165ffSKieran Bingham reg = <1>; 254557165ffSKieran Bingham 255557165ffSKieran Bingham status = "disabled"; 256557165ffSKieran Bingham }; 257557165ffSKieran Bingham 258557165ffSKieran Bingham i2c@2 { 259557165ffSKieran Bingham #address-cells = <1>; 260557165ffSKieran Bingham #size-cells = <0>; 261557165ffSKieran Bingham reg = <2>; 262557165ffSKieran Bingham 263557165ffSKieran Bingham status = "disabled"; 264557165ffSKieran Bingham }; 265557165ffSKieran Bingham 266557165ffSKieran Bingham i2c@3 { 267557165ffSKieran Bingham #address-cells = <1>; 268557165ffSKieran Bingham #size-cells = <0>; 269557165ffSKieran Bingham reg = <3>; 270557165ffSKieran Bingham 271557165ffSKieran Bingham status = "disabled"; 272557165ffSKieran Bingham }; 273557165ffSKieran Bingham }; 274557165ffSKieran Bingham }; 275557165ffSKieran Bingham}; 276557165ffSKieran Bingham 27783c5cf19SYoshihiro Kaneko&lvds0 { 27883c5cf19SYoshihiro Kaneko status = "okay"; 27983c5cf19SYoshihiro Kaneko 28083c5cf19SYoshihiro Kaneko ports { 28183c5cf19SYoshihiro Kaneko port@1 { 28283c5cf19SYoshihiro Kaneko lvds0_out: endpoint { 28383c5cf19SYoshihiro Kaneko remote-endpoint = <&thc63lvd1024_in>; 28483c5cf19SYoshihiro Kaneko }; 28583c5cf19SYoshihiro Kaneko }; 28683c5cf19SYoshihiro Kaneko }; 28783c5cf19SYoshihiro Kaneko}; 28883c5cf19SYoshihiro Kaneko 28931bded67SSergei Shtylyov&pfc { 290*a6a4bfeaSGeert Uytterhoeven pinctrl-0 = <&scif_clk_pins>; 291*a6a4bfeaSGeert Uytterhoeven pinctrl-names = "default"; 292*a6a4bfeaSGeert Uytterhoeven 2931119cffeSSergei Shtylyov avb_pins: avb0 { 2941119cffeSSergei Shtylyov groups = "avb0_mdio", "avb0_rgmii", "avb0_txcrefclk"; 2951119cffeSSergei Shtylyov function = "avb0"; 2961119cffeSSergei Shtylyov }; 2971119cffeSSergei Shtylyov 298bb8d2033SSergei Shtylyov canfd0_pins: canfd0 { 299bb8d2033SSergei Shtylyov groups = "canfd0_data_a"; 300bb8d2033SSergei Shtylyov function = "canfd0"; 301bb8d2033SSergei Shtylyov }; 302bb8d2033SSergei Shtylyov 3037859eb31SSergei Shtylyov i2c0_pins: i2c0 { 3047859eb31SSergei Shtylyov groups = "i2c0"; 3057859eb31SSergei Shtylyov function = "i2c0"; 3067859eb31SSergei Shtylyov }; 3077859eb31SSergei Shtylyov 308557165ffSKieran Bingham i2c3_pins: i2c3 { 309557165ffSKieran Bingham groups = "i2c3_a"; 310557165ffSKieran Bingham function = "i2c3"; 311557165ffSKieran Bingham }; 312557165ffSKieran Bingham 313daa36ae0SSergei Shtylyov qspi0_pins: qspi0 { 314daa36ae0SSergei Shtylyov groups = "qspi0_ctrl", "qspi0_data4"; 315daa36ae0SSergei Shtylyov function = "qspi0"; 316daa36ae0SSergei Shtylyov }; 317daa36ae0SSergei Shtylyov 31831bded67SSergei Shtylyov scif0_pins: scif0 { 31931bded67SSergei Shtylyov groups = "scif0_data"; 32031bded67SSergei Shtylyov function = "scif0"; 32131bded67SSergei Shtylyov }; 322*a6a4bfeaSGeert Uytterhoeven 323*a6a4bfeaSGeert Uytterhoeven scif_clk_pins: scif_clk { 324*a6a4bfeaSGeert Uytterhoeven groups = "scif_clk_b"; 325*a6a4bfeaSGeert Uytterhoeven function = "scif_clk"; 326*a6a4bfeaSGeert Uytterhoeven }; 32731bded67SSergei Shtylyov}; 32831bded67SSergei Shtylyov 329daa36ae0SSergei Shtylyov&rpc { 330daa36ae0SSergei Shtylyov pinctrl-0 = <&qspi0_pins>; 331daa36ae0SSergei Shtylyov pinctrl-names = "default"; 332daa36ae0SSergei Shtylyov 333daa36ae0SSergei Shtylyov status = "okay"; 334daa36ae0SSergei Shtylyov 335daa36ae0SSergei Shtylyov flash@0 { 336daa36ae0SSergei Shtylyov compatible = "spansion,s25fs512s", "jedec,spi-nor"; 337daa36ae0SSergei Shtylyov reg = <0>; 338daa36ae0SSergei Shtylyov spi-max-frequency = <50000000>; 339daa36ae0SSergei Shtylyov spi-rx-bus-width = <4>; 340daa36ae0SSergei Shtylyov 341daa36ae0SSergei Shtylyov partitions { 342daa36ae0SSergei Shtylyov compatible = "fixed-partitions"; 343daa36ae0SSergei Shtylyov #address-cells = <1>; 344daa36ae0SSergei Shtylyov #size-cells = <1>; 345daa36ae0SSergei Shtylyov 346daa36ae0SSergei Shtylyov bootparam@0 { 347daa36ae0SSergei Shtylyov reg = <0x00000000 0x040000>; 348daa36ae0SSergei Shtylyov read-only; 349daa36ae0SSergei Shtylyov }; 350daa36ae0SSergei Shtylyov cr7@40000 { 351daa36ae0SSergei Shtylyov reg = <0x00040000 0x080000>; 352daa36ae0SSergei Shtylyov read-only; 353daa36ae0SSergei Shtylyov }; 354daa36ae0SSergei Shtylyov cert_header_sa3@c0000 { 355daa36ae0SSergei Shtylyov reg = <0x000c0000 0x080000>; 356daa36ae0SSergei Shtylyov read-only; 357daa36ae0SSergei Shtylyov }; 358daa36ae0SSergei Shtylyov bl2@140000 { 359daa36ae0SSergei Shtylyov reg = <0x00140000 0x040000>; 360daa36ae0SSergei Shtylyov read-only; 361daa36ae0SSergei Shtylyov }; 362daa36ae0SSergei Shtylyov cert_header_sa6@180000 { 363daa36ae0SSergei Shtylyov reg = <0x00180000 0x040000>; 364daa36ae0SSergei Shtylyov read-only; 365daa36ae0SSergei Shtylyov }; 366daa36ae0SSergei Shtylyov bl31@1c0000 { 367daa36ae0SSergei Shtylyov reg = <0x001c0000 0x460000>; 368daa36ae0SSergei Shtylyov read-only; 369daa36ae0SSergei Shtylyov }; 370daa36ae0SSergei Shtylyov uboot@640000 { 371daa36ae0SSergei Shtylyov reg = <0x00640000 0x0c0000>; 372daa36ae0SSergei Shtylyov read-only; 373daa36ae0SSergei Shtylyov }; 374daa36ae0SSergei Shtylyov uboot-env@700000 { 375daa36ae0SSergei Shtylyov reg = <0x00700000 0x040000>; 376daa36ae0SSergei Shtylyov read-only; 377daa36ae0SSergei Shtylyov }; 378daa36ae0SSergei Shtylyov dtb@740000 { 379daa36ae0SSergei Shtylyov reg = <0x00740000 0x080000>; 380daa36ae0SSergei Shtylyov }; 381daa36ae0SSergei Shtylyov kernel@7c0000 { 382daa36ae0SSergei Shtylyov reg = <0x007c0000 0x1400000>; 383daa36ae0SSergei Shtylyov }; 384daa36ae0SSergei Shtylyov user@1bc0000 { 385daa36ae0SSergei Shtylyov reg = <0x01bc0000 0x2440000>; 386daa36ae0SSergei Shtylyov }; 387daa36ae0SSergei Shtylyov }; 388daa36ae0SSergei Shtylyov }; 389daa36ae0SSergei Shtylyov}; 390daa36ae0SSergei Shtylyov 391fd363f54SGeert Uytterhoeven&rwdt { 392fd363f54SGeert Uytterhoeven timeout-sec = <60>; 393fd363f54SGeert Uytterhoeven status = "okay"; 394fd363f54SGeert Uytterhoeven}; 395fd363f54SGeert Uytterhoeven 3961a48290eSSergei Shtylyov&scif0 { 39731bded67SSergei Shtylyov pinctrl-0 = <&scif0_pins>; 39831bded67SSergei Shtylyov pinctrl-names = "default"; 39931bded67SSergei Shtylyov 4001a48290eSSergei Shtylyov status = "okay"; 4011a48290eSSergei Shtylyov}; 402*a6a4bfeaSGeert Uytterhoeven 403*a6a4bfeaSGeert Uytterhoeven&scif_clk { 404*a6a4bfeaSGeert Uytterhoeven clock-frequency = <14745600>; 405*a6a4bfeaSGeert Uytterhoeven}; 406