Back to home page

OSCL-LXR

 
 

    


0001 // SPDX-License-Identifier: GPL-2.0
0002 /*
0003  * Device Tree Source for the Wheat board
0004  *
0005  * Copyright (C) 2016 Renesas Electronics Corporation
0006  * Copyright (C) 2016 Cogent  Embedded, Inc.
0007  */
0008 
0009 /dts-v1/;
0010 #include "r8a7792.dtsi"
0011 #include <dt-bindings/gpio/gpio.h>
0012 #include <dt-bindings/input/input.h>
0013 
0014 / {
0015         model = "Wheat";
0016         compatible = "renesas,wheat", "renesas,r8a7792";
0017 
0018         aliases {
0019                 serial0 = &scif0;
0020         };
0021 
0022         chosen {
0023                 bootargs = "ignore_loglevel rw root=/dev/nfs ip=on";
0024                 stdout-path = "serial0:115200n8";
0025         };
0026 
0027         memory@40000000 {
0028                 device_type = "memory";
0029                 reg = <0 0x40000000 0 0x40000000>;
0030         };
0031 
0032         d3_3v: regulator-3v3 {
0033                 compatible = "regulator-fixed";
0034                 regulator-name = "D3.3V";
0035                 regulator-min-microvolt = <3300000>;
0036                 regulator-max-microvolt = <3300000>;
0037                 regulator-boot-on;
0038                 regulator-always-on;
0039         };
0040 
0041         ethernet@18000000 {
0042                 compatible = "smsc,lan89218", "smsc,lan9115";
0043                 reg = <0 0x18000000 0 0x100>;
0044                 phy-mode = "mii";
0045                 interrupt-parent = <&irqc>;
0046                 interrupts = <0 IRQ_TYPE_EDGE_FALLING>;
0047                 smsc,irq-push-pull;
0048                 smsc,save-mac-address;
0049                 reg-io-width = <4>;
0050                 vddvario-supply = <&d3_3v>;
0051                 vdd33a-supply = <&d3_3v>;
0052 
0053                 pinctrl-0 = <&lan89218_pins>;
0054                 pinctrl-names = "default";
0055         };
0056 
0057         keyboard {
0058                 compatible = "gpio-keys";
0059 
0060                 key-a {
0061                         linux,code = <KEY_A>;
0062                         label = "SW2";
0063                         wakeup-source;
0064                         debounce-interval = <20>;
0065                         gpios = <&gpio3 20 GPIO_ACTIVE_LOW>;
0066                 };
0067                 key-b {
0068                         linux,code = <KEY_B>;
0069                         label = "SW3";
0070                         wakeup-source;
0071                         debounce-interval = <20>;
0072                         gpios = <&gpio11 2 GPIO_ACTIVE_LOW>;
0073                 };
0074         };
0075 
0076         vcc_sdhi0: regulator-vcc-sdhi0 {
0077                 compatible = "regulator-fixed";
0078 
0079                 regulator-name = "SDHI0 Vcc";
0080                 regulator-min-microvolt = <3300000>;
0081                 regulator-max-microvolt = <3300000>;
0082 
0083                 gpio = <&gpio11 12 GPIO_ACTIVE_HIGH>;
0084                 enable-active-high;
0085         };
0086 
0087         hdmi-out0 {
0088                 compatible = "hdmi-connector";
0089                 type = "a";
0090 
0091                 port {
0092                         hdmi_con0: endpoint {
0093                                 remote-endpoint = <&adv7513_0_out>;
0094                         };
0095                 };
0096         };
0097 
0098         hdmi-out1 {
0099                 compatible = "hdmi-connector";
0100                 type = "a";
0101 
0102                 port {
0103                         hdmi_con1: endpoint {
0104                                 remote-endpoint = <&adv7513_1_out>;
0105                         };
0106                 };
0107         };
0108 
0109         osc2_clk: osc2 {
0110                 compatible = "fixed-clock";
0111                 #clock-cells = <0>;
0112                 clock-frequency = <74250000>;
0113         };
0114 };
0115 
0116 &extal_clk {
0117         clock-frequency = <20000000>;
0118 };
0119 
0120 &pfc {
0121         scif0_pins: scif0 {
0122                 groups = "scif0_data";
0123                 function = "scif0";
0124         };
0125 
0126         lan89218_pins: lan89218 {
0127                 intc {
0128                         groups = "intc_irq0";
0129                         function = "intc";
0130                 };
0131                 lbsc {
0132                         groups = "lbsc_ex_cs0";
0133                         function = "lbsc";
0134                 };
0135         };
0136 
0137         can0_pins: can0 {
0138                 groups = "can0_data";
0139                 function = "can0";
0140         };
0141 
0142         can1_pins: can1 {
0143                 groups = "can1_data";
0144                 function = "can1";
0145         };
0146 
0147         sdhi0_pins: sdhi0 {
0148                 groups = "sdhi0_data4", "sdhi0_ctrl";
0149                 function = "sdhi0";
0150         };
0151 
0152         qspi_pins: qspi {
0153                 groups = "qspi_ctrl", "qspi_data4";
0154                 function = "qspi";
0155         };
0156 
0157         du0_pins: du0 {
0158                 groups = "du0_rgb888", "du0_sync", "du0_disp";
0159                 function = "du0";
0160         };
0161 
0162         du1_pins: du1 {
0163                 groups = "du1_rgb666", "du1_sync", "du1_disp";
0164                 function = "du1";
0165         };
0166 };
0167 
0168 &rwdt {
0169         timeout-sec = <60>;
0170         status = "okay";
0171 };
0172 
0173 &scif0 {
0174         pinctrl-0 = <&scif0_pins>;
0175         pinctrl-names = "default";
0176 
0177         status = "okay";
0178 };
0179 
0180 &can0 {
0181         pinctrl-0 = <&can0_pins>;
0182         pinctrl-names = "default";
0183 
0184         status = "okay";
0185 };
0186 
0187 &can1 {
0188         pinctrl-0 = <&can1_pins>;
0189         pinctrl-names = "default";
0190 
0191         status = "okay";
0192 };
0193 
0194 &sdhi0 {
0195         pinctrl-0 = <&sdhi0_pins>;
0196         pinctrl-names = "default";
0197 
0198         vmmc-supply = <&vcc_sdhi0>;
0199         cd-gpios = <&gpio11 11 GPIO_ACTIVE_LOW>;
0200         status = "okay";
0201 };
0202 
0203 &qspi {
0204         pinctrl-0 = <&qspi_pins>;
0205         pinctrl-names = "default";
0206         status = "okay";
0207 
0208         flash@0 {
0209                 compatible = "spansion,s25fl512s", "jedec,spi-nor";
0210                 reg = <0>;
0211                 spi-max-frequency = <30000000>;
0212                 spi-tx-bus-width = <4>;
0213                 spi-rx-bus-width = <4>;
0214                 spi-cpol;
0215                 spi-cpha;
0216                 m25p,fast-read;
0217 
0218                 partitions {
0219                         compatible = "fixed-partitions";
0220                         #address-cells = <1>;
0221                         #size-cells = <1>;
0222 
0223                         partition@0 {
0224                                 label = "loader";
0225                                 reg = <0x00000000 0x00040000>;
0226                                 read-only;
0227                         };
0228                         partition@40000 {
0229                                 label = "user";
0230                                 reg = <0x00040000 0x00400000>;
0231                                 read-only;
0232                         };
0233                         partition@440000 {
0234                                 label = "flash";
0235                                 reg = <0x00440000 0x03bc0000>;
0236                         };
0237                 };
0238         };
0239 };
0240 
0241 &i2c4 {
0242         status = "okay";
0243         clock-frequency = <400000>;
0244 
0245         /*
0246          * The adv75xx resets its addresses to defaults during low power mode.
0247          * Because we have two ADV7513 devices on the same bus, we must change
0248          * both of them away from the defaults so that they do not conflict.
0249          */
0250         hdmi@3d {
0251                 compatible = "adi,adv7513";
0252                 reg = <0x3d>, <0x4d>, <0x2d>, <0x5d>;
0253                 reg-names = "main", "edid", "cec", "packet";
0254 
0255                 adi,input-depth = <8>;
0256                 adi,input-colorspace = "rgb";
0257                 adi,input-clock = "1x";
0258 
0259                 ports {
0260                         #address-cells = <1>;
0261                         #size-cells = <0>;
0262 
0263                         port@0 {
0264                                 reg = <0>;
0265                                 adv7513_0_in: endpoint {
0266                                         remote-endpoint = <&du_out_rgb0>;
0267                                 };
0268                         };
0269 
0270                         port@1 {
0271                                 reg = <1>;
0272                                 adv7513_0_out: endpoint {
0273                                         remote-endpoint = <&hdmi_con0>;
0274                                 };
0275                         };
0276                 };
0277         };
0278 
0279         hdmi@39 {
0280                 compatible = "adi,adv7513";
0281                 reg = <0x39>, <0x49>, <0x29>, <0x59>;
0282                 reg-names = "main", "edid", "cec", "packet";
0283 
0284                 adi,input-depth = <8>;
0285                 adi,input-colorspace = "rgb";
0286                 adi,input-clock = "1x";
0287 
0288                 ports {
0289                         #address-cells = <1>;
0290                         #size-cells = <0>;
0291 
0292                         port@0 {
0293                                 reg = <0>;
0294                                 adv7513_1_in: endpoint {
0295                                         remote-endpoint = <&du_out_rgb1>;
0296                                 };
0297                         };
0298 
0299                         port@1 {
0300                                 reg = <1>;
0301                                 adv7513_1_out: endpoint {
0302                                         remote-endpoint = <&hdmi_con1>;
0303                                 };
0304                         };
0305                 };
0306         };
0307 };
0308 
0309 &du {
0310         pinctrl-0 = <&du0_pins>, <&du1_pins>;
0311         pinctrl-names = "default";
0312 
0313         clocks = <&cpg CPG_MOD 724>, <&cpg CPG_MOD 723>, <&osc2_clk>;
0314         clock-names = "du.0", "du.1", "dclkin.0";
0315         status = "okay";
0316 
0317         ports {
0318                 port@0 {
0319                         endpoint {
0320                                 remote-endpoint = <&adv7513_0_in>;
0321                         };
0322                 };
0323                 port@1 {
0324                         endpoint {
0325                                 remote-endpoint = <&adv7513_1_in>;
0326                         };
0327                 };
0328         };
0329 };