mirror of
https://github.com/AsahiLinux/u-boot
synced 2024-11-25 14:10:43 +00:00
15be9a7b3b
The ASUS Transformer T30 family are 2-in-1 detachable tablets and AiO developed by ASUS that run the Android operating system (TF600T runs Windows RT and P1801-T runs Android and Windows). The T30 Transformers feature a 10.1-inch display (apart P1801-T), an Nvidia Tegra 3 quad-core chip, 1/2 GB of RAM, and 16/32 GB of storage. Transformers board derives from Nvidia Cardhu development board. This patch brings support for 7 known Transformer devices: - ASUS Transformer Prime TF201 - ASUS Transformer Pad TF300T/TF300TG/TF300TL - ASUS VivoTab RT TF600T (Windows RT based) - ASUS Transformer Infinity TF700T - ASUS Portable AiO P1801-T Tested-by: Andreas Westman Dorcsak <hedmoo@yahoo.com> # all devices Signed-off-by: Svyatoslav Ryhel <clamor95@gmail.com> Signed-off-by: Thierry Reding <treding@nvidia.com>
211 lines
4 KiB
Text
211 lines
4 KiB
Text
// SPDX-License-Identifier: GPL-2.0
|
|
|
|
#include <dt-bindings/input/input.h>
|
|
|
|
#include "tegra30.dtsi"
|
|
|
|
/ {
|
|
chosen {
|
|
stdout-path = &uarta;
|
|
};
|
|
|
|
aliases {
|
|
i2c0 = &pwr_i2c;
|
|
i2c1 = &gen1_i2c;
|
|
|
|
mmc0 = &sdmmc4; /* eMMC */
|
|
mmc1 = &sdmmc1; /* uSD slot */
|
|
|
|
rtc0 = &pmic;
|
|
rtc1 = "/rtc@7000e000";
|
|
|
|
usb0 = &usb1;
|
|
usb1 = &usb3; /* Dock USB */
|
|
};
|
|
|
|
memory {
|
|
device_type = "memory";
|
|
reg = <0x80000000 0x40000000>;
|
|
};
|
|
|
|
host1x@50000000 {
|
|
dc@54200000 {
|
|
rgb {
|
|
status = "okay";
|
|
|
|
nvidia,panel = <&panel>;
|
|
};
|
|
};
|
|
};
|
|
|
|
uarta: serial@70006000 {
|
|
status = "okay";
|
|
};
|
|
|
|
pwm: pwm@7000a000 {
|
|
status = "okay";
|
|
};
|
|
|
|
gen1_i2c: i2c@7000c000 {
|
|
status = "okay";
|
|
clock-frequency = <100000>;
|
|
};
|
|
|
|
pwr_i2c: i2c@7000d000 {
|
|
status = "okay";
|
|
clock-frequency = <400000>;
|
|
|
|
/* Texas Instruments TPS659110 PMIC */
|
|
pmic: tps65911@2d {
|
|
compatible = "ti,tps65911";
|
|
reg = <0x2d>;
|
|
|
|
interrupts = <GIC_SPI 86 IRQ_TYPE_LEVEL_HIGH>;
|
|
#interrupt-cells = <2>;
|
|
interrupt-controller;
|
|
|
|
ti,system-power-controller;
|
|
|
|
#gpio-cells = <2>;
|
|
gpio-controller;
|
|
|
|
regulators {
|
|
/* eMMC VDD */
|
|
vcore_emmc: ldo1 {
|
|
regulator-name = "vdd_emmc_core";
|
|
regulator-min-microvolt = <1000000>;
|
|
regulator-max-microvolt = <3300000>;
|
|
regulator-always-on;
|
|
};
|
|
|
|
/* uSD slot VDD */
|
|
vdd_usd: ldo2 {
|
|
regulator-name = "vdd_usd";
|
|
regulator-min-microvolt = <3100000>;
|
|
regulator-max-microvolt = <3100000>;
|
|
};
|
|
|
|
/* uSD slot VDDIO */
|
|
vddio_usd: ldo3 {
|
|
regulator-name = "vddio_usd";
|
|
regulator-min-microvolt = <1800000>;
|
|
regulator-max-microvolt = <3100000>;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
|
|
sdmmc1: sdhci@78000000 {
|
|
status = "okay";
|
|
bus-width = <4>;
|
|
|
|
cd-gpios = <&gpio TEGRA_GPIO(I, 5) GPIO_ACTIVE_LOW>;
|
|
power-gpios = <&gpio TEGRA_GPIO(D, 7) GPIO_ACTIVE_HIGH>;
|
|
|
|
vmmc-supply = <&vdd_usd>;
|
|
vqmmc-supply = <&vddio_usd>;
|
|
};
|
|
|
|
sdmmc4: sdhci@78000600 {
|
|
status = "okay";
|
|
bus-width = <8>;
|
|
non-removable;
|
|
};
|
|
|
|
/* USB via ASUS connector */
|
|
usb1: usb@7d000000 {
|
|
status = "okay";
|
|
dr_mode = "otg";
|
|
};
|
|
|
|
/* Dock's USB port */
|
|
usb3: usb@7d008000 {
|
|
status = "okay";
|
|
};
|
|
|
|
backlight: backlight {
|
|
compatible = "pwm-backlight";
|
|
|
|
enable-gpios = <&gpio TEGRA_GPIO(H, 2) GPIO_ACTIVE_HIGH>;
|
|
power-supply = <&vdd_5v0_bl>;
|
|
pwms = <&pwm 0 4000000>;
|
|
|
|
brightness-levels = <1 35 70 105 140 175 210 255>;
|
|
default-brightness-level = <5>;
|
|
};
|
|
|
|
/* PMIC has a built-in 32KHz oscillator which is used by PMC */
|
|
clk32k_in: clock-32k {
|
|
compatible = "fixed-clock";
|
|
#clock-cells = <0>;
|
|
clock-frequency = <32768>;
|
|
clock-output-names = "pmic-oscillator";
|
|
};
|
|
|
|
gpio-keys {
|
|
compatible = "gpio-keys";
|
|
|
|
key-power {
|
|
label = "Power";
|
|
gpios = <&gpio TEGRA_GPIO(V, 0) GPIO_ACTIVE_LOW>;
|
|
linux,code = <KEY_ENTER>;
|
|
};
|
|
|
|
key-volume-up {
|
|
label = "Volume Up";
|
|
gpios = <&gpio TEGRA_GPIO(Q, 2) GPIO_ACTIVE_LOW>;
|
|
linux,code = <KEY_UP>;
|
|
};
|
|
|
|
key-volume-down {
|
|
label = "Volume Down";
|
|
gpios = <&gpio TEGRA_GPIO(Q, 3) GPIO_ACTIVE_LOW>;
|
|
linux,code = <KEY_DOWN>;
|
|
};
|
|
};
|
|
|
|
panel: panel {
|
|
compatible = "simple-panel";
|
|
|
|
power-supply = <&vdd_pnl_reg>;
|
|
enable-gpios = <&gpio TEGRA_GPIO(N, 6) GPIO_ACTIVE_HIGH>;
|
|
|
|
backlight = <&backlight>;
|
|
|
|
display-timings {
|
|
timing@0 {
|
|
/* 1280x800@60Hz */
|
|
clock-frequency = <68000000>;
|
|
|
|
hactive = <1280>;
|
|
hfront-porch = <48>;
|
|
hback-porch = <18>;
|
|
hsync-len = <30>;
|
|
|
|
vactive = <800>;
|
|
vfront-porch = <3>;
|
|
vback-porch = <12>;
|
|
vsync-len = <5>;
|
|
};
|
|
};
|
|
};
|
|
|
|
vdd_pnl_reg: regulator-pnl {
|
|
compatible = "regulator-fixed";
|
|
regulator-name = "vdd_panel";
|
|
regulator-min-microvolt = <3300000>;
|
|
regulator-max-microvolt = <3300000>;
|
|
gpio = <&gpio TEGRA_GPIO(W, 1) GPIO_ACTIVE_HIGH>;
|
|
enable-active-high;
|
|
};
|
|
|
|
vdd_5v0_bl: regulator-bl {
|
|
compatible = "regulator-fixed";
|
|
regulator-name = "vdd_5v0_bl";
|
|
regulator-min-microvolt = <5000000>;
|
|
regulator-max-microvolt = <5000000>;
|
|
regulator-boot-on;
|
|
gpio = <&gpio TEGRA_GPIO(H, 3) GPIO_ACTIVE_HIGH>;
|
|
enable-active-high;
|
|
};
|
|
};
|