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