0001 // SPDX-License-Identifier: GPL-2.0-only
0002 /*
0003 * Copyright (C) 2015-2016 Texas Instruments Incorporated - https://www.ti.com/
0004 */
0005
0006 #include "am57xx-industrial-grade.dtsi"
0007
0008 / {
0009 aliases {
0010 rtc0 = &tps659038_rtc;
0011 rtc1 = &rtc;
0012 display0 = &hdmi0;
0013 };
0014
0015 chosen {
0016 stdout-path = &uart3;
0017 };
0018
0019 vmain: fixedregulator-vmain {
0020 compatible = "regulator-fixed";
0021 regulator-name = "VMAIN";
0022 regulator-min-microvolt = <5000000>;
0023 regulator-max-microvolt = <5000000>;
0024 regulator-always-on;
0025 regulator-boot-on;
0026 };
0027
0028 v3_3d: fixedregulator-v3_3d {
0029 compatible = "regulator-fixed";
0030 regulator-name = "V3_3D";
0031 vin-supply = <&smps9_reg>;
0032 regulator-min-microvolt = <3300000>;
0033 regulator-max-microvolt = <3300000>;
0034 regulator-always-on;
0035 regulator-boot-on;
0036 };
0037
0038 v1_2d: fixedregulator-v1_2d {
0039 compatible = "regulator-fixed";
0040 regulator-name = "V1_2D";
0041 vin-supply = <&vmain>;
0042 regulator-min-microvolt = <1200000>;
0043 regulator-max-microvolt = <1200000>;
0044 regulator-always-on;
0045 regulator-boot-on;
0046 };
0047
0048 vtt_fixed: fixedregulator-vtt {
0049 /* TPS51200 */
0050 compatible = "regulator-fixed";
0051 regulator-name = "vtt_fixed";
0052 vin-supply = <&v3_3d>;
0053 regulator-min-microvolt = <3300000>;
0054 regulator-max-microvolt = <3300000>;
0055 regulator-always-on;
0056 regulator-boot-on;
0057 };
0058
0059 leds-iio {
0060 status = "disabled";
0061 compatible = "gpio-leds";
0062 led-out0 {
0063 label = "out0";
0064 gpios = <&tpic2810 0 GPIO_ACTIVE_HIGH>;
0065 default-state = "off";
0066 };
0067
0068 led-out1 {
0069 label = "out1";
0070 gpios = <&tpic2810 1 GPIO_ACTIVE_HIGH>;
0071 default-state = "off";
0072 };
0073
0074 led-out2 {
0075 label = "out2";
0076 gpios = <&tpic2810 2 GPIO_ACTIVE_HIGH>;
0077 default-state = "off";
0078 };
0079
0080 led-out3 {
0081 label = "out3";
0082 gpios = <&tpic2810 3 GPIO_ACTIVE_HIGH>;
0083 default-state = "off";
0084 };
0085
0086 led-out4 {
0087 label = "out4";
0088 gpios = <&tpic2810 4 GPIO_ACTIVE_HIGH>;
0089 default-state = "off";
0090 };
0091
0092 led-out5 {
0093 label = "out5";
0094 gpios = <&tpic2810 5 GPIO_ACTIVE_HIGH>;
0095 default-state = "off";
0096 };
0097
0098 led-out6 {
0099 label = "out6";
0100 gpios = <&tpic2810 6 GPIO_ACTIVE_HIGH>;
0101 default-state = "off";
0102 };
0103
0104 led-out7 {
0105 label = "out7";
0106 gpios = <&tpic2810 7 GPIO_ACTIVE_HIGH>;
0107 default-state = "off";
0108 };
0109 };
0110
0111 hdmi0: connector@0 {
0112 compatible = "hdmi-connector";
0113 label = "hdmi";
0114
0115 type = "a";
0116
0117 port {
0118 hdmi_connector_in: endpoint {
0119 remote-endpoint = <&tpd12s015_out>;
0120 };
0121 };
0122 };
0123
0124 tpd12s015: encoder@0 {
0125 compatible = "ti,tpd12s016", "ti,tpd12s015";
0126
0127 gpios = <0>, /* optional CT_CP_HPD */
0128 <0>, /* optional LS_OE */
0129 <&gpio7 12 GPIO_ACTIVE_HIGH>; /* HPD */
0130
0131 ports {
0132 #address-cells = <1>;
0133 #size-cells = <0>;
0134
0135 port@0 {
0136 reg = <0>;
0137
0138 tpd12s015_in: endpoint@0 {
0139 remote-endpoint = <&hdmi_out>;
0140 };
0141 };
0142
0143 port@1 {
0144 reg = <1>;
0145
0146 tpd12s015_out: endpoint@0 {
0147 remote-endpoint = <&hdmi_connector_in>;
0148 };
0149 };
0150 };
0151 };
0152
0153 src_clk_x1: src_clk_x1 {
0154 #clock-cells = <0>;
0155 compatible = "fixed-clock";
0156 clock-frequency = <20000000>;
0157 };
0158 };
0159
0160 &dra7_pmx_core {
0161 dcan1_pins_default: dcan1_pins_default {
0162 pinctrl-single,pins = <
0163 DRA7XX_CORE_IOPAD(0x37d0, PIN_OUTPUT_PULLUP | MUX_MODE0) /* dcan1_tx */
0164 DRA7XX_CORE_IOPAD(0x37d4, PIN_INPUT_PULLUP | MUX_MODE0) /* dcan1_rx */
0165 >;
0166 };
0167
0168 dcan1_pins_sleep: dcan1_pins_sleep {
0169 pinctrl-single,pins = <
0170 DRA7XX_CORE_IOPAD(0x37d0, MUX_MODE15 | PULL_UP) /* dcan1_tx.off */
0171 DRA7XX_CORE_IOPAD(0x37d4, MUX_MODE15 | PULL_UP) /* dcan1_rx.off */
0172 >;
0173 };
0174 };
0175
0176 &i2c1 {
0177 status = "okay";
0178 clock-frequency = <400000>;
0179
0180 tps659038: tps659038@58 {
0181 compatible = "ti,tps659038";
0182 reg = <0x58>;
0183 interrupts-extended = <&gpio6 16 IRQ_TYPE_LEVEL_HIGH
0184 &dra7_pmx_core 0x418>;
0185 #interrupt-cells = <2>;
0186 interrupt-controller;
0187 ti,system-power-controller;
0188 ti,palmas-override-powerhold;
0189
0190 tps659038_pmic {
0191 compatible = "ti,tps659038-pmic";
0192
0193 smps12-in-supply = <&vmain>;
0194 smps3-in-supply = <&vmain>;
0195 smps45-in-supply = <&vmain>;
0196 smps6-in-supply = <&vmain>;
0197 smps7-in-supply = <&vmain>;
0198 smps8-in-supply = <&vmain>;
0199 smps9-in-supply = <&vmain>;
0200 ldo1-in-supply = <&vmain>;
0201 ldo2-in-supply = <&vmain>;
0202 ldo3-in-supply = <&vmain>;
0203 ldo4-in-supply = <&vmain>;
0204 ldo9-in-supply = <&vmain>;
0205 ldoln-in-supply = <&vmain>;
0206 ldousb-in-supply = <&vmain>;
0207 ldortc-in-supply = <&vmain>;
0208
0209 regulators {
0210 smps12_reg: smps12 {
0211 /* VDD_MPU */
0212 regulator-name = "smps12";
0213 regulator-min-microvolt = <850000>;
0214 regulator-max-microvolt = <1250000>;
0215 regulator-always-on;
0216 regulator-boot-on;
0217 };
0218
0219 smps3_reg: smps3 {
0220 /* VDD_DDR EMIF1 EMIF2 */
0221 regulator-name = "smps3";
0222 regulator-min-microvolt = <1350000>;
0223 regulator-max-microvolt = <1350000>;
0224 regulator-always-on;
0225 regulator-boot-on;
0226 };
0227
0228 smps45_reg: smps45 {
0229 /* VDD_DSPEVE on AM572 */
0230 /* VDD_IVA + VDD_DSP on AM571 */
0231 regulator-name = "smps45";
0232 regulator-min-microvolt = <850000>;
0233 regulator-max-microvolt = <1250000>;
0234 regulator-always-on;
0235 regulator-boot-on;
0236 };
0237
0238 smps6_reg: smps6 {
0239 /* VDD_GPU */
0240 regulator-name = "smps6";
0241 regulator-min-microvolt = <850000>;
0242 regulator-max-microvolt = <1250000>;
0243 regulator-always-on;
0244 regulator-boot-on;
0245 };
0246
0247 smps7_reg: smps7 {
0248 /* VDD_CORE */
0249 regulator-name = "smps7";
0250 regulator-min-microvolt = <850000>;
0251 regulator-max-microvolt = <1150000>;
0252 regulator-always-on;
0253 regulator-boot-on;
0254 };
0255
0256 smps8_reg: smps8 {
0257 /* 5728 - VDD_IVAHD */
0258 /* 5718 - N.C. test point */
0259 regulator-name = "smps8";
0260 };
0261
0262 smps9_reg: smps9 {
0263 /* VDD_3_3D */
0264 regulator-name = "smps9";
0265 regulator-min-microvolt = <3300000>;
0266 regulator-max-microvolt = <3300000>;
0267 regulator-always-on;
0268 regulator-boot-on;
0269 };
0270
0271 ldo1_reg: ldo1 {
0272 /* VDDSHV8 - VSDMMC */
0273 /* NOTE: on rev 1.3a, data supply */
0274 regulator-name = "ldo1";
0275 regulator-min-microvolt = <1800000>;
0276 regulator-max-microvolt = <3300000>;
0277 regulator-boot-on;
0278 regulator-always-on;
0279 };
0280
0281 ldo2_reg: ldo2 {
0282 /* VDDSH18V */
0283 regulator-name = "ldo2";
0284 regulator-min-microvolt = <1800000>;
0285 regulator-max-microvolt = <1800000>;
0286 regulator-always-on;
0287 regulator-boot-on;
0288 };
0289
0290 ldo3_reg: ldo3 {
0291 /* R1.3a 572x V1_8PHY_LDO3: USB, SATA */
0292 regulator-name = "ldo3";
0293 regulator-min-microvolt = <1800000>;
0294 regulator-max-microvolt = <1800000>;
0295 regulator-always-on;
0296 regulator-boot-on;
0297 };
0298
0299 ldo4_reg: ldo4 {
0300 /* R1.3a 572x V1_8PHY_LDO4: PCIE, HDMI*/
0301 regulator-name = "ldo4";
0302 regulator-min-microvolt = <1800000>;
0303 regulator-max-microvolt = <1800000>;
0304 regulator-always-on;
0305 regulator-boot-on;
0306 };
0307
0308 /* LDO5-8 unused */
0309
0310 ldo9_reg: ldo9 {
0311 /* VDD_RTC */
0312 regulator-name = "ldo9";
0313 regulator-min-microvolt = <840000>;
0314 regulator-max-microvolt = <1160000>;
0315 regulator-always-on;
0316 regulator-boot-on;
0317 };
0318
0319 ldoln_reg: ldoln {
0320 /* VDDA_1V8_PLL */
0321 regulator-name = "ldoln";
0322 regulator-min-microvolt = <1800000>;
0323 regulator-max-microvolt = <1800000>;
0324 regulator-always-on;
0325 regulator-boot-on;
0326 };
0327
0328 ldousb_reg: ldousb {
0329 /* VDDA_3V_USB: VDDA_USBHS33 */
0330 regulator-name = "ldousb";
0331 regulator-min-microvolt = <3300000>;
0332 regulator-max-microvolt = <3300000>;
0333 regulator-always-on;
0334 regulator-boot-on;
0335 };
0336
0337 ldortc_reg: ldortc {
0338 /* VDDA_RTC */
0339 regulator-name = "ldortc";
0340 regulator-min-microvolt = <1800000>;
0341 regulator-max-microvolt = <1800000>;
0342 regulator-always-on;
0343 regulator-boot-on;
0344 };
0345
0346 regen1: regen1 {
0347 /* VDD_3V3_ON */
0348 regulator-name = "regen1";
0349 regulator-boot-on;
0350 regulator-always-on;
0351 };
0352
0353 regen2: regen2 {
0354 /* Needed for PMIC internal resource */
0355 regulator-name = "regen2";
0356 regulator-boot-on;
0357 regulator-always-on;
0358 };
0359 };
0360 };
0361
0362 tps659038_rtc: tps659038_rtc {
0363 compatible = "ti,palmas-rtc";
0364 interrupt-parent = <&tps659038>;
0365 interrupts = <8 IRQ_TYPE_EDGE_FALLING>;
0366 wakeup-source;
0367 };
0368
0369 tps659038_pwr_button: tps659038_pwr_button {
0370 compatible = "ti,palmas-pwrbutton";
0371 interrupt-parent = <&tps659038>;
0372 interrupts = <1 IRQ_TYPE_EDGE_FALLING>;
0373 wakeup-source;
0374 ti,palmas-long-press-seconds = <12>;
0375 };
0376
0377 tps659038_gpio: tps659038_gpio {
0378 compatible = "ti,palmas-gpio";
0379 gpio-controller;
0380 #gpio-cells = <2>;
0381 };
0382
0383 extcon_usb2: tps659038_usb {
0384 compatible = "ti,palmas-usb-vid";
0385 ti,enable-vbus-detection;
0386 ti,enable-id-detection;
0387 /* ID & VBUS GPIOs provided in board dts */
0388 };
0389 };
0390
0391 tpic2810: tpic2810@60 {
0392 compatible = "ti,tpic2810";
0393 reg = <0x60>;
0394 gpio-controller;
0395 #gpio-cells = <2>;
0396 };
0397
0398 dsi_bridge: tc358778@e {
0399 compatible = "toshiba,tc358778", "toshiba,tc358768";
0400 reg = <0xe>;
0401 status = "disabled";
0402
0403 clocks = <&src_clk_x1>;
0404 clock-names = "refclk";
0405
0406 vddc-supply = <&v1_2d>;
0407 vddmipi-supply = <&v1_2d>;
0408 vddio-supply = <&v3_3d>;
0409
0410 dsi_bridge_ports: ports {
0411 #address-cells = <1>;
0412 #size-cells = <0>;
0413
0414 port@0 {
0415 reg = <0>;
0416 rgb_in: endpoint {
0417 remote-endpoint = <&dpi_out>;
0418 data-lines = <24>;
0419 };
0420 };
0421 };
0422 };
0423 };
0424
0425 &mcspi3 {
0426 status = "okay";
0427 ti,pindir-d0-out-d1-in;
0428
0429 sn65hvs882: sn65hvs882@0 {
0430 compatible = "pisosr-gpio";
0431 gpio-controller;
0432 #gpio-cells = <2>;
0433
0434 reg = <0>;
0435 spi-max-frequency = <1000000>;
0436 spi-cpol;
0437 };
0438 };
0439
0440 &uart3 {
0441 status = "okay";
0442 interrupts-extended = <&crossbar_mpu GIC_SPI 69 IRQ_TYPE_LEVEL_HIGH
0443 &dra7_pmx_core 0x248>;
0444 };
0445
0446 &rtc {
0447 status = "okay";
0448 ext-clk-src;
0449 };
0450
0451 &mac_sw {
0452 status = "okay";
0453 };
0454
0455 &cpsw_port1 {
0456 phy-handle = <ðphy0>;
0457 phy-mode = "rgmii-rxid";
0458 ti,dual-emac-pvid = <1>;
0459 };
0460
0461 &cpsw_port2 {
0462 phy-handle = <ðphy1>;
0463 phy-mode = "rgmii-rxid";
0464 ti,dual-emac-pvid = <2>;
0465 };
0466
0467 &davinci_mdio_sw {
0468 ethphy0: ethernet-phy@0 {
0469 reg = <0>;
0470 };
0471
0472 ethphy1: ethernet-phy@1 {
0473 reg = <1>;
0474 };
0475 };
0476
0477 &usb2_phy1 {
0478 phy-supply = <&ldousb_reg>;
0479 };
0480
0481 &usb2_phy2 {
0482 phy-supply = <&ldousb_reg>;
0483 };
0484
0485 &usb1 {
0486 dr_mode = "host";
0487 };
0488
0489 &omap_dwc3_2 {
0490 extcon = <&extcon_usb2>;
0491 };
0492
0493 &usb2 {
0494 extcon = <&extcon_usb2>;
0495 dr_mode = "otg";
0496 };
0497
0498 &mmc1 {
0499 status = "okay";
0500 vmmc-supply = <&v3_3d>;
0501 vqmmc-supply = <&ldo1_reg>;
0502 bus-width = <4>;
0503 cd-gpios = <&gpio6 27 GPIO_ACTIVE_LOW>; /* gpio 219 */
0504 no-1-8-v;
0505 };
0506
0507 &mmc2 {
0508 status = "okay";
0509 vmmc-supply = <&v3_3d>;
0510 vqmmc-supply = <&v3_3d>;
0511 bus-width = <8>;
0512 non-removable;
0513 max-frequency = <96000000>;
0514 no-1-8-v;
0515 };
0516
0517 &dcan1 {
0518 status = "okay";
0519 pinctrl-names = "default", "sleep", "active";
0520 pinctrl-0 = <&dcan1_pins_sleep>;
0521 pinctrl-1 = <&dcan1_pins_sleep>;
0522 pinctrl-2 = <&dcan1_pins_default>;
0523 };
0524
0525 &qspi {
0526 status = "okay";
0527
0528 spi-max-frequency = <76800000>;
0529 flash@0 {
0530 compatible = "s25fl256s1", "jedec,spi-nor";
0531 spi-max-frequency = <76800000>;
0532 reg = <0>;
0533 spi-tx-bus-width = <1>;
0534 spi-rx-bus-width = <4>;
0535 #address-cells = <1>;
0536 #size-cells = <1>;
0537
0538 /* MTD partition table.
0539 * The ROM checks the first four physical blocks
0540 * for a valid file to boot and the flash here is
0541 * 64KiB block size.
0542 */
0543 partition@0 {
0544 label = "QSPI.SPL";
0545 reg = <0x00000000 0x000040000>;
0546 };
0547 partition@1 {
0548 label = "QSPI.u-boot";
0549 reg = <0x00040000 0x00100000>;
0550 };
0551 partition@2 {
0552 label = "QSPI.u-boot-spl-os";
0553 reg = <0x00140000 0x00080000>;
0554 };
0555 partition@3 {
0556 label = "QSPI.u-boot-env";
0557 reg = <0x001c0000 0x00010000>;
0558 };
0559 partition@4 {
0560 label = "QSPI.u-boot-env.backup1";
0561 reg = <0x001d0000 0x0010000>;
0562 };
0563 partition@5 {
0564 label = "QSPI.kernel";
0565 reg = <0x001e0000 0x0800000>;
0566 };
0567 partition@6 {
0568 label = "QSPI.file-system";
0569 reg = <0x009e0000 0x01620000>;
0570 };
0571 };
0572 };
0573
0574 &cpu0 {
0575 vdd-supply = <&smps12_reg>;
0576 };
0577
0578 &hdmi {
0579 status = "okay";
0580
0581 vdda-supply = <&ldo4_reg>;
0582
0583 port {
0584 hdmi_out: endpoint {
0585 remote-endpoint = <&tpd12s015_in>;
0586 };
0587 };
0588 };
0589
0590 &dss {
0591 status = "okay";
0592
0593 vdda_video-supply = <&ldoln_reg>;
0594
0595 ports {
0596 #address-cells = <1>;
0597 #size-cells = <0>;
0598
0599 port@0 {
0600 reg = <0>;
0601
0602 dpi_out: endpoint {
0603 remote-endpoint = <&rgb_in>;
0604 data-lines = <24>;
0605 };
0606 };
0607 };
0608 };