123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608 |
- // SPDX-License-Identifier: GPL-2.0-only
- /*
- * Copyright (C) 2015-2016 Texas Instruments Incorporated - https://www.ti.com/
- */
- #include "am57xx-industrial-grade.dtsi"
- / {
- aliases {
- rtc0 = &tps659038_rtc;
- rtc1 = &rtc;
- display0 = &hdmi0;
- };
- chosen {
- stdout-path = &uart3;
- };
- vmain: fixedregulator-vmain {
- compatible = "regulator-fixed";
- regulator-name = "VMAIN";
- regulator-min-microvolt = <5000000>;
- regulator-max-microvolt = <5000000>;
- regulator-always-on;
- regulator-boot-on;
- };
- v3_3d: fixedregulator-v3_3d {
- compatible = "regulator-fixed";
- regulator-name = "V3_3D";
- vin-supply = <&smps9_reg>;
- regulator-min-microvolt = <3300000>;
- regulator-max-microvolt = <3300000>;
- regulator-always-on;
- regulator-boot-on;
- };
- v1_2d: fixedregulator-v1_2d {
- compatible = "regulator-fixed";
- regulator-name = "V1_2D";
- vin-supply = <&vmain>;
- regulator-min-microvolt = <1200000>;
- regulator-max-microvolt = <1200000>;
- regulator-always-on;
- regulator-boot-on;
- };
- vtt_fixed: fixedregulator-vtt {
- /* TPS51200 */
- compatible = "regulator-fixed";
- regulator-name = "vtt_fixed";
- vin-supply = <&v3_3d>;
- regulator-min-microvolt = <3300000>;
- regulator-max-microvolt = <3300000>;
- regulator-always-on;
- regulator-boot-on;
- };
- leds-iio {
- status = "disabled";
- compatible = "gpio-leds";
- led-out0 {
- label = "out0";
- gpios = <&tpic2810 0 GPIO_ACTIVE_HIGH>;
- default-state = "off";
- };
- led-out1 {
- label = "out1";
- gpios = <&tpic2810 1 GPIO_ACTIVE_HIGH>;
- default-state = "off";
- };
- led-out2 {
- label = "out2";
- gpios = <&tpic2810 2 GPIO_ACTIVE_HIGH>;
- default-state = "off";
- };
- led-out3 {
- label = "out3";
- gpios = <&tpic2810 3 GPIO_ACTIVE_HIGH>;
- default-state = "off";
- };
- led-out4 {
- label = "out4";
- gpios = <&tpic2810 4 GPIO_ACTIVE_HIGH>;
- default-state = "off";
- };
- led-out5 {
- label = "out5";
- gpios = <&tpic2810 5 GPIO_ACTIVE_HIGH>;
- default-state = "off";
- };
- led-out6 {
- label = "out6";
- gpios = <&tpic2810 6 GPIO_ACTIVE_HIGH>;
- default-state = "off";
- };
- led-out7 {
- label = "out7";
- gpios = <&tpic2810 7 GPIO_ACTIVE_HIGH>;
- default-state = "off";
- };
- };
- hdmi0: connector@0 {
- compatible = "hdmi-connector";
- label = "hdmi";
- type = "a";
- port {
- hdmi_connector_in: endpoint {
- remote-endpoint = <&tpd12s015_out>;
- };
- };
- };
- tpd12s015: encoder@0 {
- compatible = "ti,tpd12s016", "ti,tpd12s015";
- gpios = <0>, /* optional CT_CP_HPD */
- <0>, /* optional LS_OE */
- <&gpio7 12 GPIO_ACTIVE_HIGH>; /* HPD */
- ports {
- #address-cells = <1>;
- #size-cells = <0>;
- port@0 {
- reg = <0>;
- tpd12s015_in: endpoint@0 {
- remote-endpoint = <&hdmi_out>;
- };
- };
- port@1 {
- reg = <1>;
- tpd12s015_out: endpoint@0 {
- remote-endpoint = <&hdmi_connector_in>;
- };
- };
- };
- };
- src_clk_x1: src_clk_x1 {
- #clock-cells = <0>;
- compatible = "fixed-clock";
- clock-frequency = <20000000>;
- };
- };
- &dra7_pmx_core {
- dcan1_pins_default: dcan1_pins_default {
- pinctrl-single,pins = <
- DRA7XX_CORE_IOPAD(0x37d0, PIN_OUTPUT_PULLUP | MUX_MODE0) /* dcan1_tx */
- DRA7XX_CORE_IOPAD(0x37d4, PIN_INPUT_PULLUP | MUX_MODE0) /* dcan1_rx */
- >;
- };
- dcan1_pins_sleep: dcan1_pins_sleep {
- pinctrl-single,pins = <
- DRA7XX_CORE_IOPAD(0x37d0, MUX_MODE15 | PULL_UP) /* dcan1_tx.off */
- DRA7XX_CORE_IOPAD(0x37d4, MUX_MODE15 | PULL_UP) /* dcan1_rx.off */
- >;
- };
- };
- &i2c1 {
- status = "okay";
- clock-frequency = <400000>;
- tps659038: tps659038@58 {
- compatible = "ti,tps659038";
- reg = <0x58>;
- interrupts-extended = <&gpio6 16 IRQ_TYPE_LEVEL_HIGH
- &dra7_pmx_core 0x418>;
- #interrupt-cells = <2>;
- interrupt-controller;
- ti,system-power-controller;
- ti,palmas-override-powerhold;
- tps659038_pmic {
- compatible = "ti,tps659038-pmic";
- smps12-in-supply = <&vmain>;
- smps3-in-supply = <&vmain>;
- smps45-in-supply = <&vmain>;
- smps6-in-supply = <&vmain>;
- smps7-in-supply = <&vmain>;
- smps8-in-supply = <&vmain>;
- smps9-in-supply = <&vmain>;
- ldo1-in-supply = <&vmain>;
- ldo2-in-supply = <&vmain>;
- ldo3-in-supply = <&vmain>;
- ldo4-in-supply = <&vmain>;
- ldo9-in-supply = <&vmain>;
- ldoln-in-supply = <&vmain>;
- ldousb-in-supply = <&vmain>;
- ldortc-in-supply = <&vmain>;
- regulators {
- smps12_reg: smps12 {
- /* VDD_MPU */
- regulator-name = "smps12";
- regulator-min-microvolt = <850000>;
- regulator-max-microvolt = <1250000>;
- regulator-always-on;
- regulator-boot-on;
- };
- smps3_reg: smps3 {
- /* VDD_DDR EMIF1 EMIF2 */
- regulator-name = "smps3";
- regulator-min-microvolt = <1350000>;
- regulator-max-microvolt = <1350000>;
- regulator-always-on;
- regulator-boot-on;
- };
- smps45_reg: smps45 {
- /* VDD_DSPEVE on AM572 */
- /* VDD_IVA + VDD_DSP on AM571 */
- regulator-name = "smps45";
- regulator-min-microvolt = <850000>;
- regulator-max-microvolt = <1250000>;
- regulator-always-on;
- regulator-boot-on;
- };
- smps6_reg: smps6 {
- /* VDD_GPU */
- regulator-name = "smps6";
- regulator-min-microvolt = <850000>;
- regulator-max-microvolt = <1250000>;
- regulator-always-on;
- regulator-boot-on;
- };
- smps7_reg: smps7 {
- /* VDD_CORE */
- regulator-name = "smps7";
- regulator-min-microvolt = <850000>;
- regulator-max-microvolt = <1150000>;
- regulator-always-on;
- regulator-boot-on;
- };
- smps8_reg: smps8 {
- /* 5728 - VDD_IVAHD */
- /* 5718 - N.C. test point */
- regulator-name = "smps8";
- };
- smps9_reg: smps9 {
- /* VDD_3_3D */
- regulator-name = "smps9";
- regulator-min-microvolt = <3300000>;
- regulator-max-microvolt = <3300000>;
- regulator-always-on;
- regulator-boot-on;
- };
- ldo1_reg: ldo1 {
- /* VDDSHV8 - VSDMMC */
- /* NOTE: on rev 1.3a, data supply */
- regulator-name = "ldo1";
- regulator-min-microvolt = <1800000>;
- regulator-max-microvolt = <3300000>;
- regulator-boot-on;
- regulator-always-on;
- };
- ldo2_reg: ldo2 {
- /* VDDSH18V */
- regulator-name = "ldo2";
- regulator-min-microvolt = <1800000>;
- regulator-max-microvolt = <1800000>;
- regulator-always-on;
- regulator-boot-on;
- };
- ldo3_reg: ldo3 {
- /* R1.3a 572x V1_8PHY_LDO3: USB, SATA */
- regulator-name = "ldo3";
- regulator-min-microvolt = <1800000>;
- regulator-max-microvolt = <1800000>;
- regulator-always-on;
- regulator-boot-on;
- };
- ldo4_reg: ldo4 {
- /* R1.3a 572x V1_8PHY_LDO4: PCIE, HDMI*/
- regulator-name = "ldo4";
- regulator-min-microvolt = <1800000>;
- regulator-max-microvolt = <1800000>;
- regulator-always-on;
- regulator-boot-on;
- };
- /* LDO5-8 unused */
- ldo9_reg: ldo9 {
- /* VDD_RTC */
- regulator-name = "ldo9";
- regulator-min-microvolt = <840000>;
- regulator-max-microvolt = <1160000>;
- regulator-always-on;
- regulator-boot-on;
- };
- ldoln_reg: ldoln {
- /* VDDA_1V8_PLL */
- regulator-name = "ldoln";
- regulator-min-microvolt = <1800000>;
- regulator-max-microvolt = <1800000>;
- regulator-always-on;
- regulator-boot-on;
- };
- ldousb_reg: ldousb {
- /* VDDA_3V_USB: VDDA_USBHS33 */
- regulator-name = "ldousb";
- regulator-min-microvolt = <3300000>;
- regulator-max-microvolt = <3300000>;
- regulator-always-on;
- regulator-boot-on;
- };
- ldortc_reg: ldortc {
- /* VDDA_RTC */
- regulator-name = "ldortc";
- regulator-min-microvolt = <1800000>;
- regulator-max-microvolt = <1800000>;
- regulator-always-on;
- regulator-boot-on;
- };
- regen1: regen1 {
- /* VDD_3V3_ON */
- regulator-name = "regen1";
- regulator-boot-on;
- regulator-always-on;
- };
- regen2: regen2 {
- /* Needed for PMIC internal resource */
- regulator-name = "regen2";
- regulator-boot-on;
- regulator-always-on;
- };
- };
- };
- tps659038_rtc: tps659038_rtc {
- compatible = "ti,palmas-rtc";
- interrupt-parent = <&tps659038>;
- interrupts = <8 IRQ_TYPE_EDGE_FALLING>;
- wakeup-source;
- };
- tps659038_pwr_button: tps659038_pwr_button {
- compatible = "ti,palmas-pwrbutton";
- interrupt-parent = <&tps659038>;
- interrupts = <1 IRQ_TYPE_EDGE_FALLING>;
- wakeup-source;
- ti,palmas-long-press-seconds = <12>;
- };
- tps659038_gpio: tps659038_gpio {
- compatible = "ti,palmas-gpio";
- gpio-controller;
- #gpio-cells = <2>;
- };
- extcon_usb2: tps659038_usb {
- compatible = "ti,palmas-usb-vid";
- ti,enable-vbus-detection;
- ti,enable-id-detection;
- /* ID & VBUS GPIOs provided in board dts */
- };
- };
- tpic2810: tpic2810@60 {
- compatible = "ti,tpic2810";
- reg = <0x60>;
- gpio-controller;
- #gpio-cells = <2>;
- };
- dsi_bridge: tc358778@e {
- compatible = "toshiba,tc358778", "toshiba,tc358768";
- reg = <0xe>;
- status = "disabled";
- clocks = <&src_clk_x1>;
- clock-names = "refclk";
- vddc-supply = <&v1_2d>;
- vddmipi-supply = <&v1_2d>;
- vddio-supply = <&v3_3d>;
- dsi_bridge_ports: ports {
- #address-cells = <1>;
- #size-cells = <0>;
- port@0 {
- reg = <0>;
- rgb_in: endpoint {
- remote-endpoint = <&dpi_out>;
- data-lines = <24>;
- };
- };
- };
- };
- };
- &mcspi3 {
- status = "okay";
- ti,pindir-d0-out-d1-in;
- sn65hvs882: sn65hvs882@0 {
- compatible = "pisosr-gpio";
- gpio-controller;
- #gpio-cells = <2>;
- reg = <0>;
- spi-max-frequency = <1000000>;
- spi-cpol;
- };
- };
- &uart3 {
- status = "okay";
- interrupts-extended = <&crossbar_mpu GIC_SPI 69 IRQ_TYPE_LEVEL_HIGH
- &dra7_pmx_core 0x248>;
- };
- &rtc {
- status = "okay";
- ext-clk-src;
- };
- &mac_sw {
- status = "okay";
- };
- &cpsw_port1 {
- phy-handle = <ðphy0>;
- phy-mode = "rgmii-rxid";
- ti,dual-emac-pvid = <1>;
- };
- &cpsw_port2 {
- phy-handle = <ðphy1>;
- phy-mode = "rgmii-rxid";
- ti,dual-emac-pvid = <2>;
- };
- &davinci_mdio_sw {
- ethphy0: ethernet-phy@0 {
- reg = <0>;
- };
- ethphy1: ethernet-phy@1 {
- reg = <1>;
- };
- };
- &usb2_phy1 {
- phy-supply = <&ldousb_reg>;
- };
- &usb2_phy2 {
- phy-supply = <&ldousb_reg>;
- };
- &usb1 {
- dr_mode = "host";
- };
- &omap_dwc3_2 {
- extcon = <&extcon_usb2>;
- };
- &usb2 {
- extcon = <&extcon_usb2>;
- dr_mode = "otg";
- };
- &mmc1 {
- status = "okay";
- vmmc-supply = <&v3_3d>;
- vqmmc-supply = <&ldo1_reg>;
- bus-width = <4>;
- cd-gpios = <&gpio6 27 GPIO_ACTIVE_LOW>; /* gpio 219 */
- no-1-8-v;
- };
- &mmc2 {
- status = "okay";
- vmmc-supply = <&v3_3d>;
- vqmmc-supply = <&v3_3d>;
- bus-width = <8>;
- non-removable;
- max-frequency = <96000000>;
- no-1-8-v;
- };
- &dcan1 {
- status = "okay";
- pinctrl-names = "default", "sleep", "active";
- pinctrl-0 = <&dcan1_pins_sleep>;
- pinctrl-1 = <&dcan1_pins_sleep>;
- pinctrl-2 = <&dcan1_pins_default>;
- };
- &qspi {
- status = "okay";
- spi-max-frequency = <76800000>;
- flash@0 {
- compatible = "s25fl256s1", "jedec,spi-nor";
- spi-max-frequency = <76800000>;
- reg = <0>;
- spi-tx-bus-width = <1>;
- spi-rx-bus-width = <4>;
- #address-cells = <1>;
- #size-cells = <1>;
- /* MTD partition table.
- * The ROM checks the first four physical blocks
- * for a valid file to boot and the flash here is
- * 64KiB block size.
- */
- partition@0 {
- label = "QSPI.SPL";
- reg = <0x00000000 0x000040000>;
- };
- partition@1 {
- label = "QSPI.u-boot";
- reg = <0x00040000 0x00100000>;
- };
- partition@2 {
- label = "QSPI.u-boot-spl-os";
- reg = <0x00140000 0x00080000>;
- };
- partition@3 {
- label = "QSPI.u-boot-env";
- reg = <0x001c0000 0x00010000>;
- };
- partition@4 {
- label = "QSPI.u-boot-env.backup1";
- reg = <0x001d0000 0x0010000>;
- };
- partition@5 {
- label = "QSPI.kernel";
- reg = <0x001e0000 0x0800000>;
- };
- partition@6 {
- label = "QSPI.file-system";
- reg = <0x009e0000 0x01620000>;
- };
- };
- };
- &cpu0 {
- vdd-supply = <&smps12_reg>;
- };
- &hdmi {
- status = "okay";
- vdda-supply = <&ldo4_reg>;
- port {
- hdmi_out: endpoint {
- remote-endpoint = <&tpd12s015_in>;
- };
- };
- };
- &dss {
- status = "okay";
- vdda_video-supply = <&ldoln_reg>;
- ports {
- #address-cells = <1>;
- #size-cells = <0>;
- port@0 {
- reg = <0>;
- dpi_out: endpoint {
- remote-endpoint = <&rgb_in>;
- data-lines = <24>;
- };
- };
- };
- };
|