Merge tag 'u-boot-imx-20191105' of https://gitlab.denx.de/u-boot/custodians/u-boot-imx
[oweals/u-boot.git] / arch / arm / dts / tegra20-colibri.dts
index 3131b9201b7029f012c3e4f80df83663c4697d94..11023968f4129f55eac0f85abe4cea8837099f71 100644 (file)
@@ -4,30 +4,43 @@
 
 / {
        model = "Toradex Colibri T20";
-       compatible = "toradex,t20", "nvidia,tegra20";
+       compatible = "toradex,colibri_t20", "nvidia,tegra20";
 
        chosen {
                stdout-path = &uarta;
        };
 
        aliases {
-               usb0 = "/usb@c5008000";
-               usb1 = "/usb@c5000000";
-               usb2 = "/usb@c5004000";
-               sdhci0 = "/sdhci@c8000600";
+               i2c0 = "/i2c@7000d000";
+               i2c1 = "/i2c@7000c000";
+               i2c2 = "/i2c@7000c400";
+               mmc0 = "/sdhci@c8000600";
+               usb0 = "/usb@c5000000";
+               usb1 = "/usb@c5004000"; /* On-module only, for ASIX */
+               usb2 = "/usb@c5008000";
        };
 
-       usb@c5000000 {
-               dr_mode = "otg";
-       };
-
-       usb@c5004000 {
-               nvidia,phy-reset-gpio = <&gpio TEGRA_GPIO(V, 1) GPIO_ACTIVE_HIGH>;
-               nvidia,vbus-gpio = <&gpio TEGRA_GPIO(BB, 1) GPIO_ACTIVE_HIGH>;
-       };
-
-       usb@c5008000 {
-               nvidia,vbus-gpio = <&gpio TEGRA_GPIO(W, 2) GPIO_ACTIVE_LOW>;
+       host1x@50000000 {
+               dc@54200000 {
+                       rgb {
+                               status = "okay";
+                               nvidia,panel = <&lcd_panel>;
+                               display-timings {
+                                       timing@0 {
+                                               /* VESA VGA */
+                                               clock-frequency = <25175000>;
+                                               hactive = <640>;
+                                               vactive = <480>;
+                                               hback-porch = <48>;
+                                               hfront-porch = <16>;
+                                               hsync-len = <96>;
+                                               vback-porch = <31>;
+                                               vfront-porch = <11>;
+                                               vsync-len = <2>;
+                                       };
+                               };
+                       };
+               };
        };
 
        nand-controller@70008000 {
                };
        };
 
+       pwm@7000a000 {
+               status = "okay";
+       };
+
+       /*
+        * GEN1_I2C: I2C_SDA/SCL on SODIMM pin 194/196 (e.g. RTC on carrier
+        * board)
+        */
+       i2c@7000c000 {
+               status = "okay";
+               clock-frequency = <400000>;
+       };
+
+       /* GEN2_I2C: unused */
+
+       /* DDC_CLOCK/DATA on X3 pin 15/16 (e.g. display EDID) */
+       i2c@7000c400 {
+               status = "okay";
+               clock-frequency = <10000>;
+       };
+
+       /*
+        * PWR_I2C: power I2C to PMIC and temperature sensor
+        */
+       i2c@7000d000 {
+               status = "okay";
+               clock-frequency = <100000>;
+       };
+
+       /* EHCI instance 0: USB1_DP/N -> USBC_P/N */
+       usb@c5000000 {
+               status = "okay";
+               dr_mode = "otg";
+       };
+
+       /* EHCI instance 1: ULPI -> USB3340 -> AX88772B */
+       usb@c5004000 {
+               status = "okay";
+               /* ULPI_RESET */
+               nvidia,phy-reset-gpio =
+                               <&gpio TEGRA_GPIO(V, 1) GPIO_ACTIVE_LOW>;
+               /* VBUS_LAN */
+               nvidia,vbus-gpio = <&gpio TEGRA_GPIO(BB, 1) GPIO_ACTIVE_HIGH>;
+       };
+
+       /* EHCI instance 2: USB3_DP/N -> USBH_P/N */
+       usb@c5008000 {
+               status = "okay";
+               /* USBH_PEN */
+               nvidia,vbus-gpio = <&gpio TEGRA_GPIO(W, 2) GPIO_ACTIVE_LOW>;
+       };
+
        sdhci@c8000600 {
                status = "okay";
-               cd-gpios = <&gpio TEGRA_GPIO(C, 7) GPIO_ACTIVE_LOW>;
                bus-width = <4>;
+               cd-gpios = <&gpio TEGRA_GPIO(C, 7) GPIO_ACTIVE_LOW>;
+       };
+
+       backlight: backlight {
+               compatible = "pwm-backlight";
+
+               brightness-levels = <255 128 64 32 16 8 4 0>;
+               default-brightness-level = <6>;
+               /* BL_ON */
+               enable-gpios = <&gpio TEGRA_GPIO(T, 4) GPIO_ACTIVE_HIGH>;
+               power-supply = <&reg_3v3>;
+               /* PWM<A> */
+               pwms = <&pwm 0 5000000>;
        };
+
+       clocks {
+               compatible = "simple-bus";
+               #address-cells = <1>;
+               #size-cells = <0>;
+
+               clk32k_in: clock@0 {
+                       compatible = "fixed-clock";
+                       reg=<0>;
+                       #clock-cells = <0>;
+                       clock-frequency = <32768>;
+               };
+       };
+
+       lcd_panel: panel {
+               /*
+                * edt,et057090dhu: EDT 5.7" LCD TFT
+                * edt,et070080dh6: EDT 7.0" LCD TFT
+                */
+               compatible = "edt,et057090dhu", "simple-panel";
+
+               backlight = <&backlight>;
+       };
+
+       regulators {
+               compatible = "simple-bus";
+               #address-cells = <1>;
+               #size-cells = <0>;
+
+               reg_3v3: regulator@0 {
+                       compatible = "regulator-fixed";
+                       reg = <0>;
+                       regulator-name = "+V3.3";
+                       regulator-min-microvolt = <3300000>;
+                       regulator-max-microvolt = <3300000>;
+                       regulator-always-on;
+               };
+       };
+};
+
+&uarta {
+       status = "okay";
 };