ARM: tegra: Device tree changes for v4.11-rc1

This contains a set of patches that add hardware compatibility for newer
 revisions of the Toradex Apalis TK1. Also included is a fix to the PAZ00
 that stabilizes panel initialization on boot as well as a patch to add
 card detection for the µSD card slot on TrimSlice.
 
 To round things off there are a couple of fixes and changes to the Nyan
 device tree files to fix the battery charger, add compatibility with new
 revisions of Nyan Blaze and Nyan Big, as well as properly support the
 TPM.
 -----BEGIN PGP SIGNATURE-----
 
 iQJHBAABCAAxFiEEiOrDCAFJzPfAjcif3SOs138+s6EFAliLDnETHHRyZWRpbmdA
 bnZpZGlhLmNvbQAKCRDdI6zXfz6zoQ8VEACrXqha5c4/lbDW1MIzD90McHHAL3U1
 UtyvDp8lyOYXWMhwgraJvfHM0VVyyGsjzxn+DflKFo4LF9iro2nOOSJqeMxVIxhC
 EC7kbJ1jjoc81sYTMy7oPtgMDy3eYnKzsf3Ua7mo7yFR+zQ4S1HovEF4xqOSyGfC
 rPwrwvgl+KuVj4KkEY71DAqMXmuSEBRbgW03IPa1yEJhQ5KCH7gE8ox1HZBtorrl
 ITf8up/YUvA/HzBhZTPjn8D65QJIH2g7ehOAlMvIfM8qshCH+mPfBNR2pVKzFP7B
 r51RRpUlSriZVMXglq6cQ7zyEoGTMph3h33DLnPbYTcDGJz7ETVp/TS8sGG6YNHg
 KsVmmgbS+sQGEKz1/Eq9LRv4xnQm0x2oOTRO96oD+WAs9r8csJlnSbWfQOPRgXgz
 fL/X7SW229eXrejg4faxH2jVX9qWwnWua0TkUFMArmall/iFjqhFfc/0GIdVFpmU
 wXXuKTtHyAHQBwgXUVe3Y3SSIHT5qS9yRMHJyaTt/c25gdgCMDtZVTyNbY05Lcv6
 f3RLdJEEvm0xIPneRpF7FDZIohvlGnTidHgSp8CaJkk1KNett/DiK7N5NN6wjOVF
 EZZm2tPY/nXL3pyspt0ZsZhVsp97p50rkkAKBHu+u+h2K1f39NX3Qm6886a/J/h4
 ijqExw48RGedig==
 =QqnB
 -----END PGP SIGNATURE-----

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

ARM: tegra: Device tree changes for v4.11-rc1

This contains a set of patches that add hardware compatibility for newer
revisions of the Toradex Apalis TK1. Also included is a fix to the PAZ00
that stabilizes panel initialization on boot as well as a patch to add
card detection for the µSD card slot on TrimSlice.

To round things off there are a couple of fixes and changes to the Nyan
device tree files to fix the battery charger, add compatibility with new
revisions of Nyan Blaze and Nyan Big, as well as properly support the
TPM.

* tag 'tegra-for-4.11-arm-dt' of git://git.kernel.org/pub/scm/linux/kernel/git/tegra/linux:
  ARM: tegra: nyan-blaze: Proper pinmux for TPM I2C
  ARM: tegra: nyan-big: Proper pinmux for TPM I2C
  ARM: tegra: nyan-blaze: Include compatible revisions for proper detection
  ARM: tegra: nyan-big: Include compatible revisions for proper detection
  ARM: tegra: nyan: Use external control for bq24735 charger
  ARM: tegra: nyan: Use proper IRQ type definitions
  ARM: dts: tegra: Fix missing card detection in Trimslice µSD card slot
  ARM: tegra: paz00: Mark panel regulator as enabled on boot
  ARM: tegra: apalis-tk1: Update compatibility comment
  ARM: tegra: apalis-tk1: Fix SD card detect on v1.1 HW
  ARM: tegra: apalis-tk1: Adjust pin muxing for v1.1 HW
  ARM: tegra: apalis-tk1: Optional DisplayPort hot-plug detect
  ARM: tegra: apalis-tk1: Pull-up temperature alert

Signed-off-by: Olof Johansson <olof@lixom.net>
This commit is contained in:
Olof Johansson 2017-01-29 20:58:56 -08:00
commit 2dcfbf13f4
7 changed files with 66 additions and 66 deletions

View File

@ -187,14 +187,8 @@ sdhci@700b0000 {
/* Apalis SD1 */
sdhci@700b0400 {
status = "okay";
/*
* Don't use SD1_CD# aka SDMMC3_CLK_LB_OUT for now as it
* features some magic properties even though the external
* loopback is disabled and the internal loopback used as per
* SDMMC_VENDOR_MISC_CNTRL_0 register's SDMMC_SPARE1 bits being
* set to 0xfffd according to the TRM!
* cd-gpios = <&gpio TEGRA_GPIO(EE, 4) GPIO_ACTIVE_LOW>;
*/
/* SD1_CD# */
cd-gpios = <&gpio TEGRA_GPIO(V, 2) GPIO_ACTIVE_LOW>;
bus-width = <4>;
vqmmc-supply = <&vddio_sdmmc3>;
};

View File

@ -44,7 +44,7 @@
/*
* Toradex Apalis TK1 Module Device Tree
* Compatible for Revisions 2GB: V1.0A
* Compatible for Revisions 2GB: V1.0A, V1.0B, V1.1A
*/
/ {
model = "Toradex Apalis TK1";
@ -257,7 +257,7 @@ pex_l1_clkreq_n_pdd6 {
};
dp_hpd_pff0 {
nvidia,pins = "dp_hpd_pff0";
nvidia,function = "rsvd2";
nvidia,function = "dp";
nvidia,pull = <TEGRA_PIN_PULL_NONE>;
nvidia,tristate = <TEGRA_PIN_DISABLE>;
nvidia,enable-input = <TEGRA_PIN_ENABLE>;
@ -416,18 +416,10 @@ clk2_req_pcc5 { /* D4 GPIO */
nvidia,tristate = <TEGRA_PIN_DISABLE>;
nvidia,enable-input = <TEGRA_PIN_ENABLE>;
};
/*
* Don't use MMC1_D6 aka SDMMC3_CLK_LB_IN for now as it
* features some magic properties even though the
* external loopback is disabled and the internal
* loopback used as per SDMMC_VENDOR_MISC_CNTRL_0
* register's SDMMC_SPARE1 bits being set to 0xfffd
* according to the TRM!
*/
sdmmc3_clk_lb_in_pee5 { /* D6 GPIO */
nvidia,pins = "sdmmc3_clk_lb_in_pee5";
nvidia,function = "sdmmc3";
nvidia,pull = <TEGRA_PIN_PULL_UP>;
nvidia,function = "rsvd2";
nvidia,pull = <TEGRA_PIN_PULL_NONE>;
nvidia,tristate = <TEGRA_PIN_DISABLE>;
nvidia,enable-input = <TEGRA_PIN_ENABLE>;
};
@ -522,20 +514,12 @@ sdmmc3_dat0_pb7 {
nvidia,tristate = <TEGRA_PIN_DISABLE>;
nvidia,enable-input = <TEGRA_PIN_ENABLE>;
};
/*
* Don't use SD1_CD# aka SDMMC3_CLK_LB_OUT for now as it
* features some magic properties even though the
* external loopback is disabled and the internal
* loopback used as per SDMMC_VENDOR_MISC_CNTRL_0
* register's SDMMC_SPARE1 bits being set to 0xfffd
* according to the TRM!
*/
sdmmc3_clk_lb_out_pee4 { /* CD# GPIO */
nvidia,pins = "sdmmc3_clk_lb_out_pee4";
nvidia,function = "rsvd2";
nvidia,pull = <TEGRA_PIN_PULL_NONE>;
sdmmc3_cd_n_pv2 { /* CD# GPIO */
nvidia,pins = "sdmmc3_cd_n_pv2";
nvidia,function = "rsvd3";
nvidia,pull = <TEGRA_PIN_PULL_UP>;
nvidia,tristate = <TEGRA_PIN_ENABLE>;
nvidia,enable-input = <TEGRA_PIN_DISABLE>;
nvidia,enable-input = <TEGRA_PIN_ENABLE>;
};
/* Apalis SPDIF */
@ -1153,11 +1137,11 @@ kb_row2_pr2 {
nvidia,enable-input = <TEGRA_PIN_DISABLE>;
};
/* GPIO_PI6 aka TEMP_ALERT_L */
/* GPIO_PI6 aka TMP451 ALERT#/THERM2# */
pi6 {
nvidia,pins = "pi6";
nvidia,function = "rsvd1";
nvidia,pull = <TEGRA_PIN_PULL_NONE>;
nvidia,pull = <TEGRA_PIN_PULL_UP>;
nvidia,tristate = <TEGRA_PIN_ENABLE>;
nvidia,enable-input = <TEGRA_PIN_ENABLE>;
};
@ -1514,13 +1498,6 @@ pv1 { /* NC */
nvidia,tristate = <TEGRA_PIN_ENABLE>;
nvidia,enable-input = <TEGRA_PIN_DISABLE>;
};
sdmmc3_cd_n_pv2 { /* NC */
nvidia,pins = "sdmmc3_cd_n_pv2";
nvidia,function = "rsvd3";
nvidia,pull = <TEGRA_PIN_PULL_DOWN>;
nvidia,tristate = <TEGRA_PIN_ENABLE>;
nvidia,enable-input = <TEGRA_PIN_DISABLE>;
};
gpio_x1_aud_px1 { /* NC */
nvidia,pins = "gpio_x1_aud_px1";
nvidia,function = "rsvd2";
@ -1570,6 +1547,22 @@ dap_mclk1_req_pee2 { /* NC */
nvidia,tristate = <TEGRA_PIN_ENABLE>;
nvidia,enable-input = <TEGRA_PIN_DISABLE>;
};
/*
* Leave SDMMC3_CLK_LB_OUT muxed as SDMMC3 with output
* driver enabled aka not tristated and input driver
* enabled as well as it features some magic properties
* even though the external loopback is disabled and the
* internal loopback used as per
* SDMMC_VENDOR_MISC_CNTRL_0 register's SDMMC_SPARE1
* bits being set to 0xfffd according to the TRM!
*/
sdmmc3_clk_lb_out_pee4 { /* NC */
nvidia,pins = "sdmmc3_clk_lb_out_pee4";
nvidia,function = "sdmmc3";
nvidia,pull = <TEGRA_PIN_PULL_NONE>;
nvidia,tristate = <TEGRA_PIN_DISABLE>;
nvidia,enable-input = <TEGRA_PIN_ENABLE>;
};
};
};

View File

@ -6,7 +6,11 @@
/ {
model = "Acer Chromebook 13 CB5-311";
compatible = "google,nyan-big", "nvidia,tegra124";
compatible = "google,nyan-big-rev7", "google,nyan-big-rev6",
"google,nyan-big-rev5", "google,nyan-big-rev4",
"google,nyan-big-rev3", "google,nyan-big-rev2",
"google,nyan-big-rev1", "google,nyan-big-rev0",
"google,nyan-big", "google,nyan", "nvidia,tegra124";
panel: panel {
compatible = "auo,b133xtn01";
@ -1098,19 +1102,19 @@ pbb0 {
};
cam_i2c_scl_pbb1 {
nvidia,pins = "cam_i2c_scl_pbb1";
nvidia,function = "rsvd3";
nvidia,pull = <TEGRA_PIN_PULL_DOWN>;
nvidia,tristate = <TEGRA_PIN_ENABLE>;
nvidia,enable-input = <TEGRA_PIN_DISABLE>;
nvidia,open-drain = <TEGRA_PIN_DISABLE>;
nvidia,function = "i2c3";
nvidia,pull = <TEGRA_PIN_PULL_NONE>;
nvidia,tristate = <TEGRA_PIN_DISABLE>;
nvidia,enable-input = <TEGRA_PIN_ENABLE>;
nvidia,open-drain = <TEGRA_PIN_ENABLE>;
};
cam_i2c_sda_pbb2 {
nvidia,pins = "cam_i2c_sda_pbb2";
nvidia,function = "rsvd3";
nvidia,pull = <TEGRA_PIN_PULL_DOWN>;
nvidia,tristate = <TEGRA_PIN_ENABLE>;
nvidia,enable-input = <TEGRA_PIN_DISABLE>;
nvidia,open-drain = <TEGRA_PIN_DISABLE>;
nvidia,function = "i2c3";
nvidia,pull = <TEGRA_PIN_PULL_NONE>;
nvidia,tristate = <TEGRA_PIN_DISABLE>;
nvidia,enable-input = <TEGRA_PIN_ENABLE>;
nvidia,open-drain = <TEGRA_PIN_ENABLE>;
};
pbb3 {
nvidia,pins = "pbb3";

View File

@ -6,7 +6,13 @@
/ {
model = "HP Chromebook 14";
compatible = "google,nyan-blaze", "google,nyan", "nvidia,tegra124";
compatible = "google,nyan-blaze-rev10", "google,nyan-blaze-rev9",
"google,nyan-blaze-rev8", "google,nyan-blaze-rev7",
"google,nyan-blaze-rev6", "google,nyan-blaze-rev5",
"google,nyan-blaze-rev4", "google,nyan-blaze-rev3",
"google,nyan-blaze-rev2", "google,nyan-blaze-rev1",
"google,nyan-blaze-rev0", "google,nyan-blaze",
"google,nyan", "nvidia,tegra124";
panel: panel {
compatible = "samsung,ltn140at29-301";
@ -1094,19 +1100,19 @@ pbb0 {
};
cam_i2c_scl_pbb1 {
nvidia,pins = "cam_i2c_scl_pbb1";
nvidia,function = "rsvd3";
nvidia,pull = <TEGRA_PIN_PULL_DOWN>;
nvidia,tristate = <TEGRA_PIN_ENABLE>;
nvidia,enable-input = <TEGRA_PIN_DISABLE>;
nvidia,open-drain = <TEGRA_PIN_DISABLE>;
nvidia,function = "i2c3";
nvidia,pull = <TEGRA_PIN_PULL_NONE>;
nvidia,tristate = <TEGRA_PIN_DISABLE>;
nvidia,enable-input = <TEGRA_PIN_ENABLE>;
nvidia,open-drain = <TEGRA_PIN_ENABLE>;
};
cam_i2c_sda_pbb2 {
nvidia,pins = "cam_i2c_sda_pbb2";
nvidia,function = "rsvd3";
nvidia,pull = <TEGRA_PIN_PULL_DOWN>;
nvidia,tristate = <TEGRA_PIN_ENABLE>;
nvidia,enable-input = <TEGRA_PIN_DISABLE>;
nvidia,open-drain = <TEGRA_PIN_DISABLE>;
nvidia,function = "i2c3";
nvidia,pull = <TEGRA_PIN_PULL_NONE>;
nvidia,tristate = <TEGRA_PIN_DISABLE>;
nvidia,enable-input = <TEGRA_PIN_ENABLE>;
nvidia,open-drain = <TEGRA_PIN_ENABLE>;
};
pbb3 {
nvidia,pins = "pbb3";

View File

@ -65,7 +65,7 @@ acodec: audio-codec@10 {
compatible = "maxim,max98090";
reg = <0x10>;
interrupt-parent = <&gpio>;
interrupts = <TEGRA_GPIO(H, 4) GPIO_ACTIVE_HIGH>;
interrupts = <TEGRA_GPIO(H, 4) IRQ_TYPE_EDGE_FALLING>;
};
temperature-sensor@4c {
@ -331,10 +331,11 @@ charger: bq24735@9 {
reg = <0x9>;
interrupt-parent = <&gpio>;
interrupts = <TEGRA_GPIO(J, 0)
GPIO_ACTIVE_HIGH>;
IRQ_TYPE_EDGE_BOTH>;
ti,ac-detect-gpios = <&gpio
TEGRA_GPIO(J, 0)
GPIO_ACTIVE_HIGH>;
ti,external-control;
};
battery: sbs-battery@b {

View File

@ -569,6 +569,7 @@ vdd_pnl_reg: regulator@1 {
regulator-name = "+3VS,vdd_pnl";
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
regulator-boot-on;
gpio = <&gpio TEGRA_GPIO(A, 4) GPIO_ACTIVE_HIGH>;
enable-active-high;
};

View File

@ -366,6 +366,7 @@ usb-phy@c5008000 {
sdhci@c8000000 {
status = "okay";
broken-cd;
bus-width = <4>;
};