1// SPDX-License-Identifier: GPL-2.0 2/* 3 * Device Tree Source for the Blanche board 4 * 5 * Copyright (C) 2014 Renesas Electronics Corporation 6 * Copyright (C) 2016 Cogent Embedded, Inc. 7 */ 8 9/dts-v1/; 10#include "r8a7792.dtsi" 11#include <dt-bindings/gpio/gpio.h> 12#include <dt-bindings/input/input.h> 13 14/ { 15 model = "Blanche"; 16 compatible = "renesas,blanche", "renesas,r8a7792"; 17 18 aliases { 19 serial0 = &scif0; 20 serial1 = &scif3; 21 }; 22 23 chosen { 24 bootargs = "ignore_loglevel rw root=/dev/nfs ip=on"; 25 stdout-path = "serial0:115200n8"; 26 }; 27 28 memory@40000000 { 29 device_type = "memory"; 30 reg = <0 0x40000000 0 0x40000000>; 31 }; 32 33 d3_3v: regulator-3v3 { 34 compatible = "regulator-fixed"; 35 regulator-name = "D3.3V"; 36 regulator-min-microvolt = <3300000>; 37 regulator-max-microvolt = <3300000>; 38 regulator-boot-on; 39 regulator-always-on; 40 }; 41 42 vga-encoder { 43 compatible = "adi,adv7123"; 44 45 ports { 46 #address-cells = <1>; 47 #size-cells = <0>; 48 49 port@0 { 50 reg = <0>; 51 adv7123_in: endpoint { 52 remote-endpoint = <&du_out_rgb1>; 53 }; 54 }; 55 port@1 { 56 reg = <1>; 57 adv7123_out: endpoint { 58 remote-endpoint = <&vga_in>; 59 }; 60 }; 61 }; 62 }; 63 64 hdmi-out { 65 compatible = "hdmi-connector"; 66 type = "a"; 67 68 port { 69 hdmi_con: endpoint { 70 remote-endpoint = <&adv7511_out>; 71 }; 72 }; 73 }; 74 75 vga { 76 compatible = "vga-connector"; 77 78 port { 79 vga_in: endpoint { 80 remote-endpoint = <&adv7123_out>; 81 }; 82 }; 83 }; 84 85 x1_clk: x1 { 86 compatible = "fixed-clock"; 87 #clock-cells = <0>; 88 clock-frequency = <74250000>; 89 }; 90 91 x2_clk: x2 { 92 compatible = "fixed-clock"; 93 #clock-cells = <0>; 94 clock-frequency = <65000000>; 95 }; 96 97 keyboard { 98 compatible = "gpio-keys"; 99 100 pinctrl-0 = <&keyboard_pins>; 101 pinctrl-names = "default"; 102 103 key-1 { 104 linux,code = <KEY_1>; 105 label = "SW2-1"; 106 wakeup-source; 107 debounce-interval = <20>; 108 gpios = <&gpio3 10 GPIO_ACTIVE_LOW>; 109 }; 110 key-2 { 111 linux,code = <KEY_2>; 112 label = "SW2-2"; 113 wakeup-source; 114 debounce-interval = <20>; 115 gpios = <&gpio3 11 GPIO_ACTIVE_LOW>; 116 }; 117 key-3 { 118 linux,code = <KEY_3>; 119 label = "SW2-3"; 120 wakeup-source; 121 debounce-interval = <20>; 122 gpios = <&gpio3 12 GPIO_ACTIVE_LOW>; 123 }; 124 key-4 { 125 linux,code = <KEY_4>; 126 label = "SW2-4"; 127 wakeup-source; 128 debounce-interval = <20>; 129 gpios = <&gpio3 15 GPIO_ACTIVE_LOW>; 130 }; 131 key-a { 132 linux,code = <KEY_A>; 133 label = "SW24"; 134 wakeup-source; 135 debounce-interval = <20>; 136 gpios = <&gpio3 20 GPIO_ACTIVE_LOW>; 137 }; 138 key-b { 139 linux,code = <KEY_B>; 140 label = "SW25"; 141 wakeup-source; 142 debounce-interval = <20>; 143 gpios = <&gpio11 2 GPIO_ACTIVE_LOW>; 144 }; 145 }; 146 147 leds { 148 compatible = "gpio-leds"; 149 150 led17 { 151 gpios = <&gpio10 10 GPIO_ACTIVE_HIGH>; 152 }; 153 led18 { 154 gpios = <&gpio10 11 GPIO_ACTIVE_HIGH>; 155 }; 156 led19 { 157 gpios = <&gpio10 12 GPIO_ACTIVE_HIGH>; 158 }; 159 led20 { 160 gpios = <&gpio10 23 GPIO_ACTIVE_HIGH>; 161 }; 162 }; 163 164 vcc_sdhi0: regulator-vcc-sdhi0 { 165 compatible = "regulator-fixed"; 166 167 regulator-name = "SDHI0 Vcc"; 168 regulator-min-microvolt = <3300000>; 169 regulator-max-microvolt = <3300000>; 170 171 gpio = <&gpio11 12 GPIO_ACTIVE_HIGH>; 172 enable-active-high; 173 }; 174}; 175 176&extal_clk { 177 clock-frequency = <20000000>; 178}; 179 180&can_clk { 181 clock-frequency = <48000000>; 182}; 183 184&lbsc { 185 ethernet@18000000 { 186 compatible = "smsc,lan89218", "smsc,lan9115"; 187 reg = <0x18000000 0x100>; 188 phy-mode = "mii"; 189 interrupt-parent = <&irqc>; 190 interrupts = <0 IRQ_TYPE_EDGE_FALLING>; 191 smsc,irq-push-pull; 192 reg-io-width = <4>; 193 vddvario-supply = <&d3_3v>; 194 vdd33a-supply = <&d3_3v>; 195 196 pinctrl-0 = <&lan89218_pins>; 197 pinctrl-names = "default"; 198 }; 199}; 200 201&pfc { 202 scif0_pins: scif0 { 203 groups = "scif0_data"; 204 function = "scif0"; 205 }; 206 207 scif3_pins: scif3 { 208 groups = "scif3_data"; 209 function = "scif3"; 210 }; 211 212 lan89218_pins: lan89218 { 213 intc { 214 groups = "intc_irq0"; 215 function = "intc"; 216 }; 217 lbsc { 218 groups = "lbsc_ex_cs0"; 219 function = "lbsc"; 220 }; 221 }; 222 223 can0_pins: can0 { 224 groups = "can0_data", "can_clk"; 225 function = "can0"; 226 }; 227 228 sdhi0_pins: sdhi0 { 229 groups = "sdhi0_data4", "sdhi0_ctrl"; 230 function = "sdhi0"; 231 }; 232 233 du0_pins: du0 { 234 groups = "du0_rgb888", "du0_sync", "du0_disp"; 235 function = "du0"; 236 }; 237 238 du1_pins: du1 { 239 groups = "du1_rgb666", "du1_sync", "du1_disp"; 240 function = "du1"; 241 }; 242 243 keyboard_pins: keyboard { 244 pins = "GP_3_10", "GP_3_11", "GP_3_12", "GP_3_15", "GP_11_2"; 245 bias-pull-up; 246 }; 247 248 pmic_irq_pins: pmicirq { 249 groups = "intc_irq2"; 250 function = "intc"; 251 }; 252}; 253 254&rwdt { 255 timeout-sec = <60>; 256 status = "okay"; 257}; 258 259&scif0 { 260 pinctrl-0 = <&scif0_pins>; 261 pinctrl-names = "default"; 262 263 status = "okay"; 264}; 265 266&scif3 { 267 pinctrl-0 = <&scif3_pins>; 268 pinctrl-names = "default"; 269 270 status = "okay"; 271}; 272 273&can0 { 274 pinctrl-0 = <&can0_pins>; 275 pinctrl-names = "default"; 276 277 status = "okay"; 278}; 279 280&sdhi0 { 281 pinctrl-0 = <&sdhi0_pins>; 282 pinctrl-names = "default"; 283 284 vmmc-supply = <&vcc_sdhi0>; 285 cd-gpios = <&gpio11 11 GPIO_ACTIVE_LOW>; 286 status = "okay"; 287}; 288 289&i2c1 { 290 status = "okay"; 291 clock-frequency = <400000>; 292 293 hdmi@39 { 294 compatible = "adi,adv7511w"; 295 reg = <0x39>; 296 interrupt-parent = <&irqc>; 297 interrupts = <3 IRQ_TYPE_EDGE_FALLING>; 298 299 adi,input-depth = <8>; 300 adi,input-colorspace = "rgb"; 301 adi,input-clock = "1x"; 302 303 ports { 304 #address-cells = <1>; 305 #size-cells = <0>; 306 307 port@0 { 308 reg = <0>; 309 adv7511_in: endpoint { 310 remote-endpoint = <&du_out_rgb0>; 311 }; 312 }; 313 314 port@1 { 315 reg = <1>; 316 adv7511_out: endpoint { 317 remote-endpoint = <&hdmi_con>; 318 }; 319 }; 320 }; 321 }; 322}; 323 324&iic3 { 325 status = "okay"; 326 327 pmic@58 { 328 compatible = "dlg,da9063"; 329 reg = <0x58>; 330 pinctrl-names = "default"; 331 pinctrl-0 = <&pmic_irq_pins>; 332 interrupt-parent = <&irqc>; 333 interrupts = <2 IRQ_TYPE_LEVEL_LOW>; 334 interrupt-controller; 335 336 rtc { 337 compatible = "dlg,da9063-rtc"; 338 }; 339 340 watchdog { 341 compatible = "dlg,da9063-watchdog"; 342 }; 343 }; 344}; 345 346&du { 347 pinctrl-0 = <&du0_pins>, <&du1_pins>; 348 pinctrl-names = "default"; 349 350 clocks = <&cpg CPG_MOD 724>, <&cpg CPG_MOD 723>, <&x1_clk>, <&x2_clk>; 351 clock-names = "du.0", "du.1", "dclkin.0", "dclkin.1"; 352 status = "okay"; 353 354 ports { 355 port@0 { 356 endpoint { 357 remote-endpoint = <&adv7511_in>; 358 }; 359 }; 360 port@1 { 361 endpoint { 362 remote-endpoint = <&adv7123_in>; 363 }; 364 }; 365 }; 366}; 367