1// SPDX-License-Identifier: GPL-2.0+ 2/* 3 * Copyright (C) 2017 B&R Industrial Automation GmbH 4 * http://www.br-automation.com 5 * 6 */ 7/dts-v1/; 8 9#include "am33xx.dtsi" 10#include "dt-bindings/thermal/thermal.h" 11 12/ { 13 model = "BRSMARC1 SoM"; 14 compatible = "ti,am33xx"; 15 16 fset: factory-settings { 17 bl-version = " "; 18 order-no = " "; 19 cpu-order-no = " "; 20 hw-revision = " "; 21 serial-no = <0>; 22 device-id = <0x0>; 23 parent-id = <0x0>; 24 hw-variant = <0x0>; 25 hw-platform = <0x7>; 26 fram-offset = <0x100>; 27 fram-size = <0x1F00>; 28 cache-disable = <0x0>; 29 cpu-clock = <0x0>; 30 }; 31 32 chosen { 33 bootargs = "console=ttyO0,115200 earlyprintk"; 34 stdout-path = &uart0; 35 }; 36 37 aliases { 38 fset = &fset; 39 mmc = &mmc2; 40 spi0 = &spi0; 41 spi1 = &spi1; 42 touch0 = &burtouch0; 43 screen0 = &lcdscreen0; 44 }; 45 46 memory { 47 device_type = "memory"; 48 reg = <0x80000000 0x10000000>; /* 256 MB */ 49 }; 50 51 vmmcsd_fixed: fixedregulator@0 { 52 compatible = "regulator-fixed"; 53 regulator-name = "vmmcsd_fixed"; 54 regulator-min-microvolt = <3300000>; 55 regulator-max-microvolt = <3300000>; 56 }; 57 58 lcdscreen0: lcdscreen@0 { 59 /*backlight = <&tps_bl>; */ 60 compatible = "ti,tilcdc,panel"; 61 status = "okay"; 62 63 panel-info { 64 ac-bias = <255>; 65 ac-bias-intrpt = <0>; 66 dma-burst-sz = <16>; 67 bpp = <32>; 68 fdd = <0x80>; 69 sync-edge = <0>; 70 sync-ctrl = <1>; 71 raster-order = <0>; 72 fifo-th = <0>; 73 rotation = <0>; 74 pupdelay = <0>; 75 pondelay = <0>; 76 pwrpin = <0x000000B1>; 77 brightdrv = <0>; 78 brightfdim = <100>; 79 brightdef = <50>; 80 }; 81 82 display-timings { 83 default { 84 clock-frequency = <0>; 85 hactive = <0>; 86 vactive = <0>; 87 hfront-porch = <0>; 88 hback-porch = <0>; 89 hsync-len = <0>; 90 vfront-porch = <0>; 91 vback-porch = <0>; 92 vsync-len = <0>; 93 hsync-active = <0>; 94 vsync-active = <0>; 95 pupdelay = <10>; 96 pondelay = <10>; 97 }; 98 }; 99 }; 100 101 board_thermal: board-thermal { 102 polling-delay-passive = <1000>; /* milliseconds */ 103 polling-delay = <2500>; /* milliseconds */ 104 105 thermal-sensors = <&cputemp>; 106 107 trips { 108 crit_trip: crit-trip { 109 temperature = <95000>; /* millicelsius */ 110 hysteresis = <5000>; /* millicelsius */ 111 type = "critical"; 112 }; 113 }; 114 cooling-maps { 115 map0 { 116 trip = <&crit_trip>; 117 cooling-device = 118 <&resetc THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; 119 }; 120 }; 121 }; 122}; 123 124&uart0 { /* console uart */ 125 u-boot,dm-spl; 126 status = "okay"; 127}; 128 129&uart2 { /* X2X - P2P */ 130 status = "okay"; 131}; 132 133&uart3 { /* RS485 */ 134 status = "okay"; 135}; 136 137&uart4 { /* RS232 */ 138 status = "okay"; 139}; 140 141&i2c0 { 142 u-boot,dm-spl; 143 status = "okay"; 144 clock-frequency = <100000>; 145 146 tps: tps@24 { /* PMIC controller */ 147 u-boot,dm-spl; 148 reg = <0x24>; 149 compatible = "ti,tps65217"; 150 }; 151 152 cputemp: temperature-sensor@48 { /* cpu temperature */ 153 #thermal-sensor-cells = <0>; 154 compatible = "nxp,pct2075"; 155 reg = <0x48>; 156 }; 157 158 basetemp: temperature-sensor@49 { /* baseboard temperature */ 159 #thermal-sensor-cells = <0>; 160 compatible = "nxp,pct2075"; 161 reg = <0x49>; 162 }; 163 extrtc: rtc@51 { /* realtime clock */ 164 compatible = "epson,rx8571"; 165 reg = <0x51>; 166 }; 167 168 resetc: reset-controller@60 { 169 compatible = "bur,rststm"; 170 reg = <0x60>; 171 172 cooling-min-state = <0>; 173 cooling-max-state = <1>; /* reset gets fired */ 174 #cooling-cells = <2>; /* min followed by max */ 175 }; 176}; 177 178&i2c1 { 179 u-boot,dm-spl; 180 status = "okay"; 181}; 182 183&spi0 { 184 u-boot,dm-spl; 185 status = "okay"; 186 187 cs-gpios = <&gpio0 5 GPIO_ACTIVE_HIGH>, 188 <&gpio0 6 GPIO_ACTIVE_HIGH>, 189 <0>, 190 <0>; 191 192 spi-max-frequency = <24000000>; 193 194 spi_flash: spiflash@0 { 195 u-boot,dm-spl; 196 u-boot,dm-pre-reloc; 197 compatible = "spidev", "spi-flash"; 198 spi-max-frequency = <24000000>; 199 reg = <0>; 200 }; 201}; 202 203&spi1 { 204 u-boot,dm-spl; 205 status = "okay"; 206 cs-gpios = <&gpio3 17 GPIO_ACTIVE_HIGH>, 207 <&gpio0 19 GPIO_ACTIVE_HIGH>, 208 <0>, 209 <0>; 210 211 spi-max-frequency = <24000000>; 212}; 213 214&edma { 215 status = "okay"; 216}; 217 218&cppi41dma { 219 status = "okay"; 220}; 221 222&usb { 223 status = "okay"; 224}; 225 226&usb_ctrl_mod { 227 status = "okay"; 228}; 229 230&usb0_phy { 231 status = "okay"; 232}; 233 234&usb1_phy { 235 status = "okay"; 236}; 237 238&usb0 { 239 status = "okay"; 240 dr_mode = "host"; 241}; 242 243&usb1 { 244 status = "okay"; 245 dr_mode = "host"; 246}; 247 248&davinci_mdio { 249 status = "okay"; 250 251 ethphy0: ethernet-phy@1 { 252 reg = <1>; 253 }; 254 255 ethphy1: ethernet-phy@3 { 256 reg = <3>; 257 }; 258}; 259 260&mac { 261 status = "okay"; 262}; 263 264&phy_sel { 265 rmii-clock-ext; 266}; 267 268&cpsw_emac0 { 269 phy_id = <&davinci_mdio>, <1>; 270 phy-handle = <ðphy0>; 271 phy-mode = "rmii"; 272 ti,ledcr = <0x0480>; 273}; 274 275&cpsw_emac1 { 276 phy_id = <&davinci_mdio>, <3>; 277 phy-handle = <ðphy1>; 278 phy-mode = "rmii"; 279 ti,ledcr = <0x0480>; 280}; 281 282&mmc1 { 283 vmmc-supply = <&vmmcsd_fixed>; 284 bus-width = <0x4>; 285 ti,non-removable; 286 ti,needs-special-hs-handling; 287 ti,vcc-aux-disable-is-sleep; 288 status = "okay"; 289}; 290 291&mmc2 { 292 vmmc-supply = <&vmmcsd_fixed>; 293 bus-width = <0x8>; 294 ti,non-removable; 295 ti,needs-special-hs-handling; 296 ti,vcc-aux-disable-is-sleep; 297 status = "okay"; 298}; 299 300&l4_per { 301 302 segment@300000 { 303 304 target-module@e000 { 305 u-boot,dm-pre-reloc; 306 307 lcdc: lcdc@0 { 308 u-boot,dm-pre-reloc; 309 status = "okay"; 310 ti,no-reset-on-init; 311 ti,no-idle-on-init; 312 }; 313 }; 314 }; 315}; 316 317&elm { 318 status = "okay"; 319}; 320 321&sham { 322 status = "okay"; 323}; 324 325&aes { 326 status = "okay"; 327}; 328 329&gpio0 { 330 u-boot,dm-spl; 331 ti,no-reset-on-init; 332}; 333 334&gpio1 { 335 u-boot,dm-spl; 336 ti,no-reset-on-init; 337}; 338 339&gpio2 { 340 u-boot,dm-spl; 341 ti,no-reset-on-init; 342}; 343 344&gpio3 { 345 u-boot,dm-spl; 346 ti,no-reset-on-init; 347}; 348 349&timer1 { /* today unused */ 350 status = "okay"; 351 ti,no-reset-on-init; 352 ti,no-idle-on-init; 353}; 354 355&timer2 { /* used for vxworks primary timer device */ 356 status = "okay"; 357 ti,no-reset-on-init; 358 ti,no-idle-on-init; 359}; 360 361&timer3 { /* used sysdelay and hal tsc counter*/ 362 status = "okay"; 363 ti,no-reset-on-init; 364 ti,no-idle-on-init; 365}; 366 367&timer4 { /* used for PWM beeper */ 368 status = "okay"; 369 ti,no-reset-on-init; 370 ti,no-idle-on-init; 371}; 372 373&timer5 { /* used for PWM backlight */ 374 status = "okay"; 375 ti,no-reset-on-init; 376 ti,no-idle-on-init; 377}; 378 379&timer6 { /* used for cpsw end device */ 380 status = "okay"; 381 ti,no-reset-on-init; 382 ti,no-idle-on-init; 383}; 384 385&timer7 { /* used for cpsw end device */ 386 status = "okay"; 387 ti,no-reset-on-init; 388 ti,no-idle-on-init; 389}; 390 391&wdt2 { 392 status = "okay"; 393 ti,no-reset-on-init; 394 ti,no-idle-on-init; 395}; 396 397&epwmss0 { 398 status = "okay"; 399}; 400 401&tscadc { 402 status = "okay"; 403 404 tsc { 405 burtouch0: burtouch@0 { 406 status = "okay"; 407 compatible = "bur,DdVxSfTouchXXX"; 408 bur,hwtree = "IF7"; 409 bur,KX0 = <0x0>; 410 bur,KX1 = <0x0>; 411 bur,KX2 = <0x0>; 412 bur,KY0 = <0x0>; 413 bur,KY1 = <0x0>; 414 bur,KY2 = <0x0>; 415 }; 416 }; 417}; 418 419&dcan0 { 420 status = "okay"; 421}; 422 423&dcan1 { 424 status = "okay"; 425}; 426 427&sham { 428 status = "disabled"; 429}; 430 431&aes { 432 status = "disabled"; 433}; 434 435&rng { 436 status = "disabled"; 437}; 438