| // 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 { |
| vdd_1v8_vio: vddio { |
| regulator-name = "vdd_1v8_gen"; |
| regulator-min-microvolt = <1800000>; |
| regulator-max-microvolt = <1800000>; |
| regulator-always-on; |
| regulator-boot-on; |
| }; |
| |
| /* eMMC VDD */ |
| vcore_emmc: ldo1 { |
| regulator-name = "vdd_emmc_core"; |
| regulator-min-microvolt = <3300000>; |
| regulator-max-microvolt = <3300000>; |
| regulator-boot-on; |
| }; |
| |
| /* uSD slot VDD */ |
| vdd_usd: ldo2 { |
| regulator-name = "vdd_usd"; |
| regulator-min-microvolt = <3100000>; |
| regulator-max-microvolt = <3100000>; |
| regulator-boot-on; |
| }; |
| |
| /* uSD slot VDDIO */ |
| vddio_usd: ldo3 { |
| regulator-name = "vddio_usd"; |
| regulator-min-microvolt = <3100000>; |
| regulator-max-microvolt = <3100000>; |
| regulator-always-on; |
| regulator-boot-on; |
| }; |
| }; |
| }; |
| }; |
| |
| 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; |
| |
| vmmc-supply = <&vcore_emmc>; |
| vqmmc-supply = <&vdd_1v8_vio>; |
| }; |
| |
| /* USB via ASUS connector */ |
| usb1: usb@7d000000 { |
| status = "okay"; |
| dr_mode = "otg"; |
| }; |
| |
| usb-phy@7d000000 { |
| status = "okay"; |
| nvidia,hssync-start-delay = <0>; |
| nvidia,xcvr-lsfslew = <2>; |
| nvidia,xcvr-lsrslew = <2>; |
| }; |
| |
| /* Dock's USB port */ |
| usb3: usb@7d008000 { |
| status = "okay"; |
| }; |
| |
| usb-phy@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>; |
| gpio = <&gpio TEGRA_GPIO(H, 3) GPIO_ACTIVE_HIGH>; |
| enable-active-high; |
| }; |
| }; |