Commit 3eb52a06 authored by Olof Johansson's avatar Olof Johansson

Merge tag 'tegra-for-4.4-dt' of...

Merge tag 'tegra-for-4.4-dt' of git://git.kernel.org/pub/scm/linux/kernel/git/tegra/linux into next/dt

ARM: tegra: Devicetree changes for v4.4-rc1

Mostly a bunch of updates to the Toradex Apalis and Colibri platforms
along with a couple of cleanup patches.

* tag 'tegra-for-4.4-dt' of git://git.kernel.org/pub/scm/linux/kernel/git/tegra/linux: (25 commits)
  ARM: tegra: Use consistent indentation for SATA node
  ARM: tegra: colibri-eval: Fix power/wakeup key
  ARM: tegra: colibri-eval: Add comment concerning SD/MMC
  ARM: tegra: colibri-eval: Fix vendor string of M41T0M6 RTC
  ARM: tegra: colibri: Properly align pin names
  ARM: tegra: colibri: Replace eMMC label by comment
  ARM: tegra: colibri: Activate STMPE811 touch controller
  ARM: tegra: colibri: Add touch pen interrupt pin muxing
  ARM: tegra: colibri: Fix comment about 3v3 fixed supply
  ARM: tegra: colibri: Add pin muxing for on-module power I2C
  ARM: tegra: colibri: Improve comment about thermal alert pin
  ARM: tegra: colibri: Fix HDMI supplies
  ARM: tegra: colibri: Update hardware revisions compatibility
  ARM: tegra: apalis-eval: Fix power/wakeup key
  ARM: tegra: apalis-eval: Fix backlight PWM comment
  ARM: tegra: apalis-eval: Set OTG dr_mode
  ARM: tegra: apalis-eval: Enable HDA controller
  ARM: tegra: apalis: Properly align pin names
  ARM: tegra: apalis: Add digital audio pin muxing
  ARM: tegra: apalis: Add comment concerning eMMC
  ...
Signed-off-by: default avatarOlof Johansson <olof@lixom.net>
parents 41adfe82 481b4f1a
......@@ -159,7 +159,7 @@ regulators {
vin-ldo9-10-supply = <&vdd_5v0_sys>;
vin-ldo11-supply = <&vdd_3v3_run>;
sd0 {
vdd_cpu: sd0 {
regulator-name = "+VDD_CPU_AP";
regulator-min-microvolt = <700000>;
regulator-max-microvolt = <1350000>;
......@@ -397,6 +397,13 @@ sdhci@0,700b0600 { /* eMMC on this bus */
non-removable;
};
/* CPU DFLL clock */
clock@0,70110000 {
status = "okay";
vdd-cpu-supply = <&vdd_cpu>;
nvidia,i2c-fs-rate = <400000>;
};
ahub@0,70300000 {
i2s@0,70301100 {
status = "okay";
......@@ -487,6 +494,12 @@ clk32k_in: clock@0 {
};
};
cpus {
cpu@0 {
vdd-cpu-supply = <&vdd_cpu>;
};
};
gpio-keys {
compatible = "gpio-keys";
......
......@@ -608,26 +608,20 @@ emc: emc@0,7001b000 {
sata@0,70020000 {
compatible = "nvidia,tegra124-ahci";
reg = <0x0 0x70027000 0x0 0x2000>, /* AHCI */
<0x0 0x70020000 0x0 0x7000>; /* SATA */
interrupts = <GIC_SPI 23 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&tegra_car TEGRA124_CLK_SATA>,
<&tegra_car TEGRA124_CLK_SATA_OOB>,
<&tegra_car TEGRA124_CLK_CML1>,
<&tegra_car TEGRA124_CLK_PLL_E>;
clock-names = "sata", "sata-oob", "cml1", "pll_e";
resets = <&tegra_car 124>,
<&tegra_car 123>,
<&tegra_car 129>;
reset-names = "sata", "sata-oob", "sata-cold";
phys = <&padctl TEGRA_XUSB_PADCTL_SATA>;
phy-names = "sata-phy";
status = "disabled";
};
......
......@@ -126,6 +126,10 @@ spidev1: spidev@2 {
};
};
hda@70030000 {
status = "okay";
};
sd1: sdhci@78000000 {
status = "okay";
bus-width = <4>;
......@@ -149,6 +153,7 @@ usb@7d000000 {
usb-phy@7d000000 {
status = "okay";
dr_mode = "otg";
vbus-supply = <&usbo1_vbus_reg>;
};
......@@ -175,7 +180,7 @@ usb-phy@7d008000 {
backlight: backlight {
compatible = "pwm-backlight";
/* PWM0 */
/* PWM_BKL1 */
pwms = <&pwm 0 5000000>;
brightness-levels = <255 231 223 207 191 159 127 0>;
default-brightness-level = <6>;
......@@ -186,10 +191,10 @@ backlight: backlight {
gpio-keys {
compatible = "gpio-keys";
power {
label = "Power";
wakeup {
label = "WAKE1_MICO";
gpios = <&gpio TEGRA_GPIO(V, 1) GPIO_ACTIVE_LOW>;
linux,code = <KEY_POWER>;
linux,code = <KEY_WAKEUP>;
debounce-interval = <10>;
gpio-key,wakeup;
};
......
#include "tegra30.dtsi"
/*
* Toradex Apalis T30 Device Tree
* Compatible for Revisions 1GB: V1.0A; 2GB: V1.0B, V1.0C
* Toradex Apalis T30 Module Device Tree
* Compatible for Revisions 1GB: V1.0A, V1.1A; 1GB IT: V1.1A;
* 2GB: V1.0B, V1.0C, V1.0E, V1.1A
*/
/ {
model = "Toradex Apalis T30";
......@@ -33,8 +34,8 @@ pci@3,0 {
host1x@50000000 {
hdmi@54280000 {
vdd-supply = <&sys_3v3_reg>;
pll-supply = <&vio_reg>;
vdd-supply = <&avdd_hdmi_3v3_reg>;
pll-supply = <&avdd_hdmi_pll_1v8_reg>;
nvidia,hpd-gpio =
<&gpio TEGRA_GPIO(N, 7) GPIO_ACTIVE_HIGH>;
......@@ -65,7 +66,7 @@ uart3_rts_n_pc0 {
/* BKL1_PWM_EN#, disable TPS65911 PMIC PWM backlight */
uart3_cts_n_pa1 {
nvidia,pins = "uart3_cts_n_pa1";
nvidia,function = "rsvd1";
nvidia,function = "rsvd2";
nvidia,pull = <TEGRA_PIN_PULL_UP>;
nvidia,tristate = <TEGRA_PIN_DISABLE>;
};
......@@ -108,6 +109,30 @@ spi2_cs2_n_pw3 {
nvidia,enable-input = <TEGRA_PIN_ENABLE>;
};
/* Apalis Digital Audio */
clk1_req_pee2 {
nvidia,pins = "clk1_req_pee2";
nvidia,function = "hda";
nvidia,pull = <TEGRA_PIN_PULL_NONE>;
nvidia,tristate = <TEGRA_PIN_DISABLE>;
};
clk2_out_pw5 {
nvidia,pins = "clk2_out_pw5";
nvidia,function = "extperiph2";
nvidia,pull = <TEGRA_PIN_PULL_NONE>;
nvidia,tristate = <TEGRA_PIN_DISABLE>;
nvidia,enable-input = <TEGRA_PIN_DISABLE>;
};
dap1_fs_pn0 {
nvidia,pins = "dap1_fs_pn0",
"dap1_din_pn1",
"dap1_dout_pn2",
"dap1_sclk_pn3";
nvidia,function = "hda";
nvidia,pull = <TEGRA_PIN_PULL_NONE>;
nvidia,tristate = <TEGRA_PIN_DISABLE>;
};
/* Apalis I2C3 */
cam_i2c_scl_pbb1 {
nvidia,pins = "cam_i2c_scl_pbb1",
......@@ -151,32 +176,32 @@ pv3 {
};
/* Apalis PWM1 */
gpio_pu6 {
nvidia,pins = "gpio_pu6";
pu6 {
nvidia,pins = "pu6";
nvidia,function = "pwm3";
nvidia,pull = <TEGRA_PIN_PULL_NONE>;
nvidia,tristate = <TEGRA_PIN_DISABLE>;
};
/* Apalis PWM2 */
gpio_pu5 {
nvidia,pins = "gpio_pu5";
pu5 {
nvidia,pins = "pu5";
nvidia,function = "pwm2";
nvidia,pull = <TEGRA_PIN_PULL_NONE>;
nvidia,tristate = <TEGRA_PIN_DISABLE>;
};
/* Apalis PWM3 */
gpio_pu4 {
nvidia,pins = "gpio_pu4";
pu4 {
nvidia,pins = "pu4";
nvidia,function = "pwm1";
nvidia,pull = <TEGRA_PIN_PULL_NONE>;
nvidia,tristate = <TEGRA_PIN_DISABLE>;
};
/* Apalis PWM4 */
gpio_pu3 {
nvidia,pins = "gpio_pu3";
pu3 {
nvidia,pins = "pu3";
nvidia,function = "pwm0";
nvidia,pull = <TEGRA_PIN_PULL_NONE>;
nvidia,tristate = <TEGRA_PIN_DISABLE>;
......@@ -635,6 +660,7 @@ pmc@7000e400 {
nvidia,sys-clock-req-active-high;
};
/* eMMC */
sdhci@78000600 {
status = "okay";
bus-width = <8>;
......@@ -666,18 +692,40 @@ regulators {
#address-cells = <1>;
#size-cells = <0>;
sys_3v3_reg: regulator@100 {
avdd_hdmi_pll_1v8_reg: regulator@100 {
compatible = "regulator-fixed";
reg = <100>;
regulator-name = "+V1.8_AVDD_HDMI_PLL";
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
enable-active-high;
gpio = <&pmic 6 GPIO_ACTIVE_HIGH>;
vin-supply = <&vio_reg>;
};
sys_3v3_reg: regulator@101 {
compatible = "regulator-fixed";
reg = <101>;
regulator-name = "3v3";
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
regulator-always-on;
};
charge_pump_5v0_reg: regulator@101 {
avdd_hdmi_3v3_reg: regulator@102 {
compatible = "regulator-fixed";
reg = <101>;
reg = <102>;
regulator-name = "+V3.3_AVDD_HDMI";
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
enable-active-high;
gpio = <&pmic 6 GPIO_ACTIVE_HIGH>;
vin-supply = <&sys_3v3_reg>;
};
charge_pump_5v0_reg: regulator@103 {
compatible = "regulator-fixed";
reg = <103>;
regulator-name = "5v0";
regulator-min-microvolt = <5000000>;
regulator-max-microvolt = <5000000>;
......
......@@ -55,7 +55,7 @@ i2c@7000c000 {
/* M41T0M6 real time clock on carrier board */
rtc@68 {
compatible = "stm,m41t00";
compatible = "st,m41t00";
reg = <0x68>;
};
};
......@@ -84,6 +84,7 @@ spidev0: spi@1 {
};
};
/* SD/MMC */
sdhci@78000200 {
status = "okay";
bus-width = <4>;
......@@ -136,10 +137,10 @@ clk16m: clk@1 {
gpio-keys {
compatible = "gpio-keys";
power {
label = "Power";
wakeup {
label = "SODIMM pin 45 wakeup";
gpios = <&gpio TEGRA_GPIO(V, 1) GPIO_ACTIVE_HIGH>;
linux,code = <KEY_POWER>;
linux,code = <KEY_WAKEUP>;
debounce-interval = <10>;
gpio-key,wakeup;
};
......
......@@ -2,8 +2,8 @@
#include "tegra30.dtsi"
/*
* Toradex Colibri T30 Device Tree
* Compatible for Revisions 1.1B/1.1C/1.1D
* Toradex Colibri T30 Module Device Tree
* Compatible for Revisions V1.1B, V1.1C, V1.1D, V1.1E; IT: V1.1A
*/
/ {
model = "Toradex Colibri T30";
......@@ -15,8 +15,8 @@ memory {
host1x@50000000 {
hdmi@54280000 {
vdd-supply = <&sys_3v3_reg>;
pll-supply = <&vio_reg>;
vdd-supply = <&avdd_hdmi_3v3_reg>;
pll-supply = <&avdd_hdmi_pll_1v8_reg>;
nvidia,hpd-gpio =
<&gpio TEGRA_GPIO(N, 7) GPIO_ACTIVE_HIGH>;
......@@ -66,15 +66,6 @@ lcd_m1_pw1 {
nvidia,enable-input = <TEGRA_PIN_ENABLE>;
};
/* Thermal alert, need to be disabled */
lcd_dc1_pd2 {
nvidia,pins = "lcd_dc1_pd2";
nvidia,function = "rsvd3";
nvidia,pull = <TEGRA_PIN_PULL_NONE>;
nvidia,tristate = <TEGRA_PIN_DISABLE>;
nvidia,enable-input = <TEGRA_PIN_ENABLE>;
};
/* Colibri MMC */
kb_row10_ps2 {
nvidia,pins = "kb_row10_ps2";
......@@ -167,6 +158,40 @@ sdmmc4_dat0_paa0 {
nvidia,pull = <TEGRA_PIN_PULL_UP>;
nvidia,tristate = <TEGRA_PIN_DISABLE>;
};
/* Power I2C (On-module) */
pwr_i2c_scl_pz6 {
nvidia,pins = "pwr_i2c_scl_pz6",
"pwr_i2c_sda_pz7";
nvidia,function = "i2cpwr";
nvidia,pull = <TEGRA_PIN_PULL_NONE>;
nvidia,tristate = <TEGRA_PIN_DISABLE>;
nvidia,enable-input = <TEGRA_PIN_ENABLE>;
nvidia,lock = <TEGRA_PIN_DISABLE>;
nvidia,open-drain = <TEGRA_PIN_ENABLE>;
};
/*
* THERMD_ALERT#, unlatched I2C address pin of LM95245
* temperature sensor therefore requires disabling for
* now
*/
lcd_dc1_pd2 {
nvidia,pins = "lcd_dc1_pd2";
nvidia,function = "rsvd3";
nvidia,pull = <TEGRA_PIN_PULL_NONE>;
nvidia,tristate = <TEGRA_PIN_DISABLE>;
nvidia,enable-input = <TEGRA_PIN_ENABLE>;
};
/* TOUCH_PEN_INT# */
pv0 {
nvidia,pins = "pv0";
nvidia,function = "rsvd1";
nvidia,pull = <TEGRA_PIN_PULL_NONE>;
nvidia,tristate = <TEGRA_PIN_DISABLE>;
nvidia,enable-input = <TEGRA_PIN_ENABLE>;
};
};
};
......@@ -236,7 +261,7 @@ vio_reg: vio {
/*
* EN_+V3.3 switching via FET:
* +V3.3_AUDIO_AVDD_S, +V3.3 and +V1.8_VDD_LAN
* see also v3_3 fixed supply
* see also 3v3 fixed supply
*/
ldo2_reg: ldo2 {
regulator-name = "en_3v3";
......@@ -295,6 +320,46 @@ ldo8_reg: ldo8 {
};
};
/* STMPE811 touch screen controller */
stmpe811@41 {
compatible = "st,stmpe811";
#address-cells = <1>;
#size-cells = <0>;
reg = <0x41>;
interrupts = <TEGRA_GPIO(V, 0) IRQ_TYPE_LEVEL_LOW>;
interrupt-parent = <&gpio>;
interrupt-controller;
id = <0>;
blocks = <0x5>;
irq-trigger = <0x1>;
stmpe_touchscreen {
compatible = "st,stmpe-ts";
reg = <0>;
/* 3.25 MHz ADC clock speed */
st,adc-freq = <1>;
/* 8 sample average control */
st,ave-ctrl = <3>;
/* 7 length fractional part in z */
st,fraction-z = <7>;
/*
* 50 mA typical 80 mA max touchscreen drivers
* current limit value
*/
st,i-drive = <1>;
/* 12-bit ADC */
st,mod-12b = <1>;
/* internal ADC reference */
st,ref-sel = <0>;
/* ADC converstion time: 80 clocks */
st,sample-time = <4>;
/* 1 ms panel driver settling time */
st,settling = <3>;
/* 5 ms touch detect interrupt delay */
st,touch-det-delay = <5>;
};
};
/*
* LM95245 temperature sensor
* Note: OVERT_N directly connected to PMIC PWRDN
......@@ -331,7 +396,8 @@ pmc@7000e400 {
nvidia,sys-clock-req-active-high;
};
emmc: sdhci@78000600 {
/* eMMC */
sdhci@78000600 {
status = "okay";
bus-width = <8>;
non-removable;
......@@ -365,18 +431,40 @@ regulators {
#address-cells = <1>;
#size-cells = <0>;
sys_3v3_reg: regulator@100 {
avdd_hdmi_pll_1v8_reg: regulator@100 {
compatible = "regulator-fixed";
reg = <100>;
regulator-name = "+V1.8_AVDD_HDMI_PLL";
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
enable-active-high;
gpio = <&pmic 6 GPIO_ACTIVE_HIGH>;
vin-supply = <&vio_reg>;
};
sys_3v3_reg: regulator@101 {
compatible = "regulator-fixed";
reg = <101>;
regulator-name = "3v3";
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
regulator-always-on;
};
charge_pump_5v0_reg: regulator@101 {
avdd_hdmi_3v3_reg: regulator@102 {
compatible = "regulator-fixed";
reg = <101>;
reg = <102>;
regulator-name = "+V3.3_AVDD_HDMI";
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
enable-active-high;
gpio = <&pmic 6 GPIO_ACTIVE_HIGH>;
vin-supply = <&sys_3v3_reg>;
};
charge_pump_5v0_reg: regulator@103 {
compatible = "regulator-fixed";
reg = <103>;
regulator-name = "5v0";
regulator-min-microvolt = <5000000>;
regulator-max-microvolt = <5000000>;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment