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 d1_8v: regulator-1v8 { 34 compatible = "regulator-fixed"; 35 regulator-name = "D1.8V"; 36 regulator-min-microvolt = <1800000>; 37 regulator-max-microvolt = <1800000>; 38 regulator-boot-on; 39 regulator-always-on; 40 }; 41 42 d3_3v: regulator-3v3 { 43 compatible = "regulator-fixed"; 44 regulator-name = "D3.3V"; 45 regulator-min-microvolt = <3300000>; 46 regulator-max-microvolt = <3300000>; 47 regulator-boot-on; 48 regulator-always-on; 49 }; 50 51 vga-encoder { 52 compatible = "adi,adv7123"; 53 54 ports { 55 #address-cells = <1>; 56 #size-cells = <0>; 57 58 port@0 { 59 reg = <0>; 60 adv7123_in: endpoint { 61 remote-endpoint = <&du_out_rgb1>; 62 }; 63 }; 64 port@1 { 65 reg = <1>; 66 adv7123_out: endpoint { 67 remote-endpoint = <&vga_in>; 68 }; 69 }; 70 }; 71 }; 72 73 hdmi-out { 74 compatible = "hdmi-connector"; 75 type = "a"; 76 77 port { 78 hdmi_con: endpoint { 79 remote-endpoint = <&adv7511_out>; 80 }; 81 }; 82 }; 83 84 vga { 85 compatible = "vga-connector"; 86 87 port { 88 vga_in: endpoint { 89 remote-endpoint = <&adv7123_out>; 90 }; 91 }; 92 }; 93 94 x1_clk: x1 { 95 compatible = "fixed-clock"; 96 #clock-cells = <0>; 97 clock-frequency = <74250000>; 98 }; 99 100 x2_clk: x2 { 101 compatible = "fixed-clock"; 102 #clock-cells = <0>; 103 clock-frequency = <65000000>; 104 }; 105 106 keyboard { 107 compatible = "gpio-keys"; 108 109 pinctrl-0 = <&keyboard_pins>; 110 pinctrl-names = "default"; 111 112 key-1 { 113 linux,code = <KEY_1>; 114 label = "SW2-1"; 115 wakeup-source; 116 debounce-interval = <20>; 117 gpios = <&gpio3 10 GPIO_ACTIVE_LOW>; 118 }; 119 key-2 { 120 linux,code = <KEY_2>; 121 label = "SW2-2"; 122 wakeup-source; 123 debounce-interval = <20>; 124 gpios = <&gpio3 11 GPIO_ACTIVE_LOW>; 125 }; 126 key-3 { 127 linux,code = <KEY_3>; 128 label = "SW2-3"; 129 wakeup-source; 130 debounce-interval = <20>; 131 gpios = <&gpio3 12 GPIO_ACTIVE_LOW>; 132 }; 133 key-4 { 134 linux,code = <KEY_4>; 135 label = "SW2-4"; 136 wakeup-source; 137 debounce-interval = <20>; 138 gpios = <&gpio3 15 GPIO_ACTIVE_LOW>; 139 }; 140 key-a { 141 linux,code = <KEY_A>; 142 label = "SW24"; 143 wakeup-source; 144 debounce-interval = <20>; 145 gpios = <&gpio3 20 GPIO_ACTIVE_LOW>; 146 }; 147 key-b { 148 linux,code = <KEY_B>; 149 label = "SW25"; 150 wakeup-source; 151 debounce-interval = <20>; 152 gpios = <&gpio11 2 GPIO_ACTIVE_LOW>; 153 }; 154 }; 155 156 leds { 157 compatible = "gpio-leds"; 158 159 led17 { 160 gpios = <&gpio10 10 GPIO_ACTIVE_HIGH>; 161 }; 162 led18 { 163 gpios = <&gpio10 11 GPIO_ACTIVE_HIGH>; 164 }; 165 led19 { 166 gpios = <&gpio10 12 GPIO_ACTIVE_HIGH>; 167 }; 168 led20 { 169 gpios = <&gpio10 23 GPIO_ACTIVE_HIGH>; 170 }; 171 }; 172 173 vcc_sdhi0: regulator-vcc-sdhi0 { 174 compatible = "regulator-fixed"; 175 176 regulator-name = "SDHI0 Vcc"; 177 regulator-min-microvolt = <3300000>; 178 regulator-max-microvolt = <3300000>; 179 180 gpio = <&gpio11 12 GPIO_ACTIVE_HIGH>; 181 enable-active-high; 182 }; 183}; 184 185&extal_clk { 186 clock-frequency = <20000000>; 187}; 188 189&can_clk { 190 clock-frequency = <48000000>; 191}; 192 193&lbsc { 194 flash@0 { 195 compatible = "cfi-flash"; 196 reg = <0x00000000 0x04000000>; 197 pinctrl-0 = <&flash_pins>; 198 pinctrl-names = "default"; 199 bank-width = <2>; 200 201 partitions { 202 compatible = "fixed-partitions"; 203 #address-cells = <1>; 204 #size-cells = <1>; 205 206 partition@0 { 207 label = "uboot"; 208 reg = <0x00000000 0x00040000>; 209 read-only; 210 }; 211 partition@40000 { 212 label = "uboot-env"; 213 reg = <0x00040000 0x00040000>; 214 read-only; 215 }; 216 partition@80000 { 217 label = "flash"; 218 reg = <0x00080000 0x03f80000>; 219 }; 220 }; 221 }; 222 223 ethernet@18000000 { 224 compatible = "smsc,lan89218", "smsc,lan9115"; 225 reg = <0x18000000 0x100>; 226 phy-mode = "mii"; 227 interrupts-extended = <&irqc 0 IRQ_TYPE_EDGE_FALLING>; 228 smsc,irq-push-pull; 229 reg-io-width = <4>; 230 vddvario-supply = <&d3_3v>; 231 vdd33a-supply = <&d3_3v>; 232 233 pinctrl-0 = <&lan89218_pins>; 234 pinctrl-names = "default"; 235 }; 236}; 237 238&pfc { 239 scif0_pins: scif0 { 240 groups = "scif0_data"; 241 function = "scif0"; 242 }; 243 244 scif3_pins: scif3 { 245 groups = "scif3_data"; 246 function = "scif3"; 247 }; 248 249 lan89218_pins: lan89218 { 250 intc { 251 groups = "intc_irq0"; 252 function = "intc"; 253 }; 254 lbsc { 255 groups = "lbsc_ex_cs0"; 256 function = "lbsc"; 257 }; 258 }; 259 260 can0_pins: can0 { 261 groups = "can0_data", "can_clk"; 262 function = "can0"; 263 }; 264 265 sdhi0_pins: sdhi0 { 266 groups = "sdhi0_data4", "sdhi0_ctrl"; 267 function = "sdhi0"; 268 }; 269 270 du0_pins: du0 { 271 groups = "du0_rgb888", "du0_sync", "du0_disp"; 272 function = "du0"; 273 }; 274 275 du1_pins: du1 { 276 groups = "du1_rgb666", "du1_sync", "du1_disp"; 277 function = "du1"; 278 }; 279 280 flash_pins: flash { 281 groups = "lbsc_cs0"; 282 function = "lbsc"; 283 }; 284 285 keyboard_pins: keyboard { 286 pins = "GP_3_10", "GP_3_11", "GP_3_12", "GP_3_15", "GP_11_2"; 287 bias-pull-up; 288 }; 289 290 pmic_irq_pins: pmicirq { 291 groups = "intc_irq2"; 292 function = "intc"; 293 }; 294}; 295 296&rwdt { 297 timeout-sec = <60>; 298 status = "okay"; 299}; 300 301&scif0 { 302 pinctrl-0 = <&scif0_pins>; 303 pinctrl-names = "default"; 304 305 status = "okay"; 306}; 307 308&scif3 { 309 pinctrl-0 = <&scif3_pins>; 310 pinctrl-names = "default"; 311 312 status = "okay"; 313}; 314 315&can0 { 316 pinctrl-0 = <&can0_pins>; 317 pinctrl-names = "default"; 318 319 status = "okay"; 320}; 321 322&sdhi0 { 323 pinctrl-0 = <&sdhi0_pins>; 324 pinctrl-names = "default"; 325 326 vmmc-supply = <&vcc_sdhi0>; 327 cd-gpios = <&gpio11 11 GPIO_ACTIVE_LOW>; 328 status = "okay"; 329}; 330 331&i2c1 { 332 status = "okay"; 333 clock-frequency = <400000>; 334 335 hdmi@39 { 336 compatible = "adi,adv7511w"; 337 reg = <0x39>; 338 interrupts-extended = <&irqc 3 IRQ_TYPE_EDGE_FALLING>; 339 340 avdd-supply = <&d1_8v>; 341 dvdd-supply = <&d1_8v>; 342 pvdd-supply = <&d1_8v>; 343 dvdd-3v-supply = <&d3_3v>; 344 bgvdd-supply = <&d1_8v>; 345 346 adi,input-depth = <8>; 347 adi,input-colorspace = "rgb"; 348 adi,input-clock = "1x"; 349 350 ports { 351 #address-cells = <1>; 352 #size-cells = <0>; 353 354 port@0 { 355 reg = <0>; 356 adv7511_in: endpoint { 357 remote-endpoint = <&du_out_rgb0>; 358 }; 359 }; 360 361 port@1 { 362 reg = <1>; 363 adv7511_out: endpoint { 364 remote-endpoint = <&hdmi_con>; 365 }; 366 }; 367 }; 368 }; 369}; 370 371&iic3 { 372 status = "okay"; 373 374 pmic@58 { 375 compatible = "dlg,da9063"; 376 reg = <0x58>; 377 pinctrl-names = "default"; 378 pinctrl-0 = <&pmic_irq_pins>; 379 interrupts-extended = <&irqc 2 IRQ_TYPE_LEVEL_LOW>; 380 interrupt-controller; 381 #interrupt-cells = <2>; 382 383 rtc { 384 compatible = "dlg,da9063-rtc"; 385 }; 386 387 watchdog { 388 compatible = "dlg,da9063-watchdog"; 389 }; 390 }; 391}; 392 393&du { 394 pinctrl-0 = <&du0_pins>, <&du1_pins>; 395 pinctrl-names = "default"; 396 397 clocks = <&cpg CPG_MOD 724>, <&cpg CPG_MOD 723>, <&x1_clk>, <&x2_clk>; 398 clock-names = "du.0", "du.1", "dclkin.0", "dclkin.1"; 399 status = "okay"; 400 401 ports { 402 port@0 { 403 endpoint { 404 remote-endpoint = <&adv7511_in>; 405 }; 406 }; 407 port@1 { 408 endpoint { 409 remote-endpoint = <&adv7123_in>; 410 }; 411 }; 412 }; 413}; 414