* [PATCH v2 00/34] ARM: dts: tegra: apalis_t30: major revamp incl. v1.1 hardware support
@ 2018-08-31 16:37 Marcel Ziswiler
2018-08-31 16:37 ` [PATCH v2 01/34] ARM: tegra: apalis_t30: fix mmc1 cmd pull-up Marcel Ziswiler
` (34 more replies)
0 siblings, 35 replies; 41+ messages in thread
From: Marcel Ziswiler @ 2018-08-31 16:37 UTC (permalink / raw)
To: devicetree, linux-tegra, linux-kernel
Cc: Marcel Ziswiler, Thierry Reding, Alexandre Belloni,
Mikko Perttunen, Jonathan Hunter, David Lechner, Thierry Reding,
Rob Herring, Johan Hovold, Marcel Ziswiler, Mark Rutland,
Andreas Färber
This series is a major overhaul and adds support for the V1.1 hardware
revision of the Toradex Apalis T30 system on module.
Changes in v2:
- Clean-up PCIe controller/port status' as well.
- Also move serial UART "nvidia,tegra30-hsuart" compatible to module
level device trees.
- Also add two missing newlines.
- Also replace underscores in node names with dashes.
- Explicitly disable input of BKL1_ON as well.
- Replace underscores in node names with dashes.
- When running some more tests I realized that the reg-addr should
really be 0x3f. Fix this.
- Get rid of fake clocks simple bus as suggested by Rob.
- Replace "[PATCH 27/28] ARM: tegra: apalis_t30: fix pcie switch vendor
compatible" with "[PATCH v2 26/34] dt-bindings: add broadcom (formerly
plx technology) vendor prefix" as suggested by Stefan.
- New patch as suggested by Rob.
- New patch.
- Drop "[PATCH 01/28] ARM: tegra: apalis_t30: enable broken-hpi on emmc"
which should already be handled by the broken-hpi quirk as pointed out
by Dmitry. If I would find more eMMC parts which exhibit the issue I
will add them to the quirk as a separate patch.
- Updated V1.1 device trees with all applicable previous fixes.
Marcel Ziswiler (34):
ARM: tegra: apalis_t30: fix mmc1 cmd pull-up
ARM: tegra: apalis_t30: pull-up sd card detect pins
ARM: tegra: apalis_t30: add local-mac-address property
ARM: tegra: apalis_t30: reorder pcie properties
ARM: tegra: apalis_t30: annotate/clean-up pcie controller/port nodes
ARM: tegra: apalis_t30: reorder host1x/hdmi properties
ARM: tegra: apalis_t30: regulator clean-up
ARM: tegra: apalis_t30: add missing regulators
ARM: tegra: apalis_t30: annotate uarts and move compatible to board
ARM: tegra: apalis_t30: drop unused cami2c label
ARM: tegra: apalis_t30: white-space/newline clean-up
ARM: tegra: apalis_t30: drop unused mmc1/sd1 labels
ARM: tegra: apalis_t30: annotate mmc1/sd1
ARM: tegra: apalis_t30: move dr_mode property from phy to controller
ARM: tegra: apalis_t30: reorder backlight properties
ARM: tegra: apalis_t30: drop pwmleds
ARM: tegra: apalis_t30: pinmux clean-up
ARM: tegra: apalis_t30: add missing pinmux
ARM: tegra: apalis_t30: use proper irq-gpio for stmpe811
ARM: tegra: apalis_t30: further lm95245 temperature sensor annotation
ARM: tegra: apalis_t30: add i2c-thermtrip
ARM: tegra: apalis_t30: add proper emmc vmmc and vqmmc supplies
ARM: tegra: apalis_t30: enable emmc ddr52 mode
ARM: tegra: apalis_t30: get rid of fake clocks simple bus
ARM: tegra: apalis_t30: line break long compatible property line
dt-bindings: add broadcom (formerly plx technology) vendor prefix
ARM: tegra: apalis_t30: drop module level model and compatible
ARM: tegra: apalis_t30: drop obsolete spidev nodes
ARM: tegra: apalis_t30: hog group for pcie switch reset gpio
ARM: tegra: apalis_t30: rename hdmiddc to hdmi_ddc
ARM: tegra: apalis_t30: rename tps65911@2d, stmpe811@41 and
tps62362@60
ARM: tegra: apalis_t30: fix mcp2515 can controller interrupt polarity
ARM: tegra: apalis_t30: move hda node from carrier to module
ARM: tegra: apalis_t30: support v1.1 hardware revision
Documentation/devicetree/bindings/arm/tegra.txt | 2 +
.../devicetree/bindings/vendor-prefixes.txt | 1 +
arch/arm/boot/dts/Makefile | 1 +
arch/arm/boot/dts/tegra30-apalis-eval.dts | 148 +--
arch/arm/boot/dts/tegra30-apalis-v1.1-eval.dts | 266 +++++
arch/arm/boot/dts/tegra30-apalis-v1.1.dtsi | 1189 ++++++++++++++++++++
arch/arm/boot/dts/tegra30-apalis.dtsi | 705 +++++++++---
7 files changed, 2064 insertions(+), 248 deletions(-)
create mode 100644 arch/arm/boot/dts/tegra30-apalis-v1.1-eval.dts
create mode 100644 arch/arm/boot/dts/tegra30-apalis-v1.1.dtsi
--
2.14.4
^ permalink raw reply [flat|nested] 41+ messages in thread
* [PATCH v2 01/34] ARM: tegra: apalis_t30: fix mmc1 cmd pull-up
2018-08-31 16:37 [PATCH v2 00/34] ARM: dts: tegra: apalis_t30: major revamp incl. v1.1 hardware support Marcel Ziswiler
@ 2018-08-31 16:37 ` Marcel Ziswiler
2018-08-31 16:37 ` [PATCH v2 02/34] ARM: tegra: apalis_t30: pull-up sd card detect pins Marcel Ziswiler
` (33 subsequent siblings)
34 siblings, 0 replies; 41+ messages in thread
From: Marcel Ziswiler @ 2018-08-31 16:37 UTC (permalink / raw)
To: devicetree, linux-tegra, linux-kernel
Cc: Marcel Ziswiler, Thierry Reding, Jonathan Hunter, Rob Herring,
Mark Rutland
From: Marcel Ziswiler <marcel.ziswiler@toradex.com>
Fix MMC1 cmd pin pull-up causing issues on carrier boards without
external pull-up.
Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
---
Changes in v2: None
arch/arm/boot/dts/tegra30-apalis.dtsi | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/arch/arm/boot/dts/tegra30-apalis.dtsi b/arch/arm/boot/dts/tegra30-apalis.dtsi
index 2f807d40c1b7..e749e047db7a 100644
--- a/arch/arm/boot/dts/tegra30-apalis.dtsi
+++ b/arch/arm/boot/dts/tegra30-apalis.dtsi
@@ -171,14 +171,14 @@
/* Apalis MMC1 */
sdmmc3_clk_pa6 {
- nvidia,pins = "sdmmc3_clk_pa6",
- "sdmmc3_cmd_pa7";
+ nvidia,pins = "sdmmc3_clk_pa6";
nvidia,function = "sdmmc3";
nvidia,pull = <TEGRA_PIN_PULL_NONE>;
nvidia,tristate = <TEGRA_PIN_DISABLE>;
};
sdmmc3_dat0_pb7 {
- nvidia,pins = "sdmmc3_dat0_pb7",
+ nvidia,pins = "sdmmc3_cmd_pa7",
+ "sdmmc3_dat0_pb7",
"sdmmc3_dat1_pb6",
"sdmmc3_dat2_pb5",
"sdmmc3_dat3_pb4",
--
2.14.4
^ permalink raw reply related [flat|nested] 41+ messages in thread
* [PATCH v2 02/34] ARM: tegra: apalis_t30: pull-up sd card detect pins
2018-08-31 16:37 [PATCH v2 00/34] ARM: dts: tegra: apalis_t30: major revamp incl. v1.1 hardware support Marcel Ziswiler
2018-08-31 16:37 ` [PATCH v2 01/34] ARM: tegra: apalis_t30: fix mmc1 cmd pull-up Marcel Ziswiler
@ 2018-08-31 16:37 ` Marcel Ziswiler
2018-08-31 16:37 ` [PATCH v2 03/34] ARM: tegra: apalis_t30: add local-mac-address property Marcel Ziswiler
` (32 subsequent siblings)
34 siblings, 0 replies; 41+ messages in thread
From: Marcel Ziswiler @ 2018-08-31 16:37 UTC (permalink / raw)
To: devicetree, linux-tegra, linux-kernel
Cc: Marcel Ziswiler, Thierry Reding, Jonathan Hunter, Rob Herring,
Mark Rutland
From: Marcel Ziswiler <marcel.ziswiler@toradex.com>
In order to avoid any floating SD card detect pins as may e.g. happen on
Ixora V1.1A pull them all up.
Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
---
Changes in v2: None
arch/arm/boot/dts/tegra30-apalis.dtsi | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/arch/arm/boot/dts/tegra30-apalis.dtsi b/arch/arm/boot/dts/tegra30-apalis.dtsi
index e749e047db7a..69bb11c31d77 100644
--- a/arch/arm/boot/dts/tegra30-apalis.dtsi
+++ b/arch/arm/boot/dts/tegra30-apalis.dtsi
@@ -194,7 +194,7 @@
pv3 {
nvidia,pins = "pv3";
nvidia,function = "rsvd2";
- nvidia,pull = <TEGRA_PIN_PULL_NONE>;
+ nvidia,pull = <TEGRA_PIN_PULL_UP>;
nvidia,tristate = <TEGRA_PIN_DISABLE>;
nvidia,enable-input = <TEGRA_PIN_ENABLE>;
};
@@ -260,7 +260,7 @@
clk2_req_pcc5 {
nvidia,pins = "clk2_req_pcc5";
nvidia,function = "rsvd2";
- nvidia,pull = <TEGRA_PIN_PULL_NONE>;
+ nvidia,pull = <TEGRA_PIN_PULL_UP>;
nvidia,tristate = <TEGRA_PIN_DISABLE>;
nvidia,enable-input = <TEGRA_PIN_ENABLE>;
};
--
2.14.4
^ permalink raw reply related [flat|nested] 41+ messages in thread
* [PATCH v2 03/34] ARM: tegra: apalis_t30: add local-mac-address property
2018-08-31 16:37 [PATCH v2 00/34] ARM: dts: tegra: apalis_t30: major revamp incl. v1.1 hardware support Marcel Ziswiler
2018-08-31 16:37 ` [PATCH v2 01/34] ARM: tegra: apalis_t30: fix mmc1 cmd pull-up Marcel Ziswiler
2018-08-31 16:37 ` [PATCH v2 02/34] ARM: tegra: apalis_t30: pull-up sd card detect pins Marcel Ziswiler
@ 2018-08-31 16:37 ` Marcel Ziswiler
2018-08-31 16:37 ` [PATCH v2 04/34] ARM: tegra: apalis_t30: reorder pcie properties Marcel Ziswiler
` (31 subsequent siblings)
34 siblings, 0 replies; 41+ messages in thread
From: Marcel Ziswiler @ 2018-08-31 16:37 UTC (permalink / raw)
To: devicetree, linux-tegra, linux-kernel
Cc: Marcel Ziswiler, Thierry Reding, Jonathan Hunter, Rob Herring,
Mark Rutland
From: Marcel Ziswiler <marcel.ziswiler@toradex.com>
Add empty local-mac-address property to be filled in by boot loader
(e.g. U-Boot).
Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
---
Changes in v2: None
arch/arm/boot/dts/tegra30-apalis.dtsi | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/arch/arm/boot/dts/tegra30-apalis.dtsi b/arch/arm/boot/dts/tegra30-apalis.dtsi
index 69bb11c31d77..f13df31b5e25 100644
--- a/arch/arm/boot/dts/tegra30-apalis.dtsi
+++ b/arch/arm/boot/dts/tegra30-apalis.dtsi
@@ -34,6 +34,10 @@
pci@3,0 {
nvidia,num-lanes = <1>;
+ pcie@0 {
+ reg = <0 0 0 0 0>;
+ local-mac-address = [00 00 00 00 00 00];
+ };
};
};
--
2.14.4
^ permalink raw reply related [flat|nested] 41+ messages in thread
* [PATCH v2 04/34] ARM: tegra: apalis_t30: reorder pcie properties
2018-08-31 16:37 [PATCH v2 00/34] ARM: dts: tegra: apalis_t30: major revamp incl. v1.1 hardware support Marcel Ziswiler
` (2 preceding siblings ...)
2018-08-31 16:37 ` [PATCH v2 03/34] ARM: tegra: apalis_t30: add local-mac-address property Marcel Ziswiler
@ 2018-08-31 16:37 ` Marcel Ziswiler
2018-08-31 16:37 ` [PATCH v2 05/34] ARM: tegra: apalis_t30: annotate/clean-up pcie controller/port nodes Marcel Ziswiler
` (30 subsequent siblings)
34 siblings, 0 replies; 41+ messages in thread
From: Marcel Ziswiler @ 2018-08-31 16:37 UTC (permalink / raw)
To: devicetree, linux-tegra, linux-kernel
Cc: Marcel Ziswiler, Thierry Reding, Jonathan Hunter, Rob Herring,
Mark Rutland
From: Marcel Ziswiler <marcel.ziswiler@toradex.com>
Reorder PCIe properties.
Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
---
Changes in v2: None
arch/arm/boot/dts/tegra30-apalis.dtsi | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/arch/arm/boot/dts/tegra30-apalis.dtsi b/arch/arm/boot/dts/tegra30-apalis.dtsi
index f13df31b5e25..fc279a073ac5 100644
--- a/arch/arm/boot/dts/tegra30-apalis.dtsi
+++ b/arch/arm/boot/dts/tegra30-apalis.dtsi
@@ -16,13 +16,13 @@
pcie@3000 {
avdd-pexa-supply = <&vdd2_reg>;
- vdd-pexa-supply = <&vdd2_reg>;
avdd-pexb-supply = <&vdd2_reg>;
- vdd-pexb-supply = <&vdd2_reg>;
avdd-pex-pll-supply = <&vdd2_reg>;
avdd-plle-supply = <&ldo6_reg>;
- vddio-pex-ctl-supply = <&sys_3v3_reg>;
hvdd-pex-supply = <&sys_3v3_reg>;
+ vddio-pex-ctl-supply = <&sys_3v3_reg>;
+ vdd-pexa-supply = <&vdd2_reg>;
+ vdd-pexb-supply = <&vdd2_reg>;
pci@1,0 {
nvidia,num-lanes = <4>;
--
2.14.4
^ permalink raw reply related [flat|nested] 41+ messages in thread
* [PATCH v2 05/34] ARM: tegra: apalis_t30: annotate/clean-up pcie controller/port nodes
2018-08-31 16:37 [PATCH v2 00/34] ARM: dts: tegra: apalis_t30: major revamp incl. v1.1 hardware support Marcel Ziswiler
` (3 preceding siblings ...)
2018-08-31 16:37 ` [PATCH v2 04/34] ARM: tegra: apalis_t30: reorder pcie properties Marcel Ziswiler
@ 2018-08-31 16:37 ` Marcel Ziswiler
2018-08-31 16:37 ` [PATCH v2 06/34] ARM: tegra: apalis_t30: reorder host1x/hdmi properties Marcel Ziswiler
` (29 subsequent siblings)
34 siblings, 0 replies; 41+ messages in thread
From: Marcel Ziswiler @ 2018-08-31 16:37 UTC (permalink / raw)
To: devicetree, linux-tegra, linux-kernel
Cc: Marcel Ziswiler, Thierry Reding, Jonathan Hunter, Rob Herring,
Mark Rutland
From: Marcel Ziswiler <marcel.ziswiler@toradex.com>
Annotate PCIe port nodes and clean-up PCIe controller/port status' with
respect to carrier board vs. module level device trees. As port 3
connects to the on-module Gigabit Ethernet MACPHY it is always enabled
together with the PCIe controller itself.
Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
---
Changes in v2:
- Clean-up PCIe controller/port status' as well.
arch/arm/boot/dts/tegra30-apalis-eval.dts | 6 ------
arch/arm/boot/dts/tegra30-apalis.dtsi | 5 +++++
2 files changed, 5 insertions(+), 6 deletions(-)
diff --git a/arch/arm/boot/dts/tegra30-apalis-eval.dts b/arch/arm/boot/dts/tegra30-apalis-eval.dts
index 0dc85a20bd45..e3c70e7d8d37 100644
--- a/arch/arm/boot/dts/tegra30-apalis-eval.dts
+++ b/arch/arm/boot/dts/tegra30-apalis-eval.dts
@@ -23,8 +23,6 @@
};
pcie@3000 {
- status = "okay";
-
pci@1,0 {
status = "okay";
};
@@ -32,10 +30,6 @@
pci@2,0 {
status = "okay";
};
-
- pci@3,0 {
- status = "okay";
- };
};
host1x@50000000 {
diff --git a/arch/arm/boot/dts/tegra30-apalis.dtsi b/arch/arm/boot/dts/tegra30-apalis.dtsi
index fc279a073ac5..c810c044025a 100644
--- a/arch/arm/boot/dts/tegra30-apalis.dtsi
+++ b/arch/arm/boot/dts/tegra30-apalis.dtsi
@@ -15,6 +15,7 @@
};
pcie@3000 {
+ status = "okay";
avdd-pexa-supply = <&vdd2_reg>;
avdd-pexb-supply = <&vdd2_reg>;
avdd-pex-pll-supply = <&vdd2_reg>;
@@ -24,15 +25,19 @@
vdd-pexa-supply = <&vdd2_reg>;
vdd-pexb-supply = <&vdd2_reg>;
+ /* Apalis type specific */
pci@1,0 {
nvidia,num-lanes = <4>;
};
+ /* Apalis PCIe */
pci@2,0 {
nvidia,num-lanes = <1>;
};
+ /* I210/I211 Gigabit Ethernet Controller (on-module) */
pci@3,0 {
+ status = "okay";
nvidia,num-lanes = <1>;
pcie@0 {
reg = <0 0 0 0 0>;
--
2.14.4
^ permalink raw reply related [flat|nested] 41+ messages in thread
* [PATCH v2 06/34] ARM: tegra: apalis_t30: reorder host1x/hdmi properties
2018-08-31 16:37 [PATCH v2 00/34] ARM: dts: tegra: apalis_t30: major revamp incl. v1.1 hardware support Marcel Ziswiler
` (4 preceding siblings ...)
2018-08-31 16:37 ` [PATCH v2 05/34] ARM: tegra: apalis_t30: annotate/clean-up pcie controller/port nodes Marcel Ziswiler
@ 2018-08-31 16:37 ` Marcel Ziswiler
2018-08-31 16:37 ` [PATCH v2 07/34] ARM: tegra: apalis_t30: regulator clean-up Marcel Ziswiler
` (28 subsequent siblings)
34 siblings, 0 replies; 41+ messages in thread
From: Marcel Ziswiler @ 2018-08-31 16:37 UTC (permalink / raw)
To: devicetree, linux-tegra, linux-kernel
Cc: Marcel Ziswiler, Thierry Reding, Jonathan Hunter, Rob Herring,
Mark Rutland
From: Marcel Ziswiler <marcel.ziswiler@toradex.com>
Reorder Host1x/HDMI properties.
Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
---
Changes in v2: None
arch/arm/boot/dts/tegra30-apalis.dtsi | 7 +++----
1 file changed, 3 insertions(+), 4 deletions(-)
diff --git a/arch/arm/boot/dts/tegra30-apalis.dtsi b/arch/arm/boot/dts/tegra30-apalis.dtsi
index c810c044025a..648db524abae 100644
--- a/arch/arm/boot/dts/tegra30-apalis.dtsi
+++ b/arch/arm/boot/dts/tegra30-apalis.dtsi
@@ -48,12 +48,11 @@
host1x@50000000 {
hdmi@54280000 {
- vdd-supply = <&avdd_hdmi_3v3_reg>;
- pll-supply = <&avdd_hdmi_pll_1v8_reg>;
-
+ nvidia,ddc-i2c-bus = <&hdmiddc>;
nvidia,hpd-gpio =
<&gpio TEGRA_GPIO(N, 7) GPIO_ACTIVE_HIGH>;
- nvidia,ddc-i2c-bus = <&hdmiddc>;
+ pll-supply = <&avdd_hdmi_pll_1v8_reg>;
+ vdd-supply = <&avdd_hdmi_3v3_reg>;
};
};
--
2.14.4
^ permalink raw reply related [flat|nested] 41+ messages in thread
* [PATCH v2 07/34] ARM: tegra: apalis_t30: regulator clean-up
2018-08-31 16:37 [PATCH v2 00/34] ARM: dts: tegra: apalis_t30: major revamp incl. v1.1 hardware support Marcel Ziswiler
` (5 preceding siblings ...)
2018-08-31 16:37 ` [PATCH v2 06/34] ARM: tegra: apalis_t30: reorder host1x/hdmi properties Marcel Ziswiler
@ 2018-08-31 16:37 ` Marcel Ziswiler
2018-08-31 16:37 ` [PATCH v2 08/34] ARM: tegra: apalis_t30: add missing regulators Marcel Ziswiler
` (27 subsequent siblings)
34 siblings, 0 replies; 41+ messages in thread
From: Marcel Ziswiler @ 2018-08-31 16:37 UTC (permalink / raw)
To: devicetree, linux-tegra, linux-kernel
Cc: Marcel Ziswiler, Thierry Reding, Jonathan Hunter, Rob Herring,
Mark Rutland
From: Marcel Ziswiler <marcel.ziswiler@toradex.com>
Just cosmetic regulator clean-up.
Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
---
Changes in v2: None
arch/arm/boot/dts/tegra30-apalis-eval.dts | 62 ++++++-------
arch/arm/boot/dts/tegra30-apalis.dtsi | 140 +++++++++++++-----------------
2 files changed, 88 insertions(+), 114 deletions(-)
diff --git a/arch/arm/boot/dts/tegra30-apalis-eval.dts b/arch/arm/boot/dts/tegra30-apalis-eval.dts
index e3c70e7d8d37..07da481bc441 100644
--- a/arch/arm/boot/dts/tegra30-apalis-eval.dts
+++ b/arch/arm/boot/dts/tegra30-apalis-eval.dts
@@ -153,7 +153,7 @@
usb-phy@7d000000 {
status = "okay";
dr_mode = "otg";
- vbus-supply = <&usbo1_vbus_reg>;
+ vbus-supply = <®_usbo1_vbus>;
};
/* EHCI instance 1: USB2_DP/N -> USBH2_DP/N */
@@ -163,7 +163,7 @@
usb-phy@7d004000 {
status = "okay";
- vbus-supply = <&usbh_vbus_reg>;
+ vbus-supply = <®_usbh_vbus>;
};
/* EHCI instance 2: USB3_DP/N -> USBH3_DP/N */
@@ -173,7 +173,7 @@
usb-phy@7d008000 {
status = "okay";
- vbus-supply = <&usbh_vbus_reg>;
+ vbus-supply = <®_usbh_vbus>;
};
backlight: backlight {
@@ -231,38 +231,32 @@
};
};
- regulators {
- sys_5v0_reg: regulator@1 {
- compatible = "regulator-fixed";
- reg = <1>;
- regulator-name = "5v0";
- regulator-min-microvolt = <5000000>;
- regulator-max-microvolt = <5000000>;
- regulator-always-on;
- };
+ reg_5v0: regulator-5v0 {
+ compatible = "regulator-fixed";
+ regulator-name = "5V_SW";
+ regulator-min-microvolt = <5000000>;
+ regulator-max-microvolt = <5000000>;
+ };
- /* USBO1_EN */
- usbo1_vbus_reg: regulator@2 {
- compatible = "regulator-fixed";
- reg = <2>;
- regulator-name = "usbo1_vbus";
- regulator-min-microvolt = <5000000>;
- regulator-max-microvolt = <5000000>;
- gpio = <&gpio TEGRA_GPIO(T, 5) GPIO_ACTIVE_HIGH>;
- enable-active-high;
- vin-supply = <&sys_5v0_reg>;
- };
+ /* USBO1_EN */
+ reg_usbo1_vbus: regulator-usbo1-vbus {
+ compatible = "regulator-fixed";
+ regulator-name = "VCC_USBO1";
+ regulator-min-microvolt = <5000000>;
+ regulator-max-microvolt = <5000000>;
+ gpio = <&gpio TEGRA_GPIO(T, 5) GPIO_ACTIVE_HIGH>;
+ enable-active-high;
+ vin-supply = <®_5v0>;
+ };
- /* USBH_EN */
- usbh_vbus_reg: regulator@3 {
- compatible = "regulator-fixed";
- reg = <3>;
- regulator-name = "usbh_vbus";
- regulator-min-microvolt = <5000000>;
- regulator-max-microvolt = <5000000>;
- gpio = <&gpio TEGRA_GPIO(DD, 1) GPIO_ACTIVE_HIGH>;
- enable-active-high;
- vin-supply = <&sys_5v0_reg>;
- };
+ /* USBH_EN */
+ reg_usbh_vbus: regulator-usbh-vbus {
+ compatible = "regulator-fixed";
+ regulator-name = "VCC_USBH(2A|2C|2D|3|4)";
+ regulator-min-microvolt = <5000000>;
+ regulator-max-microvolt = <5000000>;
+ gpio = <&gpio TEGRA_GPIO(DD, 1) GPIO_ACTIVE_HIGH>;
+ enable-active-high;
+ vin-supply = <®_5v0>;
};
};
diff --git a/arch/arm/boot/dts/tegra30-apalis.dtsi b/arch/arm/boot/dts/tegra30-apalis.dtsi
index 648db524abae..214a23722ab4 100644
--- a/arch/arm/boot/dts/tegra30-apalis.dtsi
+++ b/arch/arm/boot/dts/tegra30-apalis.dtsi
@@ -20,8 +20,8 @@
avdd-pexb-supply = <&vdd2_reg>;
avdd-pex-pll-supply = <&vdd2_reg>;
avdd-plle-supply = <&ldo6_reg>;
- hvdd-pex-supply = <&sys_3v3_reg>;
- vddio-pex-ctl-supply = <&sys_3v3_reg>;
+ hvdd-pex-supply = <®_module_3v3>;
+ vddio-pex-ctl-supply = <®_module_3v3>;
vdd-pexa-supply = <&vdd2_reg>;
vdd-pexb-supply = <&vdd2_reg>;
@@ -51,8 +51,8 @@
nvidia,ddc-i2c-bus = <&hdmiddc>;
nvidia,hpd-gpio =
<&gpio TEGRA_GPIO(N, 7) GPIO_ACTIVE_HIGH>;
- pll-supply = <&avdd_hdmi_pll_1v8_reg>;
- vdd-supply = <&avdd_hdmi_3v3_reg>;
+ pll-supply = <®_1v8_avdd_hdmi_pll>;
+ vdd-supply = <®_3v3_avdd_hdmi>;
};
};
@@ -465,8 +465,8 @@
sgtl5000: codec@a {
compatible = "fsl,sgtl5000";
reg = <0x0a>;
- VDDA-supply = <&sys_3v3_reg>;
- VDDIO-supply = <&sys_3v3_reg>;
+ VDDA-supply = <®_module_3v3>;
+ VDDIO-supply = <®_module_3v3>;
clocks = <&tegra_car TEGRA30_CLK_EXTERN1>;
};
@@ -483,43 +483,38 @@
#gpio-cells = <2>;
gpio-controller;
- vcc1-supply = <&sys_3v3_reg>;
- vcc2-supply = <&sys_3v3_reg>;
- vcc3-supply = <&vio_reg>;
- vcc4-supply = <&sys_3v3_reg>;
- vcc5-supply = <&sys_3v3_reg>;
- vcc6-supply = <&vio_reg>;
- vcc7-supply = <&charge_pump_5v0_reg>;
- vccio-supply = <&sys_3v3_reg>;
+ vcc1-supply = <®_module_3v3>;
+ vcc2-supply = <®_module_3v3>;
+ vcc3-supply = <®_1v8_vio>;
+ vcc4-supply = <®_module_3v3>;
+ vcc5-supply = <®_module_3v3>;
+ vcc6-supply = <®_1v8_vio>;
+ vcc7-supply = <®_5v0_charge_pump>;
+ vccio-supply = <®_module_3v3>;
regulators {
- /* SW1: +V1.35_VDDIO_DDR */
vdd1_reg: vdd1 {
- regulator-name = "vddio_ddr_1v35";
+ regulator-name = "+V1.35_VDDIO_DDR";
regulator-min-microvolt = <1350000>;
regulator-max-microvolt = <1350000>;
regulator-always-on;
};
- /* SW2: +V1.05 */
vdd2_reg: vdd2 {
- regulator-name =
- "vdd_pexa,vdd_pexb,vdd_sata";
+ regulator-name = "+V1.05";
regulator-min-microvolt = <1050000>;
regulator-max-microvolt = <1050000>;
};
- /* SW CTRL: +V1.0_VDD_CPU */
vddctrl_reg: vddctrl {
- regulator-name = "vdd_cpu,vdd_sys";
+ regulator-name = "+V1.0_VDD_CPU";
regulator-min-microvolt = <1150000>;
regulator-max-microvolt = <1150000>;
regulator-always-on;
};
- /* SWIO: +V1.8 */
- vio_reg: vio {
- regulator-name = "vdd_1v8_gen";
+ reg_1v8_vio: vio {
+ regulator-name = "+V1.8";
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
regulator-always-on;
@@ -529,27 +524,24 @@
/*
* EN_+V3.3 switching via FET:
- * +V3.3_AUDIO_AVDD_S, +V3.3 and +V1.8_VDD_LAN
- * see also v3_3 fixed supply
+ * +V3.3_AUDIO_AVDD_S, +V3.3
+ * see also +V3.3 fixed supply
*/
ldo2_reg: ldo2 {
- regulator-name = "en_3v3";
+ regulator-name = "EN_+V3.3";
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
regulator-always-on;
};
- /* +V1.2_CSI */
ldo3_reg: ldo3 {
- regulator-name =
- "avdd_dsi_csi,pwrdet_mipi";
+ regulator-name = "+V1.2_CSI";
regulator-min-microvolt = <1200000>;
regulator-max-microvolt = <1200000>;
};
- /* +V1.2_VDD_RTC */
ldo4_reg: ldo4 {
- regulator-name = "vdd_rtc";
+ regulator-name = "+V1.2_VDD_RTC";
regulator-min-microvolt = <1200000>;
regulator-max-microvolt = <1200000>;
regulator-always-on;
@@ -557,10 +549,10 @@
/*
* +V2.8_AVDD_VDAC:
- * only required for analog RGB
+ * only required for (unsupported) analog RGB
*/
ldo5_reg: ldo5 {
- regulator-name = "avdd_vdac";
+ regulator-name = "+V2.8_AVDD_VDAC";
regulator-min-microvolt = <2800000>;
regulator-max-microvolt = <2800000>;
regulator-always-on;
@@ -572,22 +564,20 @@
* granularity
*/
ldo6_reg: ldo6 {
- regulator-name = "avdd_plle";
+ regulator-name = "+V1.05_AVDD_PLLE";
regulator-min-microvolt = <1100000>;
regulator-max-microvolt = <1100000>;
};
- /* +V1.2_AVDD_PLL */
ldo7_reg: ldo7 {
- regulator-name = "avdd_pll";
+ regulator-name = "+V1.2_AVDD_PLL";
regulator-min-microvolt = <1200000>;
regulator-max-microvolt = <1200000>;
regulator-always-on;
};
- /* +V1.0_VDD_DDR_HS */
ldo8_reg: ldo8 {
- regulator-name = "vdd_ddr_hs";
+ regulator-name = "+V1.0_VDD_DDR_HS";
regulator-min-microvolt = <1000000>;
regulator-max-microvolt = <1000000>;
regulator-always-on;
@@ -732,50 +722,40 @@
};
};
- regulators {
- compatible = "simple-bus";
- #address-cells = <1>;
- #size-cells = <0>;
-
- 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>;
- };
+ reg_1v8_avdd_hdmi_pll: regulator-1v8-avdd-hdmi-pll {
+ compatible = "regulator-fixed";
+ 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 = <®_1v8_vio>;
+ };
- sys_3v3_reg: regulator@101 {
- compatible = "regulator-fixed";
- reg = <101>;
- regulator-name = "3v3";
- regulator-min-microvolt = <3300000>;
- regulator-max-microvolt = <3300000>;
- regulator-always-on;
- };
+ reg_3v3_avdd_hdmi: regulator-3v3-avdd-hdmi {
+ compatible = "regulator-fixed";
+ 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 = <®_module_3v3>;
+ };
- avdd_hdmi_3v3_reg: regulator@102 {
- compatible = "regulator-fixed";
- 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>;
- };
+ reg_5v0_charge_pump: regulator-5v0-charge-pump {
+ compatible = "regulator-fixed";
+ regulator-name = "+V5.0";
+ regulator-min-microvolt = <5000000>;
+ regulator-max-microvolt = <5000000>;
+ regulator-always-on;
+ };
- charge_pump_5v0_reg: regulator@103 {
- compatible = "regulator-fixed";
- reg = <103>;
- regulator-name = "5v0";
- regulator-min-microvolt = <5000000>;
- regulator-max-microvolt = <5000000>;
- regulator-always-on;
- };
+ reg_module_3v3: regulator-module-3v3 {
+ compatible = "regulator-fixed";
+ regulator-name = "+V3.3";
+ regulator-min-microvolt = <3300000>;
+ regulator-max-microvolt = <3300000>;
+ regulator-always-on;
};
sound {
--
2.14.4
^ permalink raw reply related [flat|nested] 41+ messages in thread
* [PATCH v2 08/34] ARM: tegra: apalis_t30: add missing regulators
2018-08-31 16:37 [PATCH v2 00/34] ARM: dts: tegra: apalis_t30: major revamp incl. v1.1 hardware support Marcel Ziswiler
` (6 preceding siblings ...)
2018-08-31 16:37 ` [PATCH v2 07/34] ARM: tegra: apalis_t30: regulator clean-up Marcel Ziswiler
@ 2018-08-31 16:37 ` Marcel Ziswiler
2018-08-31 16:37 ` [PATCH v2 09/34] ARM: tegra: apalis_t30: annotate uarts and move compatible to board Marcel Ziswiler
` (26 subsequent siblings)
34 siblings, 0 replies; 41+ messages in thread
From: Marcel Ziswiler @ 2018-08-31 16:37 UTC (permalink / raw)
To: devicetree, linux-tegra, linux-kernel
Cc: Marcel Ziswiler, Thierry Reding, Jonathan Hunter, Rob Herring,
Mark Rutland
From: Marcel Ziswiler <marcel.ziswiler@toradex.com>
Add missing regulators:
- reg_module_3v3_audio being VDDA supply of SGTL5000
- VDDD supply of SGTL5000 actually being reg_1v8_vio
- carrier board HDMI supply being reg_5v0
- carrier board reg_3v3 actually being backlight and panel power supply
Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
---
Changes in v2: None
arch/arm/boot/dts/tegra30-apalis-eval.dts | 10 ++++++++++
arch/arm/boot/dts/tegra30-apalis.dtsi | 11 ++++++++++-
2 files changed, 20 insertions(+), 1 deletion(-)
diff --git a/arch/arm/boot/dts/tegra30-apalis-eval.dts b/arch/arm/boot/dts/tegra30-apalis-eval.dts
index 07da481bc441..14a62b5111ec 100644
--- a/arch/arm/boot/dts/tegra30-apalis-eval.dts
+++ b/arch/arm/boot/dts/tegra30-apalis-eval.dts
@@ -41,6 +41,7 @@
};
hdmi@54280000 {
status = "okay";
+ hdmi-supply = <®_5v0>;
};
};
@@ -185,6 +186,7 @@
default-brightness-level = <6>;
/* BKL1_ON */
enable-gpios = <&gpio TEGRA_GPIO(V, 2) GPIO_ACTIVE_HIGH>;
+ power-supply = <®_3v3>;
};
gpio-keys {
@@ -207,6 +209,7 @@
compatible = "edt,et057090dhu", "simple-panel";
backlight = <&backlight>;
+ power-supply = <®_3v3>;
};
pwmleds {
@@ -231,6 +234,13 @@
};
};
+ reg_3v3: regulator-3v3 {
+ compatible = "regulator-fixed";
+ regulator-name = "3.3V_SW";
+ regulator-min-microvolt = <3300000>;
+ regulator-max-microvolt = <3300000>;
+ };
+
reg_5v0: regulator-5v0 {
compatible = "regulator-fixed";
regulator-name = "5V_SW";
diff --git a/arch/arm/boot/dts/tegra30-apalis.dtsi b/arch/arm/boot/dts/tegra30-apalis.dtsi
index 214a23722ab4..3b2e15519e4b 100644
--- a/arch/arm/boot/dts/tegra30-apalis.dtsi
+++ b/arch/arm/boot/dts/tegra30-apalis.dtsi
@@ -465,7 +465,8 @@
sgtl5000: codec@a {
compatible = "fsl,sgtl5000";
reg = <0x0a>;
- VDDA-supply = <®_module_3v3>;
+ VDDA-supply = <®_module_3v3_audio>;
+ VDDD-supply = <®_1v8_vio>;
VDDIO-supply = <®_module_3v3>;
clocks = <&tegra_car TEGRA30_CLK_EXTERN1>;
};
@@ -758,6 +759,14 @@
regulator-always-on;
};
+ reg_module_3v3_audio: regulator-module-3v3-audio {
+ compatible = "regulator-fixed";
+ regulator-name = "+V3.3_AUDIO_AVDD_S";
+ regulator-min-microvolt = <3300000>;
+ regulator-max-microvolt = <3300000>;
+ regulator-always-on;
+ };
+
sound {
compatible = "toradex,tegra-audio-sgtl5000-apalis_t30",
"nvidia,tegra-audio-sgtl5000";
--
2.14.4
^ permalink raw reply related [flat|nested] 41+ messages in thread
* [PATCH v2 09/34] ARM: tegra: apalis_t30: annotate uarts and move compatible to board
2018-08-31 16:37 [PATCH v2 00/34] ARM: dts: tegra: apalis_t30: major revamp incl. v1.1 hardware support Marcel Ziswiler
` (7 preceding siblings ...)
2018-08-31 16:37 ` [PATCH v2 08/34] ARM: tegra: apalis_t30: add missing regulators Marcel Ziswiler
@ 2018-08-31 16:37 ` Marcel Ziswiler
2018-08-31 16:37 ` [PATCH v2 10/34] ARM: tegra: apalis_t30: drop unused cami2c label Marcel Ziswiler
` (25 subsequent siblings)
34 siblings, 0 replies; 41+ messages in thread
From: Marcel Ziswiler @ 2018-08-31 16:37 UTC (permalink / raw)
To: devicetree, linux-tegra, linux-kernel
Cc: Marcel Ziswiler, Thierry Reding, Jonathan Hunter, Rob Herring,
Mark Rutland
From: Marcel Ziswiler <marcel.ziswiler@toradex.com>
Annotate UARTs and move the serial UART "nvidia,tegra30-hsuart"
compatible definitions from the carrier board to the module level device
trees. One could still override this in a custom carrier board device
tree if required.
Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
---
Changes in v2:
- Also move serial UART "nvidia,tegra30-hsuart" compatible to module
level device trees.
arch/arm/boot/dts/tegra30-apalis-eval.dts | 7 ++++---
arch/arm/boot/dts/tegra30-apalis.dtsi | 12 ++++++++++++
2 files changed, 16 insertions(+), 3 deletions(-)
diff --git a/arch/arm/boot/dts/tegra30-apalis-eval.dts b/arch/arm/boot/dts/tegra30-apalis-eval.dts
index 14a62b5111ec..cd4e45759ac8 100644
--- a/arch/arm/boot/dts/tegra30-apalis-eval.dts
+++ b/arch/arm/boot/dts/tegra30-apalis-eval.dts
@@ -45,22 +45,23 @@
};
};
+ /* Apalis UART1 */
serial@70006000 {
status = "okay";
};
+ /* Apalis UART2 */
serial@70006040 {
- compatible = "nvidia,tegra30-hsuart";
status = "okay";
};
+ /* Apalis UART3 */
serial@70006200 {
- compatible = "nvidia,tegra30-hsuart";
status = "okay";
};
+ /* Apalis UART4 */
serial@70006300 {
- compatible = "nvidia,tegra30-hsuart";
status = "okay";
};
diff --git a/arch/arm/boot/dts/tegra30-apalis.dtsi b/arch/arm/boot/dts/tegra30-apalis.dtsi
index 3b2e15519e4b..7e9d1b022982 100644
--- a/arch/arm/boot/dts/tegra30-apalis.dtsi
+++ b/arch/arm/boot/dts/tegra30-apalis.dtsi
@@ -449,6 +449,18 @@
};
};
+ serial@70006040 {
+ compatible = "nvidia,tegra30-hsuart";
+ };
+
+ serial@70006200 {
+ compatible = "nvidia,tegra30-hsuart";
+ };
+
+ serial@70006300 {
+ compatible = "nvidia,tegra30-hsuart";
+ };
+
hdmiddc: i2c@7000c700 {
clock-frequency = <10000>;
};
--
2.14.4
^ permalink raw reply related [flat|nested] 41+ messages in thread
* [PATCH v2 10/34] ARM: tegra: apalis_t30: drop unused cami2c label
2018-08-31 16:37 [PATCH v2 00/34] ARM: dts: tegra: apalis_t30: major revamp incl. v1.1 hardware support Marcel Ziswiler
` (8 preceding siblings ...)
2018-08-31 16:37 ` [PATCH v2 09/34] ARM: tegra: apalis_t30: annotate uarts and move compatible to board Marcel Ziswiler
@ 2018-08-31 16:37 ` Marcel Ziswiler
2018-08-31 16:37 ` [PATCH v2 11/34] ARM: tegra: apalis_t30: white-space/newline clean-up Marcel Ziswiler
` (24 subsequent siblings)
34 siblings, 0 replies; 41+ messages in thread
From: Marcel Ziswiler @ 2018-08-31 16:37 UTC (permalink / raw)
To: devicetree, linux-tegra, linux-kernel
Cc: Marcel Ziswiler, Thierry Reding, Jonathan Hunter, Rob Herring,
Mark Rutland
From: Marcel Ziswiler <marcel.ziswiler@toradex.com>
Drop unused cami2c label.
Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
---
Changes in v2: None
arch/arm/boot/dts/tegra30-apalis-eval.dts | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/arch/arm/boot/dts/tegra30-apalis-eval.dts b/arch/arm/boot/dts/tegra30-apalis-eval.dts
index cd4e45759ac8..3f15f327f293 100644
--- a/arch/arm/boot/dts/tegra30-apalis-eval.dts
+++ b/arch/arm/boot/dts/tegra30-apalis-eval.dts
@@ -95,7 +95,7 @@
* CAM_I2C: I2C3_SDA/SCL on MXM3 pin 201/203 (e.g. camera sensor on
* carrier board)
*/
- cami2c: i2c@7000c500 {
+ i2c@7000c500 {
status = "okay";
clock-frequency = <400000>;
};
--
2.14.4
^ permalink raw reply related [flat|nested] 41+ messages in thread
* [PATCH v2 11/34] ARM: tegra: apalis_t30: white-space/newline clean-up
2018-08-31 16:37 [PATCH v2 00/34] ARM: dts: tegra: apalis_t30: major revamp incl. v1.1 hardware support Marcel Ziswiler
` (9 preceding siblings ...)
2018-08-31 16:37 ` [PATCH v2 10/34] ARM: tegra: apalis_t30: drop unused cami2c label Marcel Ziswiler
@ 2018-08-31 16:37 ` Marcel Ziswiler
2018-08-31 16:37 ` [PATCH v2 12/34] ARM: tegra: apalis_t30: drop unused mmc1/sd1 labels Marcel Ziswiler
` (23 subsequent siblings)
34 siblings, 0 replies; 41+ messages in thread
From: Marcel Ziswiler @ 2018-08-31 16:37 UTC (permalink / raw)
To: devicetree, linux-tegra, linux-kernel
Cc: Marcel Ziswiler, Thierry Reding, Jonathan Hunter, Rob Herring,
Mark Rutland
From: Marcel Ziswiler <marcel.ziswiler@toradex.com>
White-space and newline clean-up.
Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
---
Changes in v2:
- Also add two missing newlines.
arch/arm/boot/dts/tegra30-apalis-eval.dts | 5 +++--
arch/arm/boot/dts/tegra30-apalis.dtsi | 1 +
2 files changed, 4 insertions(+), 2 deletions(-)
diff --git a/arch/arm/boot/dts/tegra30-apalis-eval.dts b/arch/arm/boot/dts/tegra30-apalis-eval.dts
index 3f15f327f293..0a8900be0008 100644
--- a/arch/arm/boot/dts/tegra30-apalis-eval.dts
+++ b/arch/arm/boot/dts/tegra30-apalis-eval.dts
@@ -39,6 +39,7 @@
nvidia,panel = <&panel>;
};
};
+
hdmi@54280000 {
status = "okay";
hdmi-supply = <®_5v0>;
@@ -109,6 +110,7 @@
spi@7000d400 {
status = "okay";
spi-max-frequency = <25000000>;
+
spidev0: spidev@1 {
compatible = "spidev";
reg = <1>;
@@ -120,6 +122,7 @@
spi@7000dc00 {
status = "okay";
spi-max-frequency = <25000000>;
+
spidev1: spidev@2 {
compatible = "spidev";
reg = <2>;
@@ -180,7 +183,6 @@
backlight: backlight {
compatible = "pwm-backlight";
-
/* PWM_BKL1 */
pwms = <&pwm 0 5000000>;
brightness-levels = <255 231 223 207 191 159 127 0>;
@@ -208,7 +210,6 @@
* edt,et070080dh6: EDT 7.0" LCD TFT
*/
compatible = "edt,et057090dhu", "simple-panel";
-
backlight = <&backlight>;
power-supply = <®_3v3>;
};
diff --git a/arch/arm/boot/dts/tegra30-apalis.dtsi b/arch/arm/boot/dts/tegra30-apalis.dtsi
index 7e9d1b022982..e84feac9b992 100644
--- a/arch/arm/boot/dts/tegra30-apalis.dtsi
+++ b/arch/arm/boot/dts/tegra30-apalis.dtsi
@@ -39,6 +39,7 @@
pci@3,0 {
status = "okay";
nvidia,num-lanes = <1>;
+
pcie@0 {
reg = <0 0 0 0 0>;
local-mac-address = [00 00 00 00 00 00];
--
2.14.4
^ permalink raw reply related [flat|nested] 41+ messages in thread
* [PATCH v2 12/34] ARM: tegra: apalis_t30: drop unused mmc1/sd1 labels
2018-08-31 16:37 [PATCH v2 00/34] ARM: dts: tegra: apalis_t30: major revamp incl. v1.1 hardware support Marcel Ziswiler
` (10 preceding siblings ...)
2018-08-31 16:37 ` [PATCH v2 11/34] ARM: tegra: apalis_t30: white-space/newline clean-up Marcel Ziswiler
@ 2018-08-31 16:37 ` Marcel Ziswiler
2018-08-31 16:37 ` [PATCH v2 13/34] ARM: tegra: apalis_t30: annotate mmc1/sd1 Marcel Ziswiler
` (22 subsequent siblings)
34 siblings, 0 replies; 41+ messages in thread
From: Marcel Ziswiler @ 2018-08-31 16:37 UTC (permalink / raw)
To: devicetree, linux-tegra, linux-kernel
Cc: Marcel Ziswiler, Thierry Reding, Jonathan Hunter, Rob Herring,
Mark Rutland
From: Marcel Ziswiler <marcel.ziswiler@toradex.com>
Drop unused mmc1/sd1 labels.
Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
---
Changes in v2: None
arch/arm/boot/dts/tegra30-apalis-eval.dts | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/arch/arm/boot/dts/tegra30-apalis-eval.dts b/arch/arm/boot/dts/tegra30-apalis-eval.dts
index 0a8900be0008..3f25bb307397 100644
--- a/arch/arm/boot/dts/tegra30-apalis-eval.dts
+++ b/arch/arm/boot/dts/tegra30-apalis-eval.dts
@@ -134,7 +134,7 @@
status = "okay";
};
- sd1: sdhci@78000000 {
+ sdhci@78000000 {
status = "okay";
bus-width = <4>;
/* SD1_CD# */
@@ -142,7 +142,7 @@
no-1-8-v;
};
- mmc1: sdhci@78000400 {
+ sdhci@78000400 {
status = "okay";
bus-width = <8>;
/* MMC1_CD# */
--
2.14.4
^ permalink raw reply related [flat|nested] 41+ messages in thread
* [PATCH v2 13/34] ARM: tegra: apalis_t30: annotate mmc1/sd1
2018-08-31 16:37 [PATCH v2 00/34] ARM: dts: tegra: apalis_t30: major revamp incl. v1.1 hardware support Marcel Ziswiler
` (11 preceding siblings ...)
2018-08-31 16:37 ` [PATCH v2 12/34] ARM: tegra: apalis_t30: drop unused mmc1/sd1 labels Marcel Ziswiler
@ 2018-08-31 16:37 ` Marcel Ziswiler
2018-08-31 16:37 ` [PATCH v2 14/34] ARM: tegra: apalis_t30: move dr_mode property from phy to controller Marcel Ziswiler
` (21 subsequent siblings)
34 siblings, 0 replies; 41+ messages in thread
From: Marcel Ziswiler @ 2018-08-31 16:37 UTC (permalink / raw)
To: devicetree, linux-tegra, linux-kernel
Cc: Marcel Ziswiler, Thierry Reding, Jonathan Hunter, Rob Herring,
Mark Rutland
From: Marcel Ziswiler <marcel.ziswiler@toradex.com>
Annotate MMC1/SD1.
Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
---
Changes in v2: None
arch/arm/boot/dts/tegra30-apalis-eval.dts | 2 ++
1 file changed, 2 insertions(+)
diff --git a/arch/arm/boot/dts/tegra30-apalis-eval.dts b/arch/arm/boot/dts/tegra30-apalis-eval.dts
index 3f25bb307397..15e9de06c59a 100644
--- a/arch/arm/boot/dts/tegra30-apalis-eval.dts
+++ b/arch/arm/boot/dts/tegra30-apalis-eval.dts
@@ -134,6 +134,7 @@
status = "okay";
};
+ /* Apalis SD1 */
sdhci@78000000 {
status = "okay";
bus-width = <4>;
@@ -142,6 +143,7 @@
no-1-8-v;
};
+ /* Apalis MMC1 */
sdhci@78000400 {
status = "okay";
bus-width = <8>;
--
2.14.4
^ permalink raw reply related [flat|nested] 41+ messages in thread
* [PATCH v2 14/34] ARM: tegra: apalis_t30: move dr_mode property from phy to controller
2018-08-31 16:37 [PATCH v2 00/34] ARM: dts: tegra: apalis_t30: major revamp incl. v1.1 hardware support Marcel Ziswiler
` (12 preceding siblings ...)
2018-08-31 16:37 ` [PATCH v2 13/34] ARM: tegra: apalis_t30: annotate mmc1/sd1 Marcel Ziswiler
@ 2018-08-31 16:37 ` Marcel Ziswiler
2018-08-31 16:37 ` [PATCH v2 15/34] ARM: tegra: apalis_t30: reorder backlight properties Marcel Ziswiler
` (20 subsequent siblings)
34 siblings, 0 replies; 41+ messages in thread
From: Marcel Ziswiler @ 2018-08-31 16:37 UTC (permalink / raw)
To: devicetree, linux-tegra, linux-kernel
Cc: Marcel Ziswiler, Thierry Reding, Jonathan Hunter, Rob Herring,
Mark Rutland
From: Marcel Ziswiler <marcel.ziswiler@toradex.com>
Move dr_mode property from USB PHY node to controller.
Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
---
Changes in v2: None
arch/arm/boot/dts/tegra30-apalis-eval.dts | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/arch/arm/boot/dts/tegra30-apalis-eval.dts b/arch/arm/boot/dts/tegra30-apalis-eval.dts
index 15e9de06c59a..9f2392a05532 100644
--- a/arch/arm/boot/dts/tegra30-apalis-eval.dts
+++ b/arch/arm/boot/dts/tegra30-apalis-eval.dts
@@ -155,11 +155,11 @@
/* EHCI instance 0: USB1_DP/N -> USBO1_DP/N */
usb@7d000000 {
status = "okay";
+ dr_mode = "otg";
};
usb-phy@7d000000 {
status = "okay";
- dr_mode = "otg";
vbus-supply = <®_usbo1_vbus>;
};
--
2.14.4
^ permalink raw reply related [flat|nested] 41+ messages in thread
* [PATCH v2 15/34] ARM: tegra: apalis_t30: reorder backlight properties
2018-08-31 16:37 [PATCH v2 00/34] ARM: dts: tegra: apalis_t30: major revamp incl. v1.1 hardware support Marcel Ziswiler
` (13 preceding siblings ...)
2018-08-31 16:37 ` [PATCH v2 14/34] ARM: tegra: apalis_t30: move dr_mode property from phy to controller Marcel Ziswiler
@ 2018-08-31 16:37 ` Marcel Ziswiler
2018-09-03 9:22 ` Daniel Thompson
2018-08-31 16:37 ` [PATCH v2 16/34] ARM: tegra: apalis_t30: drop pwmleds Marcel Ziswiler
` (19 subsequent siblings)
34 siblings, 1 reply; 41+ messages in thread
From: Marcel Ziswiler @ 2018-08-31 16:37 UTC (permalink / raw)
To: devicetree, linux-tegra, linux-kernel
Cc: Marcel Ziswiler, Thierry Reding, Jonathan Hunter, Rob Herring,
Mark Rutland
From: Marcel Ziswiler <marcel.ziswiler@toradex.com>
Reorder backlight properties.
Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
---
Changes in v2: None
arch/arm/boot/dts/tegra30-apalis-eval.dts | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/arch/arm/boot/dts/tegra30-apalis-eval.dts b/arch/arm/boot/dts/tegra30-apalis-eval.dts
index 9f2392a05532..300ce726ff4d 100644
--- a/arch/arm/boot/dts/tegra30-apalis-eval.dts
+++ b/arch/arm/boot/dts/tegra30-apalis-eval.dts
@@ -185,13 +185,12 @@
backlight: backlight {
compatible = "pwm-backlight";
- /* PWM_BKL1 */
- pwms = <&pwm 0 5000000>;
brightness-levels = <255 231 223 207 191 159 127 0>;
default-brightness-level = <6>;
/* BKL1_ON */
enable-gpios = <&gpio TEGRA_GPIO(V, 2) GPIO_ACTIVE_HIGH>;
power-supply = <®_3v3>;
+ pwms = <&pwm 0 5000000>; /* BKL1_PWM */
};
gpio-keys {
--
2.14.4
^ permalink raw reply related [flat|nested] 41+ messages in thread
* [PATCH v2 16/34] ARM: tegra: apalis_t30: drop pwmleds
2018-08-31 16:37 [PATCH v2 00/34] ARM: dts: tegra: apalis_t30: major revamp incl. v1.1 hardware support Marcel Ziswiler
` (14 preceding siblings ...)
2018-08-31 16:37 ` [PATCH v2 15/34] ARM: tegra: apalis_t30: reorder backlight properties Marcel Ziswiler
@ 2018-08-31 16:37 ` Marcel Ziswiler
2018-08-31 16:37 ` [PATCH v2 17/34] ARM: tegra: apalis_t30: pinmux clean-up Marcel Ziswiler
` (18 subsequent siblings)
34 siblings, 0 replies; 41+ messages in thread
From: Marcel Ziswiler @ 2018-08-31 16:37 UTC (permalink / raw)
To: devicetree, linux-tegra, linux-kernel
Cc: Marcel Ziswiler, Thierry Reding, Jonathan Hunter, Rob Herring,
Mark Rutland
From: Marcel Ziswiler <marcel.ziswiler@toradex.com>
Drop pwmleds in favour of using regular PWMs.
Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
---
Changes in v2: None
arch/arm/boot/dts/tegra30-apalis-eval.dts | 22 ----------------------
1 file changed, 22 deletions(-)
diff --git a/arch/arm/boot/dts/tegra30-apalis-eval.dts b/arch/arm/boot/dts/tegra30-apalis-eval.dts
index 300ce726ff4d..5d1bc8560dbe 100644
--- a/arch/arm/boot/dts/tegra30-apalis-eval.dts
+++ b/arch/arm/boot/dts/tegra30-apalis-eval.dts
@@ -215,28 +215,6 @@
power-supply = <®_3v3>;
};
- pwmleds {
- compatible = "pwm-leds";
-
- pwm1 {
- label = "PWM1";
- pwms = <&pwm 3 19600>;
- max-brightness = <255>;
- };
-
- pwm2 {
- label = "PWM2";
- pwms = <&pwm 2 19600>;
- max-brightness = <255>;
- };
-
- pwm3 {
- label = "PWM3";
- pwms = <&pwm 1 19600>;
- max-brightness = <255>;
- };
- };
-
reg_3v3: regulator-3v3 {
compatible = "regulator-fixed";
regulator-name = "3.3V_SW";
--
2.14.4
^ permalink raw reply related [flat|nested] 41+ messages in thread
* [PATCH v2 17/34] ARM: tegra: apalis_t30: pinmux clean-up
2018-08-31 16:37 [PATCH v2 00/34] ARM: dts: tegra: apalis_t30: major revamp incl. v1.1 hardware support Marcel Ziswiler
` (15 preceding siblings ...)
2018-08-31 16:37 ` [PATCH v2 16/34] ARM: tegra: apalis_t30: drop pwmleds Marcel Ziswiler
@ 2018-08-31 16:37 ` Marcel Ziswiler
2018-08-31 16:38 ` [PATCH v2 18/34] ARM: tegra: apalis_t30: add missing pinmux Marcel Ziswiler
` (17 subsequent siblings)
34 siblings, 0 replies; 41+ messages in thread
From: Marcel Ziswiler @ 2018-08-31 16:37 UTC (permalink / raw)
To: devicetree, linux-tegra, linux-kernel
Cc: Marcel Ziswiler, Thierry Reding, Jonathan Hunter, Rob Herring,
Mark Rutland
From: Marcel Ziswiler <marcel.ziswiler@toradex.com>
Clean-up pinmuxing:
- white-space clean-up
- explicitly disable input of BKL1_ON, BKL1_PWM and BKL1_PWM_EN#
- annotate Apalis I2C3 usage for CAM
- get rid of nvidia,lock property
- add missing eMMC sdmmc4_cmd_pt7 and explicitly enable input
- explicitly disable lcd_dc1_pd2 (e.g. LM95245 I2C address pin)
- annotate TOUCH_PEN_INT# being on-module
- As underscores in node names are not recommended replace them all
where possible with dashes.
Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
---
Changes in v2:
- Also replace underscores in node names with dashes.
- Explicitly disable input of BKL1_ON as well.
arch/arm/boot/dts/tegra30-apalis.dtsi | 88 ++++++++++++++++++-----------------
1 file changed, 45 insertions(+), 43 deletions(-)
diff --git a/arch/arm/boot/dts/tegra30-apalis.dtsi b/arch/arm/boot/dts/tegra30-apalis.dtsi
index e84feac9b992..cb587670a5af 100644
--- a/arch/arm/boot/dts/tegra30-apalis.dtsi
+++ b/arch/arm/boot/dts/tegra30-apalis.dtsi
@@ -63,18 +63,18 @@
state_default: pinmux {
/* Analogue Audio (On-module) */
- clk1_out_pw4 {
+ clk1-out-pw4 {
nvidia,pins = "clk1_out_pw4";
nvidia,function = "extperiph1";
nvidia,pull = <TEGRA_PIN_PULL_NONE>;
nvidia,tristate = <TEGRA_PIN_DISABLE>;
nvidia,enable-input = <TEGRA_PIN_DISABLE>;
};
- dap3_fs_pp0 {
- nvidia,pins = "dap3_fs_pp0",
- "dap3_sclk_pp3",
- "dap3_din_pp1",
- "dap3_dout_pp2";
+ dap3-fs-pp0 {
+ nvidia,pins = "dap3_fs_pp0",
+ "dap3_sclk_pp3",
+ "dap3_din_pp1",
+ "dap3_dout_pp2";
nvidia,function = "i2s2";
nvidia,pull = <TEGRA_PIN_PULL_NONE>;
nvidia,tristate = <TEGRA_PIN_DISABLE>;
@@ -86,25 +86,28 @@
nvidia,function = "rsvd4";
nvidia,pull = <TEGRA_PIN_PULL_NONE>;
nvidia,tristate = <TEGRA_PIN_DISABLE>;
+ nvidia,enable-input = <TEGRA_PIN_DISABLE>;
};
/* Apalis BKL1_PWM */
- uart3_rts_n_pc0 {
+ uart3-rts-n-pc0 {
nvidia,pins = "uart3_rts_n_pc0";
nvidia,function = "pwm0";
nvidia,pull = <TEGRA_PIN_PULL_NONE>;
nvidia,tristate = <TEGRA_PIN_DISABLE>;
+ nvidia,enable-input = <TEGRA_PIN_DISABLE>;
};
/* BKL1_PWM_EN#, disable TPS65911 PMIC PWM backlight */
- uart3_cts_n_pa1 {
+ uart3-cts-n-pa1 {
nvidia,pins = "uart3_cts_n_pa1";
nvidia,function = "rsvd2";
nvidia,pull = <TEGRA_PIN_PULL_UP>;
nvidia,tristate = <TEGRA_PIN_DISABLE>;
+ nvidia,enable-input = <TEGRA_PIN_DISABLE>;
};
/* Apalis CAN1 on SPI6 */
- spi2_cs0_n_px3 {
+ spi2-cs0-n-px3 {
nvidia,pins = "spi2_cs0_n_px3",
"spi2_miso_px1",
"spi2_mosi_px0",
@@ -114,7 +117,7 @@
nvidia,tristate = <TEGRA_PIN_DISABLE>;
};
/* CAN_INT1 */
- spi2_cs1_n_pw2 {
+ spi2-cs1-n-pw2 {
nvidia,pins = "spi2_cs1_n_pw2";
nvidia,function = "spi3";
nvidia,pull = <TEGRA_PIN_PULL_NONE>;
@@ -123,7 +126,7 @@
};
/* Apalis CAN2 on SPI4 */
- gmi_a16_pj7 {
+ gmi-a16-pj7 {
nvidia,pins = "gmi_a16_pj7",
"gmi_a17_pb0",
"gmi_a18_pb1",
@@ -134,7 +137,7 @@
nvidia,enable-input = <TEGRA_PIN_ENABLE>;
};
/* CAN_INT2 */
- spi2_cs2_n_pw3 {
+ spi2-cs2-n-pw3 {
nvidia,pins = "spi2_cs2_n_pw3";
nvidia,function = "spi3";
nvidia,pull = <TEGRA_PIN_PULL_NONE>;
@@ -143,20 +146,20 @@
};
/* Apalis Digital Audio */
- clk1_req_pee2 {
+ 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 {
+ 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 {
+ dap1-fs-pn0 {
nvidia,pins = "dap1_fs_pn0",
"dap1_din_pn1",
"dap1_dout_pn2",
@@ -166,26 +169,25 @@
nvidia,tristate = <TEGRA_PIN_DISABLE>;
};
- /* Apalis I2C3 */
- cam_i2c_scl_pbb1 {
+ /* Apalis I2C3 (CAM) */
+ cam-i2c-scl-pbb1 {
nvidia,pins = "cam_i2c_scl_pbb1",
"cam_i2c_sda_pbb2";
nvidia,function = "i2c3";
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>;
};
/* Apalis MMC1 */
- sdmmc3_clk_pa6 {
+ sdmmc3-clk-pa6 {
nvidia,pins = "sdmmc3_clk_pa6";
nvidia,function = "sdmmc3";
nvidia,pull = <TEGRA_PIN_PULL_NONE>;
nvidia,tristate = <TEGRA_PIN_DISABLE>;
};
- sdmmc3_dat0_pb7 {
+ sdmmc3-dat0-pb7 {
nvidia,pins = "sdmmc3_cmd_pa7",
"sdmmc3_dat0_pb7",
"sdmmc3_dat1_pb6",
@@ -241,7 +243,7 @@
};
/* Apalis RESET_MOCI# */
- gmi_rst_n_pi4 {
+ gmi-rst-n-pi4 {
nvidia,pins = "gmi_rst_n_pi4";
nvidia,function = "gmi";
nvidia,pull = <TEGRA_PIN_PULL_NONE>;
@@ -249,13 +251,13 @@
};
/* Apalis SD1 */
- sdmmc1_clk_pz0 {
+ sdmmc1-clk-pz0 {
nvidia,pins = "sdmmc1_clk_pz0";
nvidia,function = "sdmmc1";
nvidia,pull = <TEGRA_PIN_PULL_NONE>;
nvidia,tristate = <TEGRA_PIN_DISABLE>;
};
- sdmmc1_cmd_pz1 {
+ sdmmc1-cmd-pz1 {
nvidia,pins = "sdmmc1_cmd_pz1",
"sdmmc1_dat0_py7",
"sdmmc1_dat1_py6",
@@ -266,7 +268,7 @@
nvidia,tristate = <TEGRA_PIN_DISABLE>;
};
/* Apalis SD1_CD# */
- clk2_req_pcc5 {
+ clk2-req-pcc5 {
nvidia,pins = "clk2_req_pcc5";
nvidia,function = "rsvd2";
nvidia,pull = <TEGRA_PIN_PULL_UP>;
@@ -275,7 +277,7 @@
};
/* Apalis SPI1 */
- spi1_sck_px5 {
+ spi1-sck-px5 {
nvidia,pins = "spi1_sck_px5",
"spi1_mosi_px4",
"spi1_miso_px7",
@@ -286,7 +288,7 @@
};
/* Apalis SPI2 */
- lcd_sck_pz4 {
+ lcd-sck-pz4 {
nvidia,pins = "lcd_sck_pz4",
"lcd_sdout_pn5",
"lcd_sdin_pz2",
@@ -297,7 +299,7 @@
};
/* Apalis UART1 */
- ulpi_data0 {
+ ulpi-data0 {
nvidia,pins = "ulpi_data0_po1",
"ulpi_data1_po2",
"ulpi_data2_po3",
@@ -312,7 +314,7 @@
};
/* Apalis UART2 */
- ulpi_clk_py0 {
+ ulpi-clk-py0 {
nvidia,pins = "ulpi_clk_py0",
"ulpi_dir_py1",
"ulpi_nxt_py2",
@@ -323,7 +325,7 @@
};
/* Apalis UART3 */
- uart2_rxd_pc3 {
+ uart2-rxd-pc3 {
nvidia,pins = "uart2_rxd_pc3",
"uart2_txd_pc2";
nvidia,function = "uartb";
@@ -332,7 +334,7 @@
};
/* Apalis UART4 */
- uart3_rxd_pw7 {
+ uart3-rxd-pw7 {
nvidia,pins = "uart3_rxd_pw7",
"uart3_txd_pw6";
nvidia,function = "uartc";
@@ -341,7 +343,7 @@
};
/* Apalis USBO1_EN */
- gen2_i2c_scl_pt5 {
+ gen2-i2c-scl-pt5 {
nvidia,pins = "gen2_i2c_scl_pt5";
nvidia,function = "rsvd4";
nvidia,open-drain = <TEGRA_PIN_DISABLE>;
@@ -350,7 +352,7 @@
};
/* Apalis USBO1_OC# */
- gen2_i2c_sda_pt6 {
+ gen2-i2c-sda-pt6 {
nvidia,pins = "gen2_i2c_sda_pt6";
nvidia,function = "rsvd4";
nvidia,open-drain = <TEGRA_PIN_DISABLE>;
@@ -369,14 +371,16 @@
};
/* eMMC (On-module) */
- sdmmc4_clk_pcc4 {
+ sdmmc4-clk-pcc4 {
nvidia,pins = "sdmmc4_clk_pcc4",
+ "sdmmc4_cmd_pt7",
"sdmmc4_rst_n_pcc3";
nvidia,function = "sdmmc4";
nvidia,pull = <TEGRA_PIN_PULL_NONE>;
nvidia,tristate = <TEGRA_PIN_DISABLE>;
+ nvidia,enable-input = <TEGRA_PIN_ENABLE>;
};
- sdmmc4_dat0_paa0 {
+ sdmmc4-dat0-paa0 {
nvidia,pins = "sdmmc4_dat0_paa0",
"sdmmc4_dat1_paa1",
"sdmmc4_dat2_paa2",
@@ -388,6 +392,7 @@
nvidia,function = "sdmmc4";
nvidia,pull = <TEGRA_PIN_PULL_UP>;
nvidia,tristate = <TEGRA_PIN_DISABLE>;
+ nvidia,enable-input = <TEGRA_PIN_ENABLE>;
};
/* LVDS Transceiver Configuration */
@@ -400,7 +405,6 @@
nvidia,pull = <TEGRA_PIN_PULL_NONE>;
nvidia,tristate = <TEGRA_PIN_DISABLE>;
nvidia,enable-input = <TEGRA_PIN_DISABLE>;
- nvidia,lock = <TEGRA_PIN_DISABLE>;
};
pbb3 {
nvidia,pins = "pbb3",
@@ -411,18 +415,16 @@
nvidia,pull = <TEGRA_PIN_PULL_NONE>;
nvidia,tristate = <TEGRA_PIN_DISABLE>;
nvidia,enable-input = <TEGRA_PIN_DISABLE>;
- nvidia,lock = <TEGRA_PIN_DISABLE>;
};
/* Power I2C (On-module) */
- pwr_i2c_scl_pz6 {
+ 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>;
};
@@ -431,15 +433,15 @@
* temperature sensor therefore requires disabling for
* now
*/
- lcd_dc1_pd2 {
+ 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>;
+ nvidia,pull = <TEGRA_PIN_PULL_DOWN>;
+ nvidia,tristate = <TEGRA_PIN_ENABLE>;
+ nvidia,enable-input = <TEGRA_PIN_DISABLE>;
};
- /* TOUCH_PEN_INT# */
+ /* TOUCH_PEN_INT# (On-module) */
pv0 {
nvidia,pins = "pv0";
nvidia,function = "rsvd1";
--
2.14.4
^ permalink raw reply related [flat|nested] 41+ messages in thread
* [PATCH v2 18/34] ARM: tegra: apalis_t30: add missing pinmux
2018-08-31 16:37 [PATCH v2 00/34] ARM: dts: tegra: apalis_t30: major revamp incl. v1.1 hardware support Marcel Ziswiler
` (16 preceding siblings ...)
2018-08-31 16:37 ` [PATCH v2 17/34] ARM: tegra: apalis_t30: pinmux clean-up Marcel Ziswiler
@ 2018-08-31 16:38 ` Marcel Ziswiler
2018-08-31 16:38 ` [PATCH v2 19/34] ARM: tegra: apalis_t30: use proper irq-gpio for stmpe811 Marcel Ziswiler
` (16 subsequent siblings)
34 siblings, 0 replies; 41+ messages in thread
From: Marcel Ziswiler @ 2018-08-31 16:38 UTC (permalink / raw)
To: devicetree, linux-tegra, linux-kernel
Cc: Marcel Ziswiler, Thierry Reding, Jonathan Hunter, Rob Herring,
Mark Rutland
From: Marcel Ziswiler <marcel.ziswiler@toradex.com>
Explicitly mux all T30 SoC balls now:
- Apalis GPIO
- Apalis HDMI1
- Apalis I2C1
- Apalis I2C2 (DDC)
- Apalis LCD1
- Apalis Parallel Camera
- Apalis SATA1_ACT#
- Apalis SPDIF1
- Apalis TS (Low-speed type specific)
- Apalis USBH_EN
- Apalis USBH_OC#
- Apalis VGA1
- on-module i210/i211 LAN control signals
- not connected and therefore disabled signals
Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
---
Changes in v2:
- Replace underscores in node names with dashes.
arch/arm/boot/dts/tegra30-apalis.dtsi | 370 ++++++++++++++++++++++++++++++++++
1 file changed, 370 insertions(+)
diff --git a/arch/arm/boot/dts/tegra30-apalis.dtsi b/arch/arm/boot/dts/tegra30-apalis.dtsi
index cb587670a5af..e37d22e2ceef 100644
--- a/arch/arm/boot/dts/tegra30-apalis.dtsi
+++ b/arch/arm/boot/dts/tegra30-apalis.dtsi
@@ -169,6 +169,68 @@
nvidia,tristate = <TEGRA_PIN_DISABLE>;
};
+ /* Apalis GPIO */
+ kb-col0-pq0 {
+ nvidia,pins = "kb_col0_pq0",
+ "kb_col1_pq1",
+ "kb_row10_ps2",
+ "kb_row11_ps3",
+ "kb_row12_ps4",
+ "kb_row13_ps5",
+ "kb_row14_ps6",
+ "kb_row15_ps7";
+ nvidia,function = "kbc";
+ nvidia,pull = <TEGRA_PIN_PULL_NONE>;
+ nvidia,tristate = <TEGRA_PIN_DISABLE>;
+ nvidia,enable-input = <TEGRA_PIN_ENABLE>;
+ };
+ /* Multiplexed and therefore disabled */
+ owr {
+ nvidia,pins = "owr";
+ nvidia,function = "rsvd3";
+ nvidia,pull = <TEGRA_PIN_PULL_DOWN>;
+ nvidia,tristate = <TEGRA_PIN_ENABLE>;
+ nvidia,enable-input = <TEGRA_PIN_DISABLE>;
+ };
+
+ /* Apalis HDMI1 */
+ hdmi-cec-pee3 {
+ nvidia,pins = "hdmi_cec_pee3";
+ nvidia,function = "cec";
+ nvidia,pull = <TEGRA_PIN_PULL_NONE>;
+ nvidia,tristate = <TEGRA_PIN_DISABLE>;
+ nvidia,enable-input = <TEGRA_PIN_ENABLE>;
+ nvidia,open-drain = <TEGRA_PIN_DISABLE>;
+ };
+ hdmi-int-pn7 {
+ nvidia,pins = "hdmi_int_pn7";
+ nvidia,function = "hdmi";
+ nvidia,pull = <TEGRA_PIN_PULL_NONE>;
+ nvidia,tristate = <TEGRA_PIN_ENABLE>;
+ nvidia,enable-input = <TEGRA_PIN_ENABLE>;
+ };
+
+ /* Apalis I2C1 */
+ gen1-i2c-scl-pc4 {
+ nvidia,pins = "gen1_i2c_scl_pc4",
+ "gen1_i2c_sda_pc5";
+ nvidia,function = "i2c1";
+ nvidia,pull = <TEGRA_PIN_PULL_NONE>;
+ nvidia,tristate = <TEGRA_PIN_DISABLE>;
+ nvidia,enable-input = <TEGRA_PIN_ENABLE>;
+ nvidia,open-drain = <TEGRA_PIN_ENABLE>;
+ };
+
+ /* Apalis I2C2 (DDC) */
+ ddc-scl-pv4 {
+ nvidia,pins = "ddc_scl_pv4",
+ "ddc_sda_pv5";
+ nvidia,function = "i2c4";
+ nvidia,pull = <TEGRA_PIN_PULL_NONE>;
+ nvidia,tristate = <TEGRA_PIN_DISABLE>;
+ nvidia,enable-input = <TEGRA_PIN_ENABLE>;
+ };
+
/* Apalis I2C3 (CAM) */
cam-i2c-scl-pbb1 {
nvidia,pins = "cam_i2c_scl_pbb1",
@@ -180,6 +242,42 @@
nvidia,open-drain = <TEGRA_PIN_ENABLE>;
};
+ /* Apalis LCD1 */
+ lcd-d0-pe0 {
+ nvidia,pins = "lcd_d0_pe0",
+ "lcd_d1_pe1",
+ "lcd_d2_pe2",
+ "lcd_d3_pe3",
+ "lcd_d4_pe4",
+ "lcd_d5_pe5",
+ "lcd_d6_pe6",
+ "lcd_d7_pe7",
+ "lcd_d8_pf0",
+ "lcd_d9_pf1",
+ "lcd_d10_pf2",
+ "lcd_d11_pf3",
+ "lcd_d12_pf4",
+ "lcd_d13_pf5",
+ "lcd_d14_pf6",
+ "lcd_d15_pf7",
+ "lcd_d16_pm0",
+ "lcd_d17_pm1",
+ "lcd_d18_pm2",
+ "lcd_d19_pm3",
+ "lcd_d20_pm4",
+ "lcd_d21_pm5",
+ "lcd_d22_pm6",
+ "lcd_d23_pm7",
+ "lcd_de_pj1",
+ "lcd_hsync_pj3",
+ "lcd_pclk_pb3",
+ "lcd_vsync_pj4";
+ nvidia,function = "displaya";
+ nvidia,pull = <TEGRA_PIN_PULL_NONE>;
+ nvidia,tristate = <TEGRA_PIN_DISABLE>;
+ nvidia,enable-input = <TEGRA_PIN_ENABLE>;
+ };
+
/* Apalis MMC1 */
sdmmc3-clk-pa6 {
nvidia,pins = "sdmmc3_clk_pa6";
@@ -210,6 +308,77 @@
nvidia,enable-input = <TEGRA_PIN_ENABLE>;
};
+ /* Apalis Parallel Camera */
+ cam-mclk-pcc0 {
+ nvidia,pins = "cam_mclk_pcc0";
+ nvidia,function = "vi_alt3";
+ nvidia,pull = <TEGRA_PIN_PULL_NONE>;
+ nvidia,tristate = <TEGRA_PIN_DISABLE>;
+ nvidia,enable-input = <TEGRA_PIN_DISABLE>;
+ };
+ vi-vsync-pd6 {
+ nvidia,pins = "vi_d0_pt4",
+ "vi_d1_pd5",
+ "vi_d2_pl0",
+ "vi_d3_pl1",
+ "vi_d4_pl2",
+ "vi_d5_pl3",
+ "vi_d6_pl4",
+ "vi_d7_pl5",
+ "vi_d8_pl6",
+ "vi_d9_pl7",
+ "vi_d10_pt2",
+ "vi_d11_pt3",
+ "vi_hsync_pd7",
+ "vi_pclk_pt0",
+ "vi_vsync_pd6";
+ nvidia,function = "vi";
+ nvidia,pull = <TEGRA_PIN_PULL_NONE>;
+ nvidia,tristate = <TEGRA_PIN_DISABLE>;
+ nvidia,enable-input = <TEGRA_PIN_ENABLE>;
+ };
+ /* Multiplexed and therefore disabled */
+ kb-col2-pq2 {
+ nvidia,pins = "kb_col2_pq2",
+ "kb_col3_pq3",
+ "kb_col4_pq4",
+ "kb_row4_pr4";
+ nvidia,function = "rsvd4";
+ nvidia,pull = <TEGRA_PIN_PULL_DOWN>;
+ nvidia,tristate = <TEGRA_PIN_ENABLE>;
+ nvidia,enable-input = <TEGRA_PIN_DISABLE>;
+ };
+ kb-row0-pr0 {
+ nvidia,pins = "kb_row0_pr0",
+ "kb_row1_pr1",
+ "kb_row2_pr2",
+ "kb_row3_pr3";
+ nvidia,function = "rsvd3";
+ nvidia,pull = <TEGRA_PIN_PULL_DOWN>;
+ nvidia,tristate = <TEGRA_PIN_ENABLE>;
+ nvidia,enable-input = <TEGRA_PIN_DISABLE>;
+ };
+ kb-row5-pr5 {
+ nvidia,pins = "kb_row5_pr5",
+ "kb_row6_pr6",
+ "kb_row7_pr7";
+ nvidia,function = "kbc";
+ nvidia,pull = <TEGRA_PIN_PULL_DOWN>;
+ nvidia,tristate = <TEGRA_PIN_ENABLE>;
+ nvidia,enable-input = <TEGRA_PIN_DISABLE>;
+ };
+ /*
+ * VI level-shifter direction
+ * (pull-down => default direction input)
+ */
+ vi-mclk-pt1 {
+ nvidia,pins = "vi_mclk_pt1";
+ nvidia,function = "vi_alt3";
+ nvidia,pull = <TEGRA_PIN_PULL_DOWN>;
+ nvidia,tristate = <TEGRA_PIN_ENABLE>;
+ nvidia,enable-input = <TEGRA_PIN_DISABLE>;
+ };
+
/* Apalis PWM1 */
pu6 {
nvidia,pins = "pu6";
@@ -250,6 +419,15 @@
nvidia,tristate = <TEGRA_PIN_DISABLE>;
};
+ /* Apalis SATA1_ACT# */
+ pex-l0-prsnt-n-pdd0 {
+ nvidia,pins = "pex_l0_prsnt_n_pdd0";
+ nvidia,function = "rsvd3";
+ nvidia,pull = <TEGRA_PIN_PULL_NONE>;
+ nvidia,tristate = <TEGRA_PIN_DISABLE>;
+ nvidia,enable-input = <TEGRA_PIN_DISABLE>;
+ };
+
/* Apalis SD1 */
sdmmc1-clk-pz0 {
nvidia,pins = "sdmmc1_clk_pz0";
@@ -276,6 +454,16 @@
nvidia,enable-input = <TEGRA_PIN_ENABLE>;
};
+ /* Apalis SPDIF1 */
+ spdif-out-pk5 {
+ nvidia,pins = "spdif_out_pk5",
+ "spdif_in_pk6";
+ nvidia,function = "spdif";
+ nvidia,pull = <TEGRA_PIN_PULL_NONE>;
+ nvidia,tristate = <TEGRA_PIN_DISABLE>;
+ nvidia,enable-input = <TEGRA_PIN_ENABLE>;
+ };
+
/* Apalis SPI1 */
spi1-sck-px5 {
nvidia,pins = "spi1_sck_px5",
@@ -298,6 +486,28 @@
nvidia,tristate = <TEGRA_PIN_DISABLE>;
};
+ /*
+ * Apalis TS (Low-speed type specific)
+ * pins may be used as GPIOs
+ */
+ kb-col5-pq5 {
+ nvidia,pins = "kb_col5_pq5";
+ nvidia,function = "rsvd4";
+ nvidia,pull = <TEGRA_PIN_PULL_NONE>;
+ nvidia,tristate = <TEGRA_PIN_DISABLE>;
+ nvidia,enable-input = <TEGRA_PIN_ENABLE>;
+ };
+ kb-col6-pq6 {
+ nvidia,pins = "kb_col6_pq6",
+ "kb_col7_pq7",
+ "kb_row8_ps0",
+ "kb_row9_ps1";
+ nvidia,function = "kbc";
+ nvidia,pull = <TEGRA_PIN_PULL_NONE>;
+ nvidia,tristate = <TEGRA_PIN_DISABLE>;
+ nvidia,enable-input = <TEGRA_PIN_ENABLE>;
+ };
+
/* Apalis UART1 */
ulpi-data0 {
nvidia,pins = "ulpi_data0_po1",
@@ -342,6 +552,24 @@
nvidia,tristate = <TEGRA_PIN_DISABLE>;
};
+ /* Apalis USBH_EN */
+ pex-l0-rst-n-pdd1 {
+ nvidia,pins = "pex_l0_rst_n_pdd1";
+ nvidia,function = "rsvd3";
+ nvidia,pull = <TEGRA_PIN_PULL_NONE>;
+ nvidia,tristate = <TEGRA_PIN_DISABLE>;
+ nvidia,enable-input = <TEGRA_PIN_DISABLE>;
+ };
+
+ /* Apalis USBH_OC# */
+ pex-l0-clkreq-n-pdd2 {
+ nvidia,pins = "pex_l0_clkreq_n_pdd2";
+ nvidia,function = "rsvd3";
+ nvidia,pull = <TEGRA_PIN_PULL_NONE>;
+ nvidia,tristate = <TEGRA_PIN_DISABLE>;
+ nvidia,enable-input = <TEGRA_PIN_ENABLE>;
+ };
+
/* Apalis USBO1_EN */
gen2-i2c-scl-pt5 {
nvidia,pins = "gen2_i2c_scl_pt5";
@@ -361,6 +589,16 @@
nvidia,enable-input = <TEGRA_PIN_ENABLE>;
};
+ /* Apalis VGA1 not supported and therefore disabled */
+ crt-hsync-pv6 {
+ nvidia,pins = "crt_hsync_pv6",
+ "crt_vsync_pv7";
+ nvidia,function = "rsvd2";
+ nvidia,pull = <TEGRA_PIN_PULL_DOWN>;
+ nvidia,tristate = <TEGRA_PIN_ENABLE>;
+ nvidia,enable-input = <TEGRA_PIN_DISABLE>;
+ };
+
/* Apalis WAKE1_MICO */
pv1 {
nvidia,pins = "pv1";
@@ -395,6 +633,33 @@
nvidia,enable-input = <TEGRA_PIN_ENABLE>;
};
+ /* LAN i210/i211 DEV_OFF_N, PE_RST_N (On-module) */
+ pex-l2-prsnt-n-pdd7 {
+ nvidia,pins = "pex_l2_prsnt_n_pdd7",
+ "pex_l2_rst_n_pcc6";
+ nvidia,function = "pcie";
+ nvidia,pull = <TEGRA_PIN_PULL_NONE>;
+ nvidia,tristate = <TEGRA_PIN_DISABLE>;
+ nvidia,enable-input = <TEGRA_PIN_DISABLE>;
+ };
+ /* LAN i210/i211 PE_WAKE_N, SDP3 (On-module) */
+ pex-wake-n-pdd3 {
+ nvidia,pins = "pex_wake_n_pdd3",
+ "pex_l2_clkreq_n_pcc7";
+ nvidia,function = "pcie";
+ nvidia,pull = <TEGRA_PIN_PULL_NONE>;
+ nvidia,tristate = <TEGRA_PIN_DISABLE>;
+ nvidia,enable-input = <TEGRA_PIN_ENABLE>;
+ };
+ /* LAN i210/i211 SMB_ALERT_N (On-module) */
+ sys-clk-req-pz5 {
+ nvidia,pins = "sys_clk_req_pz5";
+ nvidia,function = "rsvd2";
+ nvidia,pull = <TEGRA_PIN_PULL_NONE>;
+ nvidia,tristate = <TEGRA_PIN_DISABLE>;
+ nvidia,enable-input = <TEGRA_PIN_ENABLE>;
+ };
+
/* LVDS Transceiver Configuration */
pbb0 {
nvidia,pins = "pbb0",
@@ -417,6 +682,111 @@
nvidia,enable-input = <TEGRA_PIN_DISABLE>;
};
+ /* Not connected and therefore disabled */
+ clk-32k-out-pa0 {
+ nvidia,pins = "clk3_out_pee0",
+ "clk3_req_pee1",
+ "clk_32k_out_pa0",
+ "dap4_din_pp5",
+ "dap4_dout_pp6",
+ "dap4_fs_pp4",
+ "dap4_sclk_pp7";
+ nvidia,function = "rsvd2";
+ nvidia,pull = <TEGRA_PIN_PULL_DOWN>;
+ nvidia,tristate = <TEGRA_PIN_ENABLE>;
+ nvidia,enable-input = <TEGRA_PIN_DISABLE>;
+ };
+ dap2-fs-pa2 {
+ nvidia,pins = "dap2_fs_pa2",
+ "dap2_sclk_pa3",
+ "dap2_din_pa4",
+ "dap2_dout_pa5",
+ "lcd_dc0_pn6",
+ "lcd_m1_pw1",
+ "lcd_pwr1_pc1",
+ "pex_l1_clkreq_n_pdd6",
+ "pex_l1_prsnt_n_pdd4",
+ "pex_l1_rst_n_pdd5";
+ nvidia,function = "rsvd3";
+ nvidia,pull = <TEGRA_PIN_PULL_DOWN>;
+ nvidia,tristate = <TEGRA_PIN_ENABLE>;
+ nvidia,enable-input = <TEGRA_PIN_DISABLE>;
+ };
+ gmi-ad0-pg0 {
+ nvidia,pins = "gmi_ad0_pg0",
+ "gmi_ad2_pg2",
+ "gmi_ad3_pg3",
+ "gmi_ad4_pg4",
+ "gmi_ad5_pg5",
+ "gmi_ad6_pg6",
+ "gmi_ad7_pg7",
+ "gmi_ad8_ph0",
+ "gmi_ad9_ph1",
+ "gmi_ad10_ph2",
+ "gmi_ad11_ph3",
+ "gmi_ad12_ph4",
+ "gmi_ad13_ph5",
+ "gmi_ad14_ph6",
+ "gmi_ad15_ph7",
+ "gmi_adv_n_pk0",
+ "gmi_clk_pk1",
+ "gmi_cs4_n_pk2",
+ "gmi_cs2_n_pk3",
+ "gmi_dqs_pi2",
+ "gmi_iordy_pi5",
+ "gmi_oe_n_pi1",
+ "gmi_wait_pi7",
+ "gmi_wr_n_pi0",
+ "lcd_cs1_n_pw0",
+ "pu0",
+ "pu1",
+ "pu2";
+ nvidia,function = "rsvd4";
+ nvidia,pull = <TEGRA_PIN_PULL_DOWN>;
+ nvidia,tristate = <TEGRA_PIN_ENABLE>;
+ nvidia,enable-input = <TEGRA_PIN_DISABLE>;
+ };
+ gmi-cs0-n-pj0 {
+ nvidia,pins = "gmi_cs0_n_pj0",
+ "gmi_cs1_n_pj2",
+ "gmi_cs3_n_pk4";
+ nvidia,function = "rsvd1";
+ nvidia,pull = <TEGRA_PIN_PULL_DOWN>;
+ nvidia,tristate = <TEGRA_PIN_ENABLE>;
+ nvidia,enable-input = <TEGRA_PIN_DISABLE>;
+ };
+ gmi-cs6-n-pi3 {
+ nvidia,pins = "gmi_cs6_n_pi3";
+ nvidia,function = "sata";
+ nvidia,pull = <TEGRA_PIN_PULL_DOWN>;
+ nvidia,tristate = <TEGRA_PIN_ENABLE>;
+ nvidia,enable-input = <TEGRA_PIN_DISABLE>;
+ };
+ gmi-cs7-n-pi6 {
+ nvidia,pins = "gmi_cs7_n_pi6";
+ nvidia,function = "gmi_alt";
+ nvidia,pull = <TEGRA_PIN_PULL_DOWN>;
+ nvidia,tristate = <TEGRA_PIN_ENABLE>;
+ nvidia,enable-input = <TEGRA_PIN_DISABLE>;
+ };
+ lcd-pwr0-pb2 {
+ nvidia,pins = "lcd_pwr0_pb2",
+ "lcd_pwr2_pc6",
+ "lcd_wr_n_pz3";
+ nvidia,function = "hdcp";
+ nvidia,pull = <TEGRA_PIN_PULL_DOWN>;
+ nvidia,tristate = <TEGRA_PIN_ENABLE>;
+ nvidia,enable-input = <TEGRA_PIN_DISABLE>;
+ };
+ uart2-cts-n-pj5 {
+ nvidia,pins = "uart2_cts_n_pj5",
+ "uart2_rts_n_pj6";
+ nvidia,function = "gmi";
+ nvidia,pull = <TEGRA_PIN_PULL_DOWN>;
+ nvidia,tristate = <TEGRA_PIN_ENABLE>;
+ nvidia,enable-input = <TEGRA_PIN_DISABLE>;
+ };
+
/* Power I2C (On-module) */
pwr-i2c-scl-pz6 {
nvidia,pins = "pwr_i2c_scl_pz6",
--
2.14.4
^ permalink raw reply related [flat|nested] 41+ messages in thread
* [PATCH v2 19/34] ARM: tegra: apalis_t30: use proper irq-gpio for stmpe811
2018-08-31 16:37 [PATCH v2 00/34] ARM: dts: tegra: apalis_t30: major revamp incl. v1.1 hardware support Marcel Ziswiler
` (17 preceding siblings ...)
2018-08-31 16:38 ` [PATCH v2 18/34] ARM: tegra: apalis_t30: add missing pinmux Marcel Ziswiler
@ 2018-08-31 16:38 ` Marcel Ziswiler
2018-08-31 16:38 ` [PATCH v2 20/34] ARM: tegra: apalis_t30: further lm95245 temperature sensor annotation Marcel Ziswiler
` (15 subsequent siblings)
34 siblings, 0 replies; 41+ messages in thread
From: Marcel Ziswiler @ 2018-08-31 16:38 UTC (permalink / raw)
To: devicetree, linux-tegra, linux-kernel
Cc: Marcel Ziswiler, Thierry Reding, Jonathan Hunter, Rob Herring,
Mark Rutland
From: Marcel Ziswiler <marcel.ziswiler@toradex.com>
Use proper irq-gpio for stmpe811 touch controller.
Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
---
Changes in v2: None
arch/arm/boot/dts/tegra30-apalis.dtsi | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/arch/arm/boot/dts/tegra30-apalis.dtsi b/arch/arm/boot/dts/tegra30-apalis.dtsi
index e37d22e2ceef..43d914f754e8 100644
--- a/arch/arm/boot/dts/tegra30-apalis.dtsi
+++ b/arch/arm/boot/dts/tegra30-apalis.dtsi
@@ -975,8 +975,7 @@
stmpe811@41 {
compatible = "st,stmpe811";
reg = <0x41>;
- interrupts = <TEGRA_GPIO(V, 0) IRQ_TYPE_LEVEL_LOW>;
- interrupt-parent = <&gpio>;
+ irq-gpio = <&gpio TEGRA_GPIO(V, 0) IRQ_TYPE_LEVEL_LOW>;
interrupt-controller;
id = <0>;
blocks = <0x5>;
--
2.14.4
^ permalink raw reply related [flat|nested] 41+ messages in thread
* [PATCH v2 20/34] ARM: tegra: apalis_t30: further lm95245 temperature sensor annotation
2018-08-31 16:37 [PATCH v2 00/34] ARM: dts: tegra: apalis_t30: major revamp incl. v1.1 hardware support Marcel Ziswiler
` (18 preceding siblings ...)
2018-08-31 16:38 ` [PATCH v2 19/34] ARM: tegra: apalis_t30: use proper irq-gpio for stmpe811 Marcel Ziswiler
@ 2018-08-31 16:38 ` Marcel Ziswiler
2018-08-31 16:38 ` [PATCH v2 21/34] ARM: tegra: apalis_t30: add i2c-thermtrip Marcel Ziswiler
` (14 subsequent siblings)
34 siblings, 0 replies; 41+ messages in thread
From: Marcel Ziswiler @ 2018-08-31 16:38 UTC (permalink / raw)
To: devicetree, linux-tegra, linux-kernel
Cc: Marcel Ziswiler, Thierry Reding, Jonathan Hunter, Rob Herring,
Mark Rutland
From: Marcel Ziswiler <marcel.ziswiler@toradex.com>
Further LM95245 temperature sensor annotation.
Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
---
Changes in v2: None
arch/arm/boot/dts/tegra30-apalis.dtsi | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/arch/arm/boot/dts/tegra30-apalis.dtsi b/arch/arm/boot/dts/tegra30-apalis.dtsi
index 43d914f754e8..c3e37d944c62 100644
--- a/arch/arm/boot/dts/tegra30-apalis.dtsi
+++ b/arch/arm/boot/dts/tegra30-apalis.dtsi
@@ -1009,7 +1009,7 @@
/*
* LM95245 temperature sensor
- * Note: OVERT_N directly connected to PMIC PWRDN
+ * Note: OVERT1# directly connected to TPS65911 PMIC PWRDN
*/
temp-sensor@4c {
compatible = "national,lm95245";
--
2.14.4
^ permalink raw reply related [flat|nested] 41+ messages in thread
* [PATCH v2 21/34] ARM: tegra: apalis_t30: add i2c-thermtrip
2018-08-31 16:37 [PATCH v2 00/34] ARM: dts: tegra: apalis_t30: major revamp incl. v1.1 hardware support Marcel Ziswiler
` (19 preceding siblings ...)
2018-08-31 16:38 ` [PATCH v2 20/34] ARM: tegra: apalis_t30: further lm95245 temperature sensor annotation Marcel Ziswiler
@ 2018-08-31 16:38 ` Marcel Ziswiler
2018-08-31 16:38 ` [PATCH v2 22/34] ARM: tegra: apalis_t30: add proper emmc vmmc and vqmmc supplies Marcel Ziswiler
` (13 subsequent siblings)
34 siblings, 0 replies; 41+ messages in thread
From: Marcel Ziswiler @ 2018-08-31 16:38 UTC (permalink / raw)
To: devicetree, linux-tegra, linux-kernel
Cc: Marcel Ziswiler, Thierry Reding, Jonathan Hunter, Rob Herring,
Mark Rutland
From: Marcel Ziswiler <marcel.ziswiler@toradex.com>
Add i2c-thermtrip which would set the DEV_OFF bit in the DCDC control
register of the TPS65911 PMIC.
Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
---
Changes in v2:
- When running some more tests I realized that the reg-addr should
really be 0x3f. Fix this.
arch/arm/boot/dts/tegra30-apalis.dtsi | 8 ++++++++
1 file changed, 8 insertions(+)
diff --git a/arch/arm/boot/dts/tegra30-apalis.dtsi b/arch/arm/boot/dts/tegra30-apalis.dtsi
index c3e37d944c62..02d0117e9398 100644
--- a/arch/arm/boot/dts/tegra30-apalis.dtsi
+++ b/arch/arm/boot/dts/tegra30-apalis.dtsi
@@ -1071,6 +1071,14 @@
nvidia,core-pwr-off-time = <0>;
nvidia,core-power-req-active-high;
nvidia,sys-clock-req-active-high;
+
+ /* Set DEV_OFF bit in DCDC control register of TPS65911 PMIC */
+ i2c-thermtrip {
+ nvidia,i2c-controller-id = <4>;
+ nvidia,bus-addr = <0x2d>;
+ nvidia,reg-addr = <0x3f>;
+ nvidia,reg-data = <0x1>;
+ };
};
ahub@70080000 {
--
2.14.4
^ permalink raw reply related [flat|nested] 41+ messages in thread
* [PATCH v2 22/34] ARM: tegra: apalis_t30: add proper emmc vmmc and vqmmc supplies
2018-08-31 16:37 [PATCH v2 00/34] ARM: dts: tegra: apalis_t30: major revamp incl. v1.1 hardware support Marcel Ziswiler
` (20 preceding siblings ...)
2018-08-31 16:38 ` [PATCH v2 21/34] ARM: tegra: apalis_t30: add i2c-thermtrip Marcel Ziswiler
@ 2018-08-31 16:38 ` Marcel Ziswiler
2018-08-31 16:38 ` [PATCH v2 23/34] ARM: tegra: apalis_t30: enable emmc ddr52 mode Marcel Ziswiler
` (12 subsequent siblings)
34 siblings, 0 replies; 41+ messages in thread
From: Marcel Ziswiler @ 2018-08-31 16:38 UTC (permalink / raw)
To: devicetree, linux-tegra, linux-kernel
Cc: Marcel Ziswiler, Thierry Reding, Jonathan Hunter, Rob Herring,
Mark Rutland
From: Marcel Ziswiler <marcel.ziswiler@toradex.com>
Add proper eMMC vmmc and vqmmc supplies e.g. fixing signalling voltage.
Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
---
Changes in v2: None
arch/arm/boot/dts/tegra30-apalis.dtsi | 2 ++
1 file changed, 2 insertions(+)
diff --git a/arch/arm/boot/dts/tegra30-apalis.dtsi b/arch/arm/boot/dts/tegra30-apalis.dtsi
index 02d0117e9398..2e2cdd454fe3 100644
--- a/arch/arm/boot/dts/tegra30-apalis.dtsi
+++ b/arch/arm/boot/dts/tegra30-apalis.dtsi
@@ -1092,6 +1092,8 @@
status = "okay";
bus-width = <8>;
non-removable;
+ vmmc-supply = <®_module_3v3>; /* VCC */
+ vqmmc-supply = <®_1v8_vio>; /* VCCQ */
};
clocks {
--
2.14.4
^ permalink raw reply related [flat|nested] 41+ messages in thread
* [PATCH v2 23/34] ARM: tegra: apalis_t30: enable emmc ddr52 mode
2018-08-31 16:37 [PATCH v2 00/34] ARM: dts: tegra: apalis_t30: major revamp incl. v1.1 hardware support Marcel Ziswiler
` (21 preceding siblings ...)
2018-08-31 16:38 ` [PATCH v2 22/34] ARM: tegra: apalis_t30: add proper emmc vmmc and vqmmc supplies Marcel Ziswiler
@ 2018-08-31 16:38 ` Marcel Ziswiler
2018-08-31 16:38 ` [PATCH v2 24/34] ARM: tegra: apalis_t30: get rid of fake clocks simple bus Marcel Ziswiler
` (11 subsequent siblings)
34 siblings, 0 replies; 41+ messages in thread
From: Marcel Ziswiler @ 2018-08-31 16:38 UTC (permalink / raw)
To: devicetree, linux-tegra, linux-kernel
Cc: Marcel Ziswiler, Thierry Reding, Jonathan Hunter, Rob Herring,
Mark Rutland
From: Marcel Ziswiler <marcel.ziswiler@toradex.com>
Add mmc-ddr-1_8v property enabling eMMC DDR52 mode.
root@apalis-t30:~# cat /sys/kernel/debug/mmc1/ios
clock: 52000000 Hz
actual clock: 52000000 Hz
vdd: 21 (3.3 ~ 3.4 V)
bus mode: 2 (push-pull)
chip select: 0 (don't care)
power mode: 2 (on)
bus width: 3 (8 bits)
timing spec: 8 (mmc DDR52)
signal voltage: 1 (1.80 V)
driver type: 0 (driver type B)
root@apalis-t30:~# hdparm -t /dev/mmcblk1
/dev/mmcblk1:
Timing buffered disk reads: 232 MB in 3.01 seconds = 77.10 MB/sec
Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
---
Changes in v2: None
arch/arm/boot/dts/tegra30-apalis.dtsi | 1 +
1 file changed, 1 insertion(+)
diff --git a/arch/arm/boot/dts/tegra30-apalis.dtsi b/arch/arm/boot/dts/tegra30-apalis.dtsi
index 2e2cdd454fe3..6d6f17422478 100644
--- a/arch/arm/boot/dts/tegra30-apalis.dtsi
+++ b/arch/arm/boot/dts/tegra30-apalis.dtsi
@@ -1094,6 +1094,7 @@
non-removable;
vmmc-supply = <®_module_3v3>; /* VCC */
vqmmc-supply = <®_1v8_vio>; /* VCCQ */
+ mmc-ddr-1_8v;
};
clocks {
--
2.14.4
^ permalink raw reply related [flat|nested] 41+ messages in thread
* [PATCH v2 24/34] ARM: tegra: apalis_t30: get rid of fake clocks simple bus
2018-08-31 16:37 [PATCH v2 00/34] ARM: dts: tegra: apalis_t30: major revamp incl. v1.1 hardware support Marcel Ziswiler
` (22 preceding siblings ...)
2018-08-31 16:38 ` [PATCH v2 23/34] ARM: tegra: apalis_t30: enable emmc ddr52 mode Marcel Ziswiler
@ 2018-08-31 16:38 ` Marcel Ziswiler
2018-08-31 16:38 ` [PATCH v2 25/34] ARM: tegra: apalis_t30: line break long compatible property line Marcel Ziswiler
` (10 subsequent siblings)
34 siblings, 0 replies; 41+ messages in thread
From: Marcel Ziswiler @ 2018-08-31 16:38 UTC (permalink / raw)
To: devicetree, linux-tegra, linux-kernel
Cc: Marcel Ziswiler, Thierry Reding, Jonathan Hunter, Rob Herring,
Mark Rutland
From: Marcel Ziswiler <marcel.ziswiler@toradex.com>
Get rid of the fake clocks simple bus and use node names as per the
actual schematics.
Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
---
Changes in v2:
- Get rid of fake clocks simple bus as suggested by Rob.
arch/arm/boot/dts/tegra30-apalis.dtsi | 27 +++++++++------------------
1 file changed, 9 insertions(+), 18 deletions(-)
diff --git a/arch/arm/boot/dts/tegra30-apalis.dtsi b/arch/arm/boot/dts/tegra30-apalis.dtsi
index 6d6f17422478..d80101df2228 100644
--- a/arch/arm/boot/dts/tegra30-apalis.dtsi
+++ b/arch/arm/boot/dts/tegra30-apalis.dtsi
@@ -1097,25 +1097,16 @@
mmc-ddr-1_8v;
};
- clocks {
- compatible = "simple-bus";
- #address-cells = <1>;
- #size-cells = <0>;
-
- clk32k_in: clk@0 {
- compatible = "fixed-clock";
- reg = <0>;
- #clock-cells = <0>;
- clock-frequency = <32768>;
- };
+ clk32k_in: xtal1 {
+ compatible = "fixed-clock";
+ #clock-cells = <0>;
+ clock-frequency = <32768>;
+ };
- clk16m: clk@1 {
- compatible = "fixed-clock";
- reg = <1>;
- #clock-cells = <0>;
- clock-frequency = <16000000>;
- clock-output-names = "clk16m";
- };
+ clk16m: osc4 {
+ compatible = "fixed-clock";
+ #clock-cells = <0>;
+ clock-frequency = <16000000>;
};
reg_1v8_avdd_hdmi_pll: regulator-1v8-avdd-hdmi-pll {
--
2.14.4
^ permalink raw reply related [flat|nested] 41+ messages in thread
* [PATCH v2 25/34] ARM: tegra: apalis_t30: line break long compatible property line
2018-08-31 16:37 [PATCH v2 00/34] ARM: dts: tegra: apalis_t30: major revamp incl. v1.1 hardware support Marcel Ziswiler
` (23 preceding siblings ...)
2018-08-31 16:38 ` [PATCH v2 24/34] ARM: tegra: apalis_t30: get rid of fake clocks simple bus Marcel Ziswiler
@ 2018-08-31 16:38 ` Marcel Ziswiler
2018-08-31 16:38 ` [PATCH v2 26/34] dt-bindings: add broadcom (formerly plx technology) vendor prefix Marcel Ziswiler
` (9 subsequent siblings)
34 siblings, 0 replies; 41+ messages in thread
From: Marcel Ziswiler @ 2018-08-31 16:38 UTC (permalink / raw)
To: devicetree, linux-tegra, linux-kernel
Cc: Marcel Ziswiler, Thierry Reding, Jonathan Hunter, Rob Herring,
Mark Rutland
From: Marcel Ziswiler <marcel.ziswiler@toradex.com>
Line break long compatible property line.
Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
---
Changes in v2: None
arch/arm/boot/dts/tegra30-apalis-eval.dts | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/arch/arm/boot/dts/tegra30-apalis-eval.dts b/arch/arm/boot/dts/tegra30-apalis-eval.dts
index 5d1bc8560dbe..97e2f1822a94 100644
--- a/arch/arm/boot/dts/tegra30-apalis-eval.dts
+++ b/arch/arm/boot/dts/tegra30-apalis-eval.dts
@@ -6,7 +6,8 @@
/ {
model = "Toradex Apalis T30 on Apalis Evaluation Board";
- compatible = "toradex,apalis_t30-eval", "toradex,apalis_t30", "nvidia,tegra30";
+ compatible = "toradex,apalis_t30-eval", "toradex,apalis_t30",
+ "nvidia,tegra30";
aliases {
rtc0 = "/i2c@7000c000/rtc@68";
--
2.14.4
^ permalink raw reply related [flat|nested] 41+ messages in thread
* [PATCH v2 26/34] dt-bindings: add broadcom (formerly plx technology) vendor prefix
2018-08-31 16:37 [PATCH v2 00/34] ARM: dts: tegra: apalis_t30: major revamp incl. v1.1 hardware support Marcel Ziswiler
` (24 preceding siblings ...)
2018-08-31 16:38 ` [PATCH v2 25/34] ARM: tegra: apalis_t30: line break long compatible property line Marcel Ziswiler
@ 2018-08-31 16:38 ` Marcel Ziswiler
2018-08-31 18:01 ` Andreas Färber
2018-08-31 16:38 ` [PATCH v2 27/34] ARM: tegra: apalis_t30: drop module level model and compatible Marcel Ziswiler
` (8 subsequent siblings)
34 siblings, 1 reply; 41+ messages in thread
From: Marcel Ziswiler @ 2018-08-31 16:38 UTC (permalink / raw)
To: devicetree, linux-tegra, linux-kernel
Cc: Marcel Ziswiler, Thierry Reding, David Lechner, Rob Herring,
Johan Hovold, Alexandre Belloni, Mark Rutland,
Andreas Färber
From: Marcel Ziswiler <marcel.ziswiler@toradex.com>
PLX Technology meanwhile got bought by Broadcom Corporation but the
vendor prefix plx is still used in 8 current device trees. This silences
the following checkpatch.pl warning:
WARNING: DT compatible string vendor "plx" appears un-documented
-- check ./Documentation/devicetree/bindings/vendor-prefixes.txt
Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
---
Changes in v2:
- Replace "[PATCH 27/28] ARM: tegra: apalis_t30: fix pcie switch vendor
compatible" with "[PATCH v2 26/34] dt-bindings: add broadcom (formerly
plx technology) vendor prefix" as suggested by Stefan.
Documentation/devicetree/bindings/vendor-prefixes.txt | 1 +
1 file changed, 1 insertion(+)
diff --git a/Documentation/devicetree/bindings/vendor-prefixes.txt b/Documentation/devicetree/bindings/vendor-prefixes.txt
index 2c3fc512e746..e40312dcba7d 100644
--- a/Documentation/devicetree/bindings/vendor-prefixes.txt
+++ b/Documentation/devicetree/bindings/vendor-prefixes.txt
@@ -297,6 +297,7 @@ pine64 Pine64
pixcir PIXCIR MICROELECTRONICS Co., Ltd
plathome Plat'Home Co., Ltd.
plda PLDA
+plx Broadcom Corporation (formerly PLX Technology)
portwell Portwell Inc.
poslab Poslab Technology Co., Ltd.
powervr PowerVR (deprecated, use img)
--
2.14.4
^ permalink raw reply related [flat|nested] 41+ messages in thread
* [PATCH v2 27/34] ARM: tegra: apalis_t30: drop module level model and compatible
2018-08-31 16:37 [PATCH v2 00/34] ARM: dts: tegra: apalis_t30: major revamp incl. v1.1 hardware support Marcel Ziswiler
` (25 preceding siblings ...)
2018-08-31 16:38 ` [PATCH v2 26/34] dt-bindings: add broadcom (formerly plx technology) vendor prefix Marcel Ziswiler
@ 2018-08-31 16:38 ` Marcel Ziswiler
2018-08-31 16:38 ` [PATCH v2 28/34] ARM: tegra: apalis_t30: drop obsolete spidev nodes Marcel Ziswiler
` (7 subsequent siblings)
34 siblings, 0 replies; 41+ messages in thread
From: Marcel Ziswiler @ 2018-08-31 16:38 UTC (permalink / raw)
To: devicetree, linux-tegra, linux-kernel
Cc: Marcel Ziswiler, Thierry Reding, Jonathan Hunter, Rob Herring,
Mark Rutland
From: Marcel Ziswiler <marcel.ziswiler@toradex.com>
Drop model and compatible nodes from the module level device tree as
they get overridden by the carrier board device tree anyway.
Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
---
Changes in v2:
- New patch as suggested by Rob.
arch/arm/boot/dts/tegra30-apalis.dtsi | 3 ---
1 file changed, 3 deletions(-)
diff --git a/arch/arm/boot/dts/tegra30-apalis.dtsi b/arch/arm/boot/dts/tegra30-apalis.dtsi
index d80101df2228..e7793f3b19d2 100644
--- a/arch/arm/boot/dts/tegra30-apalis.dtsi
+++ b/arch/arm/boot/dts/tegra30-apalis.dtsi
@@ -7,9 +7,6 @@
* 2GB: V1.0B, V1.0C, V1.0E, V1.1A
*/
/ {
- model = "Toradex Apalis T30";
- compatible = "toradex,apalis_t30", "nvidia,tegra30";
-
memory@80000000 {
reg = <0x80000000 0x40000000>;
};
--
2.14.4
^ permalink raw reply related [flat|nested] 41+ messages in thread
* [PATCH v2 28/34] ARM: tegra: apalis_t30: drop obsolete spidev nodes
2018-08-31 16:37 [PATCH v2 00/34] ARM: dts: tegra: apalis_t30: major revamp incl. v1.1 hardware support Marcel Ziswiler
` (26 preceding siblings ...)
2018-08-31 16:38 ` [PATCH v2 27/34] ARM: tegra: apalis_t30: drop module level model and compatible Marcel Ziswiler
@ 2018-08-31 16:38 ` Marcel Ziswiler
2018-08-31 16:38 ` [PATCH v2 29/34] ARM: tegra: apalis_t30: hog group for pcie switch reset gpio Marcel Ziswiler
` (6 subsequent siblings)
34 siblings, 0 replies; 41+ messages in thread
From: Marcel Ziswiler @ 2018-08-31 16:38 UTC (permalink / raw)
To: devicetree, linux-tegra, linux-kernel
Cc: Marcel Ziswiler, Thierry Reding, Jonathan Hunter, Rob Herring,
Mark Rutland
From: Marcel Ziswiler <marcel.ziswiler@toradex.com>
Drop obsolete spidev device tree nodes as nowadays one should do this
by binding the spidev driver to specific instances/chip selects at
runtime.
Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
---
Changes in v2:
- New patch.
arch/arm/boot/dts/tegra30-apalis-eval.dts | 12 ------------
1 file changed, 12 deletions(-)
diff --git a/arch/arm/boot/dts/tegra30-apalis-eval.dts b/arch/arm/boot/dts/tegra30-apalis-eval.dts
index 97e2f1822a94..bbde98fd9712 100644
--- a/arch/arm/boot/dts/tegra30-apalis-eval.dts
+++ b/arch/arm/boot/dts/tegra30-apalis-eval.dts
@@ -111,24 +111,12 @@
spi@7000d400 {
status = "okay";
spi-max-frequency = <25000000>;
-
- spidev0: spidev@1 {
- compatible = "spidev";
- reg = <1>;
- spi-max-frequency = <25000000>;
- };
};
/* SPI5: Apalis SPI2 */
spi@7000dc00 {
status = "okay";
spi-max-frequency = <25000000>;
-
- spidev1: spidev@2 {
- compatible = "spidev";
- reg = <2>;
- spi-max-frequency = <25000000>;
- };
};
hda@70030000 {
--
2.14.4
^ permalink raw reply related [flat|nested] 41+ messages in thread
* [PATCH v2 29/34] ARM: tegra: apalis_t30: hog group for pcie switch reset gpio
2018-08-31 16:37 [PATCH v2 00/34] ARM: dts: tegra: apalis_t30: major revamp incl. v1.1 hardware support Marcel Ziswiler
` (27 preceding siblings ...)
2018-08-31 16:38 ` [PATCH v2 28/34] ARM: tegra: apalis_t30: drop obsolete spidev nodes Marcel Ziswiler
@ 2018-08-31 16:38 ` Marcel Ziswiler
2018-08-31 16:38 ` [PATCH v2 30/34] ARM: tegra: apalis_t30: rename hdmiddc to hdmi_ddc Marcel Ziswiler
` (5 subsequent siblings)
34 siblings, 0 replies; 41+ messages in thread
From: Marcel Ziswiler @ 2018-08-31 16:38 UTC (permalink / raw)
To: devicetree, linux-tegra, linux-kernel
Cc: Marcel Ziswiler, Thierry Reding, Jonathan Hunter, Rob Herring,
Mark Rutland
From: Marcel Ziswiler <marcel.ziswiler@toradex.com>
The Apalis Evaluation Board uses Apalis GPIO7 on MXM3 pin 15 as reset
signal for its PLX PEX 8605 PCIe Switch.
Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
---
Changes in v2:
- New patch.
arch/arm/boot/dts/tegra30-apalis-eval.dts | 10 ++++++++++
1 file changed, 10 insertions(+)
diff --git a/arch/arm/boot/dts/tegra30-apalis-eval.dts b/arch/arm/boot/dts/tegra30-apalis-eval.dts
index bbde98fd9712..9d9dda6c0246 100644
--- a/arch/arm/boot/dts/tegra30-apalis-eval.dts
+++ b/arch/arm/boot/dts/tegra30-apalis-eval.dts
@@ -240,3 +240,13 @@
vin-supply = <®_5v0>;
};
};
+
+&gpio {
+ /* Apalis GPIO7 MXM3 pin 15 PLX PEX 8605 PCIe Switch Reset */
+ pex-perst-n {
+ gpio-hog;
+ gpios = <TEGRA_GPIO(S, 7) GPIO_ACTIVE_HIGH>;
+ output-high;
+ line-name = "PEX_PERST_N";
+ };
+};
--
2.14.4
^ permalink raw reply related [flat|nested] 41+ messages in thread
* [PATCH v2 30/34] ARM: tegra: apalis_t30: rename hdmiddc to hdmi_ddc
2018-08-31 16:37 [PATCH v2 00/34] ARM: dts: tegra: apalis_t30: major revamp incl. v1.1 hardware support Marcel Ziswiler
` (28 preceding siblings ...)
2018-08-31 16:38 ` [PATCH v2 29/34] ARM: tegra: apalis_t30: hog group for pcie switch reset gpio Marcel Ziswiler
@ 2018-08-31 16:38 ` Marcel Ziswiler
2018-08-31 16:38 ` [PATCH v2 31/34] ARM: tegra: apalis_t30: rename tps65911@2d, stmpe811@41 and tps62362@60 Marcel Ziswiler
` (4 subsequent siblings)
34 siblings, 0 replies; 41+ messages in thread
From: Marcel Ziswiler @ 2018-08-31 16:38 UTC (permalink / raw)
To: devicetree, linux-tegra, linux-kernel
Cc: Marcel Ziswiler, Thierry Reding, Jonathan Hunter, Rob Herring,
Mark Rutland
From: Marcel Ziswiler <marcel.ziswiler@toradex.com>
Rename hdmiddc to hdmi_ddc to be more in-line with other device trees.
Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
---
Changes in v2:
- New patch.
arch/arm/boot/dts/tegra30-apalis-eval.dts | 2 +-
arch/arm/boot/dts/tegra30-apalis.dtsi | 4 ++--
2 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/arch/arm/boot/dts/tegra30-apalis-eval.dts b/arch/arm/boot/dts/tegra30-apalis-eval.dts
index 9d9dda6c0246..9381f65a9bf5 100644
--- a/arch/arm/boot/dts/tegra30-apalis-eval.dts
+++ b/arch/arm/boot/dts/tegra30-apalis-eval.dts
@@ -103,7 +103,7 @@
};
/* DDC: I2C2_SDA/SCL on MXM3 pin 205/207 (e.g. display EDID) */
- hdmiddc: i2c@7000c700 {
+ i2c@7000c700 {
status = "okay";
};
diff --git a/arch/arm/boot/dts/tegra30-apalis.dtsi b/arch/arm/boot/dts/tegra30-apalis.dtsi
index e7793f3b19d2..f15954995231 100644
--- a/arch/arm/boot/dts/tegra30-apalis.dtsi
+++ b/arch/arm/boot/dts/tegra30-apalis.dtsi
@@ -46,7 +46,7 @@
host1x@50000000 {
hdmi@54280000 {
- nvidia,ddc-i2c-bus = <&hdmiddc>;
+ nvidia,ddc-i2c-bus = <&hdmi_ddc>;
nvidia,hpd-gpio =
<&gpio TEGRA_GPIO(N, 7) GPIO_ACTIVE_HIGH>;
pll-supply = <®_1v8_avdd_hdmi_pll>;
@@ -831,7 +831,7 @@
compatible = "nvidia,tegra30-hsuart";
};
- hdmiddc: i2c@7000c700 {
+ hdmi_ddc: i2c@7000c700 {
clock-frequency = <10000>;
};
--
2.14.4
^ permalink raw reply related [flat|nested] 41+ messages in thread
* [PATCH v2 31/34] ARM: tegra: apalis_t30: rename tps65911@2d, stmpe811@41 and tps62362@60
2018-08-31 16:37 [PATCH v2 00/34] ARM: dts: tegra: apalis_t30: major revamp incl. v1.1 hardware support Marcel Ziswiler
` (29 preceding siblings ...)
2018-08-31 16:38 ` [PATCH v2 30/34] ARM: tegra: apalis_t30: rename hdmiddc to hdmi_ddc Marcel Ziswiler
@ 2018-08-31 16:38 ` Marcel Ziswiler
2018-08-31 16:38 ` [PATCH v2 32/34] ARM: tegra: apalis_t30: fix mcp2515 can controller interrupt polarity Marcel Ziswiler
` (3 subsequent siblings)
34 siblings, 0 replies; 41+ messages in thread
From: Marcel Ziswiler @ 2018-08-31 16:38 UTC (permalink / raw)
To: devicetree, linux-tegra, linux-kernel
Cc: Marcel Ziswiler, Thierry Reding, Jonathan Hunter, Rob Herring,
Mark Rutland
From: Marcel Ziswiler <marcel.ziswiler@toradex.com>
Rename a few nodes using more common names:
- rename tps65911@2d to pmic@2d
- rename stmpe811@41 to touchscreen@41
- rename tps62362@60 to regulator@60
Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
---
Changes in v2:
- New patch as suggested by Rob.
arch/arm/boot/dts/tegra30-apalis-eval.dts | 2 +-
arch/arm/boot/dts/tegra30-apalis.dtsi | 6 +++---
2 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/arch/arm/boot/dts/tegra30-apalis-eval.dts b/arch/arm/boot/dts/tegra30-apalis-eval.dts
index 9381f65a9bf5..fdfadda72e0d 100644
--- a/arch/arm/boot/dts/tegra30-apalis-eval.dts
+++ b/arch/arm/boot/dts/tegra30-apalis-eval.dts
@@ -11,7 +11,7 @@
aliases {
rtc0 = "/i2c@7000c000/rtc@68";
- rtc1 = "/i2c@7000d000/tps65911@2d";
+ rtc1 = "/i2c@7000d000/pmic@2d";
rtc2 = "/rtc@7000e000";
serial0 = &uarta;
serial1 = &uartb;
diff --git a/arch/arm/boot/dts/tegra30-apalis.dtsi b/arch/arm/boot/dts/tegra30-apalis.dtsi
index f15954995231..a31b112f631d 100644
--- a/arch/arm/boot/dts/tegra30-apalis.dtsi
+++ b/arch/arm/boot/dts/tegra30-apalis.dtsi
@@ -853,7 +853,7 @@
clocks = <&tegra_car TEGRA30_CLK_EXTERN1>;
};
- pmic: tps65911@2d {
+ pmic: pmic@2d {
compatible = "ti,tps65911";
reg = <0x2d>;
@@ -969,7 +969,7 @@
};
/* STMPE811 touch screen controller */
- stmpe811@41 {
+ touchscreen@41 {
compatible = "st,stmpe811";
reg = <0x41>;
irq-gpio = <&gpio TEGRA_GPIO(V, 0) IRQ_TYPE_LEVEL_LOW>;
@@ -1014,7 +1014,7 @@
};
/* SW: +V1.2_VDD_CORE */
- tps62362@60 {
+ regulator@60 {
compatible = "ti,tps62362";
reg = <0x60>;
--
2.14.4
^ permalink raw reply related [flat|nested] 41+ messages in thread
* [PATCH v2 32/34] ARM: tegra: apalis_t30: fix mcp2515 can controller interrupt polarity
2018-08-31 16:37 [PATCH v2 00/34] ARM: dts: tegra: apalis_t30: major revamp incl. v1.1 hardware support Marcel Ziswiler
` (30 preceding siblings ...)
2018-08-31 16:38 ` [PATCH v2 31/34] ARM: tegra: apalis_t30: rename tps65911@2d, stmpe811@41 and tps62362@60 Marcel Ziswiler
@ 2018-08-31 16:38 ` Marcel Ziswiler
2018-08-31 16:38 ` [PATCH v2 33/34] ARM: tegra: apalis_t30: move hda node from carrier to module Marcel Ziswiler
` (2 subsequent siblings)
34 siblings, 0 replies; 41+ messages in thread
From: Marcel Ziswiler @ 2018-08-31 16:38 UTC (permalink / raw)
To: devicetree, linux-tegra, linux-kernel
Cc: Marcel Ziswiler, Thierry Reding, Jonathan Hunter, Rob Herring,
Mark Rutland
From: Marcel Ziswiler <marcel.ziswiler@toradex.com>
Fix the MCP2515 SPI CAN controller interrupt polarity which according
to its datasheet defaults to low-active aka falling edge.
Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
---
Changes in v2:
- New patch.
arch/arm/boot/dts/tegra30-apalis.dtsi | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/arch/arm/boot/dts/tegra30-apalis.dtsi b/arch/arm/boot/dts/tegra30-apalis.dtsi
index a31b112f631d..e44b2bce6736 100644
--- a/arch/arm/boot/dts/tegra30-apalis.dtsi
+++ b/arch/arm/boot/dts/tegra30-apalis.dtsi
@@ -1039,7 +1039,7 @@
reg = <1>;
clocks = <&clk16m>;
interrupt-parent = <&gpio>;
- interrupts = <TEGRA_GPIO(W, 3) IRQ_TYPE_EDGE_RISING>;
+ interrupts = <TEGRA_GPIO(W, 3) IRQ_TYPE_EDGE_FALLING>;
spi-max-frequency = <10000000>;
};
};
@@ -1054,7 +1054,7 @@
reg = <0>;
clocks = <&clk16m>;
interrupt-parent = <&gpio>;
- interrupts = <TEGRA_GPIO(W, 2) IRQ_TYPE_EDGE_RISING>;
+ interrupts = <TEGRA_GPIO(W, 2) IRQ_TYPE_EDGE_FALLING>;
spi-max-frequency = <10000000>;
};
};
--
2.14.4
^ permalink raw reply related [flat|nested] 41+ messages in thread
* [PATCH v2 33/34] ARM: tegra: apalis_t30: move hda node from carrier to module
2018-08-31 16:37 [PATCH v2 00/34] ARM: dts: tegra: apalis_t30: major revamp incl. v1.1 hardware support Marcel Ziswiler
` (31 preceding siblings ...)
2018-08-31 16:38 ` [PATCH v2 32/34] ARM: tegra: apalis_t30: fix mcp2515 can controller interrupt polarity Marcel Ziswiler
@ 2018-08-31 16:38 ` Marcel Ziswiler
2018-08-31 16:38 ` [PATCH v2 34/34] ARM: tegra: apalis_t30: support v1.1 hardware revision Marcel Ziswiler
2018-09-26 14:46 ` [PATCH v2 00/34] ARM: dts: tegra: apalis_t30: major revamp incl. v1.1 hardware support Thierry Reding
34 siblings, 0 replies; 41+ messages in thread
From: Marcel Ziswiler @ 2018-08-31 16:38 UTC (permalink / raw)
To: devicetree, linux-tegra, linux-kernel
Cc: Marcel Ziswiler, Thierry Reding, Jonathan Hunter, Rob Herring,
Mark Rutland
From: Marcel Ziswiler <marcel.ziswiler@toradex.com>
Move the hda node from the carrier board to the module level device
tree.
Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
---
Changes in v2:
- New patch.
arch/arm/boot/dts/tegra30-apalis-eval.dts | 4 ----
arch/arm/boot/dts/tegra30-apalis.dtsi | 4 ++++
2 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/arch/arm/boot/dts/tegra30-apalis-eval.dts b/arch/arm/boot/dts/tegra30-apalis-eval.dts
index fdfadda72e0d..749fc6d1ff70 100644
--- a/arch/arm/boot/dts/tegra30-apalis-eval.dts
+++ b/arch/arm/boot/dts/tegra30-apalis-eval.dts
@@ -119,10 +119,6 @@
spi-max-frequency = <25000000>;
};
- hda@70030000 {
- status = "okay";
- };
-
/* Apalis SD1 */
sdhci@78000000 {
status = "okay";
diff --git a/arch/arm/boot/dts/tegra30-apalis.dtsi b/arch/arm/boot/dts/tegra30-apalis.dtsi
index e44b2bce6736..23cecd327172 100644
--- a/arch/arm/boot/dts/tegra30-apalis.dtsi
+++ b/arch/arm/boot/dts/tegra30-apalis.dtsi
@@ -1078,6 +1078,10 @@
};
};
+ hda@70030000 {
+ status = "okay";
+ };
+
ahub@70080000 {
i2s@70080500 {
status = "okay";
--
2.14.4
^ permalink raw reply related [flat|nested] 41+ messages in thread
* [PATCH v2 34/34] ARM: tegra: apalis_t30: support v1.1 hardware revision
2018-08-31 16:37 [PATCH v2 00/34] ARM: dts: tegra: apalis_t30: major revamp incl. v1.1 hardware support Marcel Ziswiler
` (32 preceding siblings ...)
2018-08-31 16:38 ` [PATCH v2 33/34] ARM: tegra: apalis_t30: move hda node from carrier to module Marcel Ziswiler
@ 2018-08-31 16:38 ` Marcel Ziswiler
2018-09-25 18:32 ` Rob Herring
2018-09-26 14:46 ` [PATCH v2 00/34] ARM: dts: tegra: apalis_t30: major revamp incl. v1.1 hardware support Thierry Reding
34 siblings, 1 reply; 41+ messages in thread
From: Marcel Ziswiler @ 2018-08-31 16:38 UTC (permalink / raw)
To: devicetree, linux-tegra, linux-kernel
Cc: Marcel Ziswiler, Mikko Perttunen, Thierry Reding, Jonathan Hunter,
Rob Herring, Mark Rutland
From: Marcel Ziswiler <marcel.ziswiler@toradex.com>
Support the V1.1 hardware revisions with the following change:
Changed power rail for MMC1 interface to a 3.3V/1.8V switchable rail in
order to be able to run UHS SD cards in ultra high speed 1.8V mode.
[ 207.502011] mmc2: host does not support reading read-only switch,
assuming write-enable
[ 207.517011] mmc2: new ultra high speed SDR104 SDHC card at address
aaaa
[ 207.534190] mmcblk2: mmc2:aaaa SE32G 29.7 GiB
[ 207.545096] mmcblk2: p1
root@apalis-t30:~# cat /sys/kernel/debug/mmc2/ios
clock: 208000000 Hz
actual clock: 204000000 Hz
vdd: 21 (3.3 ~ 3.4 V)
bus mode: 2 (push-pull)
chip select: 0 (don't care)
power mode: 2 (on)
bus width: 2 (4 bits)
timing spec: 6 (sd uhs SDR104)
signal voltage: 1 (1.80 V)
driver type: 0 (driver type B)
root@apalis-t30:~# hdparm -t /dev/mmcblk2
/dev/mmcblk2:
Timing buffered disk reads: 256 MB in 3.02 seconds = 84.71 MB/sec
Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
---
Changes in v2:
- Updated V1.1 device trees with all applicable previous fixes.
Documentation/devicetree/bindings/arm/tegra.txt | 2 +
arch/arm/boot/dts/Makefile | 1 +
arch/arm/boot/dts/tegra30-apalis-v1.1-eval.dts | 266 +++++
arch/arm/boot/dts/tegra30-apalis-v1.1.dtsi | 1189 +++++++++++++++++++++++
arch/arm/boot/dts/tegra30-apalis.dtsi | 3 +-
5 files changed, 1459 insertions(+), 2 deletions(-)
create mode 100644 arch/arm/boot/dts/tegra30-apalis-v1.1-eval.dts
create mode 100644 arch/arm/boot/dts/tegra30-apalis-v1.1.dtsi
diff --git a/Documentation/devicetree/bindings/arm/tegra.txt b/Documentation/devicetree/bindings/arm/tegra.txt
index 32f62bb7006d..1073a5e66122 100644
--- a/Documentation/devicetree/bindings/arm/tegra.txt
+++ b/Documentation/devicetree/bindings/arm/tegra.txt
@@ -47,6 +47,8 @@ board-specific compatible values:
nvidia,ventana
toradex,apalis_t30
toradex,apalis_t30-eval
+ toradex,apalis_t30-v1.1
+ toradex,apalis_t30-v1.1-eval
toradex,apalis-tk1
toradex,apalis-tk1-eval
toradex,colibri_t20-512
diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile
index 92dc4f05cf23..f67a87c66e9e 100644
--- a/arch/arm/boot/dts/Makefile
+++ b/arch/arm/boot/dts/Makefile
@@ -1072,6 +1072,7 @@ dtb-$(CONFIG_ARCH_TEGRA_2x_SOC) += \
tegra20-ventana.dtb
dtb-$(CONFIG_ARCH_TEGRA_3x_SOC) += \
tegra30-apalis-eval.dtb \
+ tegra30-apalis-v1.1-eval.dtb \
tegra30-beaver.dtb \
tegra30-cardhu-a02.dtb \
tegra30-cardhu-a04.dtb \
diff --git a/arch/arm/boot/dts/tegra30-apalis-v1.1-eval.dts b/arch/arm/boot/dts/tegra30-apalis-v1.1-eval.dts
new file mode 100644
index 000000000000..0be50e881684
--- /dev/null
+++ b/arch/arm/boot/dts/tegra30-apalis-v1.1-eval.dts
@@ -0,0 +1,266 @@
+// SPDX-License-Identifier: GPL-2.0 OR MIT
+/dts-v1/;
+
+#include <dt-bindings/input/input.h>
+#include "tegra30-apalis-v1.1.dtsi"
+
+/ {
+ model = "Toradex Apalis T30 on Apalis Evaluation Board";
+ compatible = "toradex,apalis_t30-v1.1-eval", "toradex,apalis_t30-eval",
+ "toradex,apalis_t30-v1.1", "toradex,apalis_t30",
+ "nvidia,tegra30";
+
+ aliases {
+ rtc0 = "/i2c@7000c000/rtc@68";
+ rtc1 = "/i2c@7000d000/pmic@2d";
+ rtc2 = "/rtc@7000e000";
+ serial0 = &uarta;
+ serial1 = &uartb;
+ serial2 = &uartc;
+ serial3 = &uartd;
+ };
+
+ chosen {
+ stdout-path = "serial0:115200n8";
+ };
+
+ pcie@3000 {
+ pci@1,0 {
+ status = "okay";
+ };
+
+ pci@2,0 {
+ status = "okay";
+ };
+ };
+
+ host1x@50000000 {
+ dc@54200000 {
+ rgb {
+ status = "okay";
+ nvidia,panel = <&panel>;
+ };
+ };
+
+ hdmi@54280000 {
+ status = "okay";
+ hdmi-supply = <®_5v0>;
+ };
+ };
+
+ /* Apalis UART1 */
+ serial@70006000 {
+ status = "okay";
+ };
+
+ /* Apalis UART2 */
+ serial@70006040 {
+ status = "okay";
+ };
+
+ /* Apalis UART3 */
+ serial@70006200 {
+ status = "okay";
+ };
+
+ /* Apalis UART4 */
+ serial@70006300 {
+ status = "okay";
+ };
+
+ pwm@7000a000 {
+ status = "okay";
+ };
+
+ /*
+ * GEN1_I2C: I2C1_SDA/SCL on MXM3 pin 209/211 (e.g. RTC on carrier
+ * board)
+ */
+ i2c@7000c000 {
+ status = "okay";
+ clock-frequency = <400000>;
+
+ pcie-switch@58 {
+ compatible = "plx,pex8605";
+ reg = <0x58>;
+ };
+
+ /* M41T0M6 real time clock on carrier board */
+ rtc@68 {
+ compatible = "st,m41t0";
+ reg = <0x68>;
+ };
+ };
+
+ /* GEN2_I2C: unused */
+
+ /*
+ * CAM_I2C: I2C3_SDA/SCL on MXM3 pin 201/203 (e.g. camera sensor on
+ * carrier board)
+ */
+ i2c@7000c500 {
+ status = "okay";
+ clock-frequency = <400000>;
+ };
+
+ /* DDC: I2C2_SDA/SCL on MXM3 pin 205/207 (e.g. display EDID) */
+ i2c@7000c700 {
+ status = "okay";
+ };
+
+ /* SPI1: Apalis SPI1 */
+ spi@7000d400 {
+ status = "okay";
+ spi-max-frequency = <25000000>;
+ };
+
+ /* SPI5: Apalis SPI2 */
+ spi@7000dc00 {
+ status = "okay";
+ spi-max-frequency = <25000000>;
+ };
+
+ /* Apalis SD1 */
+ sdhci@78000000 {
+ status = "okay";
+ bus-width = <4>;
+ /* SD1_CD# */
+ cd-gpios = <&gpio TEGRA_GPIO(CC, 5) GPIO_ACTIVE_LOW>;
+ no-1-8-v;
+ };
+
+ /* Apalis MMC1 */
+ sdhci@78000400 {
+ status = "okay";
+ bus-width = <8>;
+ /* MMC1_CD# */
+ cd-gpios = <&gpio TEGRA_GPIO(V, 3) GPIO_ACTIVE_LOW>;
+ vqmmc-supply = <®_vddio_sdmmc3>;
+ };
+
+ /* EHCI instance 0: USB1_DP/N -> USBO1_DP/N */
+ usb@7d000000 {
+ status = "okay";
+ dr_mode = "otg";
+ };
+
+ usb-phy@7d000000 {
+ status = "okay";
+ vbus-supply = <®_usbo1_vbus>;
+ };
+
+ /* EHCI instance 1: USB2_DP/N -> USBH2_DP/N */
+ usb@7d004000 {
+ status = "okay";
+ };
+
+ usb-phy@7d004000 {
+ status = "okay";
+ vbus-supply = <®_usbh_vbus>;
+ };
+
+ /* EHCI instance 2: USB3_DP/N -> USBH3_DP/N */
+ usb@7d008000 {
+ status = "okay";
+ };
+
+ usb-phy@7d008000 {
+ status = "okay";
+ vbus-supply = <®_usbh_vbus>;
+ };
+
+ backlight: backlight {
+ compatible = "pwm-backlight";
+ brightness-levels = <255 231 223 207 191 159 127 0>;
+ default-brightness-level = <6>;
+ /* BKL1_ON */
+ enable-gpios = <&gpio TEGRA_GPIO(V, 2) GPIO_ACTIVE_HIGH>;
+ power-supply = <®_3v3>;
+ pwms = <&pwm 0 5000000>; /* BKL1_PWM */
+ };
+
+ gpio-keys {
+ compatible = "gpio-keys";
+
+ wakeup {
+ label = "WAKE1_MICO";
+ gpios = <&gpio TEGRA_GPIO(V, 1) GPIO_ACTIVE_LOW>;
+ linux,code = <KEY_WAKEUP>;
+ debounce-interval = <10>;
+ wakeup-source;
+ };
+ };
+
+ panel: panel {
+ /*
+ * edt,et057090dhu: EDT 5.7" LCD TFT
+ * edt,et070080dh6: EDT 7.0" LCD TFT
+ */
+ compatible = "edt,et057090dhu", "simple-panel";
+ backlight = <&backlight>;
+ power-supply = <®_3v3>;
+ };
+
+ reg_3v3: regulator-3v3 {
+ compatible = "regulator-fixed";
+ regulator-name = "3.3V_SW";
+ regulator-min-microvolt = <3300000>;
+ regulator-max-microvolt = <3300000>;
+ };
+
+ reg_5v0: regulator-5v0 {
+ compatible = "regulator-fixed";
+ regulator-name = "5V_SW";
+ regulator-min-microvolt = <5000000>;
+ regulator-max-microvolt = <5000000>;
+ };
+
+ /* USBO1_EN */
+ reg_usbo1_vbus: regulator-usbo1-vbus {
+ compatible = "regulator-fixed";
+ regulator-name = "VCC_USBO1";
+ regulator-min-microvolt = <5000000>;
+ regulator-max-microvolt = <5000000>;
+ gpio = <&gpio TEGRA_GPIO(T, 5) GPIO_ACTIVE_HIGH>;
+ enable-active-high;
+ vin-supply = <®_5v0>;
+ };
+
+ /* USBH_EN */
+ reg_usbh_vbus: regulator-usbh-vbus {
+ compatible = "regulator-fixed";
+ regulator-name = "VCC_USBH(2A|2C|2D|3|4)";
+ regulator-min-microvolt = <5000000>;
+ regulator-max-microvolt = <5000000>;
+ gpio = <&gpio TEGRA_GPIO(DD, 1) GPIO_ACTIVE_HIGH>;
+ enable-active-high;
+ vin-supply = <®_5v0>;
+ };
+
+ /*
+ * 1.8 volt resp. 3.3 volt VDDIO_SDMMC3 depending on
+ * EN_+3.3_SDMMC3 GPIO
+ */
+ reg_vddio_sdmmc3: regulator-vddio-sdmmc3 {
+ compatible = "regulator-gpio";
+ regulator-name = "VDDIO_SDMMC3";
+ regulator-min-microvolt = <1800000>;
+ regulator-max-microvolt = <3300000>;
+ regulator-type = "voltage";
+ gpios = <&gpio TEGRA_GPIO(J, 5) GPIO_ACTIVE_HIGH>;
+ states = <1800000 0x0
+ 3300000 0x1>;
+ startup-delay-us = <100000>;
+ vin-supply = <&vddio_sdmmc_1v8_reg>;
+ };
+};
+
+&gpio {
+ /* Apalis GPIO7 MXM3 pin 15 PLX PEX 8605 PCIe Switch Reset */
+ pex-perst-n {
+ gpio-hog;
+ gpios = <TEGRA_GPIO(S, 7) GPIO_ACTIVE_HIGH>;
+ output-high;
+ line-name = "PEX_PERST_N";
+ };
+};
diff --git a/arch/arm/boot/dts/tegra30-apalis-v1.1.dtsi b/arch/arm/boot/dts/tegra30-apalis-v1.1.dtsi
new file mode 100644
index 000000000000..02f8126481a2
--- /dev/null
+++ b/arch/arm/boot/dts/tegra30-apalis-v1.1.dtsi
@@ -0,0 +1,1189 @@
+// SPDX-License-Identifier: GPL-2.0 OR MIT
+#include "tegra30.dtsi"
+
+/*
+ * Toradex Apalis T30 Module Device Tree
+ * Compatible for Revisions 1GB: V1.1A, V1.1B; 1GB IT: V1.1A, V1.1B;
+ * 2GB: V1.1A, V1.1B
+ */
+/ {
+ memory@80000000 {
+ reg = <0x80000000 0x40000000>;
+ };
+
+ pcie@3000 {
+ status = "okay";
+ avdd-pexa-supply = <&vdd2_reg>;
+ avdd-pexb-supply = <&vdd2_reg>;
+ avdd-pex-pll-supply = <&vdd2_reg>;
+ avdd-plle-supply = <&ldo6_reg>;
+ hvdd-pex-supply = <®_module_3v3>;
+ vddio-pex-ctl-supply = <®_module_3v3>;
+ vdd-pexa-supply = <&vdd2_reg>;
+ vdd-pexb-supply = <&vdd2_reg>;
+
+ /* Apalis type specific */
+ pci@1,0 {
+ nvidia,num-lanes = <4>;
+ };
+
+ /* Apalis PCIe */
+ pci@2,0 {
+ nvidia,num-lanes = <1>;
+ };
+
+ /* I210/I211 Gigabit Ethernet Controller (on-module) */
+ pci@3,0 {
+ status = "okay";
+ nvidia,num-lanes = <1>;
+
+ pcie@0 {
+ reg = <0 0 0 0 0>;
+ local-mac-address = [00 00 00 00 00 00];
+ };
+ };
+ };
+
+ host1x@50000000 {
+ hdmi@54280000 {
+ nvidia,ddc-i2c-bus = <&hdmi_ddc>;
+ nvidia,hpd-gpio =
+ <&gpio TEGRA_GPIO(N, 7) GPIO_ACTIVE_HIGH>;
+ pll-supply = <®_1v8_avdd_hdmi_pll>;
+ vdd-supply = <®_3v3_avdd_hdmi>;
+ };
+ };
+
+ pinmux@70000868 {
+ pinctrl-names = "default";
+ pinctrl-0 = <&state_default>;
+
+ state_default: pinmux {
+ /* Analogue Audio (On-module) */
+ clk1-out-pw4 {
+ nvidia,pins = "clk1_out_pw4";
+ nvidia,function = "extperiph1";
+ nvidia,pull = <TEGRA_PIN_PULL_NONE>;
+ nvidia,tristate = <TEGRA_PIN_DISABLE>;
+ nvidia,enable-input = <TEGRA_PIN_DISABLE>;
+ };
+ dap3-fs-pp0 {
+ nvidia,pins = "dap3_fs_pp0",
+ "dap3_sclk_pp3",
+ "dap3_din_pp1",
+ "dap3_dout_pp2";
+ nvidia,function = "i2s2";
+ nvidia,pull = <TEGRA_PIN_PULL_NONE>;
+ nvidia,tristate = <TEGRA_PIN_DISABLE>;
+ };
+
+ /* Apalis BKL1_ON */
+ pv2 {
+ nvidia,pins = "pv2";
+ nvidia,function = "rsvd4";
+ nvidia,pull = <TEGRA_PIN_PULL_NONE>;
+ nvidia,tristate = <TEGRA_PIN_DISABLE>;
+ nvidia,enable-input = <TEGRA_PIN_DISABLE>;
+ };
+
+ /* Apalis BKL1_PWM */
+ uart3-rts-n-pc0 {
+ nvidia,pins = "uart3_rts_n_pc0";
+ nvidia,function = "pwm0";
+ nvidia,pull = <TEGRA_PIN_PULL_NONE>;
+ nvidia,tristate = <TEGRA_PIN_DISABLE>;
+ nvidia,enable-input = <TEGRA_PIN_DISABLE>;
+ };
+ /* BKL1_PWM_EN#, disable TPS65911 PMIC PWM backlight */
+ uart3-cts-n-pa1 {
+ nvidia,pins = "uart3_cts_n_pa1";
+ nvidia,function = "rsvd2";
+ nvidia,pull = <TEGRA_PIN_PULL_UP>;
+ nvidia,tristate = <TEGRA_PIN_DISABLE>;
+ nvidia,enable-input = <TEGRA_PIN_DISABLE>;
+ };
+
+ /* Apalis CAN1 on SPI6 */
+ spi2-cs0-n-px3 {
+ nvidia,pins = "spi2_cs0_n_px3",
+ "spi2_miso_px1",
+ "spi2_mosi_px0",
+ "spi2_sck_px2";
+ nvidia,function = "spi6";
+ nvidia,pull = <TEGRA_PIN_PULL_NONE>;
+ nvidia,tristate = <TEGRA_PIN_DISABLE>;
+ };
+ /* CAN_INT1 */
+ spi2-cs1-n-pw2 {
+ nvidia,pins = "spi2_cs1_n_pw2";
+ nvidia,function = "spi3";
+ nvidia,pull = <TEGRA_PIN_PULL_NONE>;
+ nvidia,tristate = <TEGRA_PIN_DISABLE>;
+ nvidia,enable-input = <TEGRA_PIN_ENABLE>;
+ };
+
+ /* Apalis CAN2 on SPI4 */
+ gmi-a16-pj7 {
+ nvidia,pins = "gmi_a16_pj7",
+ "gmi_a17_pb0",
+ "gmi_a18_pb1",
+ "gmi_a19_pk7";
+ nvidia,function = "spi4";
+ nvidia,pull = <TEGRA_PIN_PULL_NONE>;
+ nvidia,tristate = <TEGRA_PIN_DISABLE>;
+ nvidia,enable-input = <TEGRA_PIN_ENABLE>;
+ };
+ /* CAN_INT2 */
+ spi2-cs2-n-pw3 {
+ nvidia,pins = "spi2_cs2_n_pw3";
+ nvidia,function = "spi3";
+ nvidia,pull = <TEGRA_PIN_PULL_NONE>;
+ nvidia,tristate = <TEGRA_PIN_DISABLE>;
+ 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 GPIO */
+ kb-col0-pq0 {
+ nvidia,pins = "kb_col0_pq0",
+ "kb_col1_pq1",
+ "kb_row10_ps2",
+ "kb_row11_ps3",
+ "kb_row12_ps4",
+ "kb_row13_ps5",
+ "kb_row14_ps6",
+ "kb_row15_ps7";
+ nvidia,function = "kbc";
+ nvidia,pull = <TEGRA_PIN_PULL_NONE>;
+ nvidia,tristate = <TEGRA_PIN_DISABLE>;
+ nvidia,enable-input = <TEGRA_PIN_ENABLE>;
+ };
+ /* Multiplexed and therefore disabled */
+ owr {
+ nvidia,pins = "owr";
+ nvidia,function = "rsvd3";
+ nvidia,pull = <TEGRA_PIN_PULL_DOWN>;
+ nvidia,tristate = <TEGRA_PIN_ENABLE>;
+ nvidia,enable-input = <TEGRA_PIN_DISABLE>;
+ };
+
+ /* Apalis HDMI1 */
+ hdmi-cec-pee3 {
+ nvidia,pins = "hdmi_cec_pee3";
+ nvidia,function = "cec";
+ nvidia,pull = <TEGRA_PIN_PULL_NONE>;
+ nvidia,tristate = <TEGRA_PIN_DISABLE>;
+ nvidia,enable-input = <TEGRA_PIN_ENABLE>;
+ nvidia,open-drain = <TEGRA_PIN_DISABLE>;
+ };
+ hdmi-int-pn7 {
+ nvidia,pins = "hdmi_int_pn7";
+ nvidia,function = "hdmi";
+ nvidia,pull = <TEGRA_PIN_PULL_NONE>;
+ nvidia,tristate = <TEGRA_PIN_ENABLE>;
+ nvidia,enable-input = <TEGRA_PIN_ENABLE>;
+ };
+
+ /* Apalis I2C1 */
+ gen1-i2c-scl-pc4 {
+ nvidia,pins = "gen1_i2c_scl_pc4",
+ "gen1_i2c_sda_pc5";
+ nvidia,function = "i2c1";
+ nvidia,pull = <TEGRA_PIN_PULL_NONE>;
+ nvidia,tristate = <TEGRA_PIN_DISABLE>;
+ nvidia,enable-input = <TEGRA_PIN_ENABLE>;
+ nvidia,open-drain = <TEGRA_PIN_ENABLE>;
+ };
+
+ /* Apalis I2C2 (DDC) */
+ ddc-scl-pv4 {
+ nvidia,pins = "ddc_scl_pv4",
+ "ddc_sda_pv5";
+ nvidia,function = "i2c4";
+ nvidia,pull = <TEGRA_PIN_PULL_NONE>;
+ nvidia,tristate = <TEGRA_PIN_DISABLE>;
+ nvidia,enable-input = <TEGRA_PIN_ENABLE>;
+ };
+
+ /* Apalis I2C3 (CAM) */
+ cam-i2c-scl-pbb1 {
+ nvidia,pins = "cam_i2c_scl_pbb1",
+ "cam_i2c_sda_pbb2";
+ 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>;
+ };
+
+ /* Apalis LCD1 */
+ lcd-d0-pe0 {
+ nvidia,pins = "lcd_d0_pe0",
+ "lcd_d1_pe1",
+ "lcd_d2_pe2",
+ "lcd_d3_pe3",
+ "lcd_d4_pe4",
+ "lcd_d5_pe5",
+ "lcd_d6_pe6",
+ "lcd_d7_pe7",
+ "lcd_d8_pf0",
+ "lcd_d9_pf1",
+ "lcd_d10_pf2",
+ "lcd_d11_pf3",
+ "lcd_d12_pf4",
+ "lcd_d13_pf5",
+ "lcd_d14_pf6",
+ "lcd_d15_pf7",
+ "lcd_d16_pm0",
+ "lcd_d17_pm1",
+ "lcd_d18_pm2",
+ "lcd_d19_pm3",
+ "lcd_d20_pm4",
+ "lcd_d21_pm5",
+ "lcd_d22_pm6",
+ "lcd_d23_pm7",
+ "lcd_de_pj1",
+ "lcd_hsync_pj3",
+ "lcd_pclk_pb3",
+ "lcd_vsync_pj4";
+ nvidia,function = "displaya";
+ nvidia,pull = <TEGRA_PIN_PULL_NONE>;
+ nvidia,tristate = <TEGRA_PIN_DISABLE>;
+ nvidia,enable-input = <TEGRA_PIN_ENABLE>;
+ };
+
+ /* Apalis MMC1 */
+ sdmmc3-clk-pa6 {
+ nvidia,pins = "sdmmc3_clk_pa6";
+ nvidia,function = "sdmmc3";
+ nvidia,pull = <TEGRA_PIN_PULL_NONE>;
+ nvidia,tristate = <TEGRA_PIN_DISABLE>;
+ };
+ sdmmc3-dat0-pb7 {
+ nvidia,pins = "sdmmc3_cmd_pa7",
+ "sdmmc3_dat0_pb7",
+ "sdmmc3_dat1_pb6",
+ "sdmmc3_dat2_pb5",
+ "sdmmc3_dat3_pb4",
+ "sdmmc3_dat4_pd1",
+ "sdmmc3_dat5_pd0",
+ "sdmmc3_dat6_pd3",
+ "sdmmc3_dat7_pd4";
+ nvidia,function = "sdmmc3";
+ nvidia,pull = <TEGRA_PIN_PULL_UP>;
+ nvidia,tristate = <TEGRA_PIN_DISABLE>;
+ };
+ /* Apalis MMC1_CD# */
+ pv3 {
+ nvidia,pins = "pv3";
+ nvidia,function = "rsvd2";
+ nvidia,pull = <TEGRA_PIN_PULL_UP>;
+ nvidia,tristate = <TEGRA_PIN_DISABLE>;
+ nvidia,enable-input = <TEGRA_PIN_ENABLE>;
+ };
+
+ /* Apalis Parallel Camera */
+ cam-mclk-pcc0 {
+ nvidia,pins = "cam_mclk_pcc0";
+ nvidia,function = "vi_alt3";
+ nvidia,pull = <TEGRA_PIN_PULL_NONE>;
+ nvidia,tristate = <TEGRA_PIN_DISABLE>;
+ nvidia,enable-input = <TEGRA_PIN_DISABLE>;
+ };
+ vi-vsync-pd6 {
+ nvidia,pins = "vi_d0_pt4",
+ "vi_d1_pd5",
+ "vi_d2_pl0",
+ "vi_d3_pl1",
+ "vi_d4_pl2",
+ "vi_d5_pl3",
+ "vi_d6_pl4",
+ "vi_d7_pl5",
+ "vi_d8_pl6",
+ "vi_d9_pl7",
+ "vi_d10_pt2",
+ "vi_d11_pt3",
+ "vi_hsync_pd7",
+ "vi_pclk_pt0",
+ "vi_vsync_pd6";
+ nvidia,function = "vi";
+ nvidia,pull = <TEGRA_PIN_PULL_NONE>;
+ nvidia,tristate = <TEGRA_PIN_DISABLE>;
+ nvidia,enable-input = <TEGRA_PIN_ENABLE>;
+ };
+ /* Multiplexed and therefore disabled */
+ kb-col2-pq2 {
+ nvidia,pins = "kb_col2_pq2",
+ "kb_col3_pq3",
+ "kb_col4_pq4",
+ "kb_row4_pr4";
+ nvidia,function = "rsvd4";
+ nvidia,pull = <TEGRA_PIN_PULL_DOWN>;
+ nvidia,tristate = <TEGRA_PIN_ENABLE>;
+ nvidia,enable-input = <TEGRA_PIN_DISABLE>;
+ };
+ kb-row0-pr0 {
+ nvidia,pins = "kb_row0_pr0",
+ "kb_row1_pr1",
+ "kb_row2_pr2",
+ "kb_row3_pr3";
+ nvidia,function = "rsvd3";
+ nvidia,pull = <TEGRA_PIN_PULL_DOWN>;
+ nvidia,tristate = <TEGRA_PIN_ENABLE>;
+ nvidia,enable-input = <TEGRA_PIN_DISABLE>;
+ };
+ kb-row5-pr5 {
+ nvidia,pins = "kb_row5_pr5",
+ "kb_row6_pr6",
+ "kb_row7_pr7";
+ nvidia,function = "kbc";
+ nvidia,pull = <TEGRA_PIN_PULL_DOWN>;
+ nvidia,tristate = <TEGRA_PIN_ENABLE>;
+ nvidia,enable-input = <TEGRA_PIN_DISABLE>;
+ };
+ /*
+ * VI level-shifter direction
+ * (pull-down => default direction input)
+ */
+ vi-mclk-pt1 {
+ nvidia,pins = "vi_mclk_pt1";
+ nvidia,function = "vi_alt3";
+ nvidia,pull = <TEGRA_PIN_PULL_DOWN>;
+ nvidia,tristate = <TEGRA_PIN_ENABLE>;
+ nvidia,enable-input = <TEGRA_PIN_DISABLE>;
+ };
+
+ /* Apalis PWM1 */
+ pu6 {
+ nvidia,pins = "pu6";
+ nvidia,function = "pwm3";
+ nvidia,pull = <TEGRA_PIN_PULL_NONE>;
+ nvidia,tristate = <TEGRA_PIN_DISABLE>;
+ };
+
+ /* Apalis PWM2 */
+ pu5 {
+ nvidia,pins = "pu5";
+ nvidia,function = "pwm2";
+ nvidia,pull = <TEGRA_PIN_PULL_NONE>;
+ nvidia,tristate = <TEGRA_PIN_DISABLE>;
+ };
+
+ /* Apalis PWM3 */
+ pu4 {
+ nvidia,pins = "pu4";
+ nvidia,function = "pwm1";
+ nvidia,pull = <TEGRA_PIN_PULL_NONE>;
+ nvidia,tristate = <TEGRA_PIN_DISABLE>;
+ };
+
+ /* Apalis PWM4 */
+ pu3 {
+ nvidia,pins = "pu3";
+ nvidia,function = "pwm0";
+ nvidia,pull = <TEGRA_PIN_PULL_NONE>;
+ nvidia,tristate = <TEGRA_PIN_DISABLE>;
+ };
+
+ /* Apalis RESET_MOCI# */
+ gmi-rst-n-pi4 {
+ nvidia,pins = "gmi_rst_n_pi4";
+ nvidia,function = "gmi";
+ nvidia,pull = <TEGRA_PIN_PULL_NONE>;
+ nvidia,tristate = <TEGRA_PIN_DISABLE>;
+ };
+
+ /* Apalis SATA1_ACT# */
+ pex-l0-prsnt-n-pdd0 {
+ nvidia,pins = "pex_l0_prsnt_n_pdd0";
+ nvidia,function = "rsvd3";
+ nvidia,pull = <TEGRA_PIN_PULL_NONE>;
+ nvidia,tristate = <TEGRA_PIN_DISABLE>;
+ nvidia,enable-input = <TEGRA_PIN_DISABLE>;
+ };
+
+ /* Apalis SD1 */
+ sdmmc1-clk-pz0 {
+ nvidia,pins = "sdmmc1_clk_pz0";
+ nvidia,function = "sdmmc1";
+ nvidia,pull = <TEGRA_PIN_PULL_NONE>;
+ nvidia,tristate = <TEGRA_PIN_DISABLE>;
+ };
+ sdmmc1-cmd-pz1 {
+ nvidia,pins = "sdmmc1_cmd_pz1",
+ "sdmmc1_dat0_py7",
+ "sdmmc1_dat1_py6",
+ "sdmmc1_dat2_py5",
+ "sdmmc1_dat3_py4";
+ nvidia,function = "sdmmc1";
+ nvidia,pull = <TEGRA_PIN_PULL_UP>;
+ nvidia,tristate = <TEGRA_PIN_DISABLE>;
+ };
+ /* Apalis SD1_CD# */
+ clk2-req-pcc5 {
+ nvidia,pins = "clk2_req_pcc5";
+ nvidia,function = "rsvd2";
+ nvidia,pull = <TEGRA_PIN_PULL_UP>;
+ nvidia,tristate = <TEGRA_PIN_DISABLE>;
+ nvidia,enable-input = <TEGRA_PIN_ENABLE>;
+ };
+
+ /* Apalis SPDIF1 */
+ spdif-out-pk5 {
+ nvidia,pins = "spdif_out_pk5",
+ "spdif_in_pk6";
+ nvidia,function = "spdif";
+ nvidia,pull = <TEGRA_PIN_PULL_NONE>;
+ nvidia,tristate = <TEGRA_PIN_DISABLE>;
+ nvidia,enable-input = <TEGRA_PIN_ENABLE>;
+ };
+
+ /* Apalis SPI1 */
+ spi1-sck-px5 {
+ nvidia,pins = "spi1_sck_px5",
+ "spi1_mosi_px4",
+ "spi1_miso_px7",
+ "spi1_cs0_n_px6";
+ nvidia,function = "spi1";
+ nvidia,pull = <TEGRA_PIN_PULL_NONE>;
+ nvidia,tristate = <TEGRA_PIN_DISABLE>;
+ };
+
+ /* Apalis SPI2 */
+ lcd-sck-pz4 {
+ nvidia,pins = "lcd_sck_pz4",
+ "lcd_sdout_pn5",
+ "lcd_sdin_pz2",
+ "lcd_cs0_n_pn4";
+ nvidia,function = "spi5";
+ nvidia,pull = <TEGRA_PIN_PULL_NONE>;
+ nvidia,tristate = <TEGRA_PIN_DISABLE>;
+ };
+
+ /*
+ * Apalis TS (Low-speed type specific)
+ * pins may be used as GPIOs
+ */
+ kb-col5-pq5 {
+ nvidia,pins = "kb_col5_pq5";
+ nvidia,function = "rsvd4";
+ nvidia,pull = <TEGRA_PIN_PULL_NONE>;
+ nvidia,tristate = <TEGRA_PIN_DISABLE>;
+ nvidia,enable-input = <TEGRA_PIN_ENABLE>;
+ };
+ kb-col6-pq6 {
+ nvidia,pins = "kb_col6_pq6",
+ "kb_col7_pq7",
+ "kb_row8_ps0",
+ "kb_row9_ps1";
+ nvidia,function = "kbc";
+ nvidia,pull = <TEGRA_PIN_PULL_NONE>;
+ nvidia,tristate = <TEGRA_PIN_DISABLE>;
+ nvidia,enable-input = <TEGRA_PIN_ENABLE>;
+ };
+
+ /* Apalis UART1 */
+ ulpi-data0 {
+ nvidia,pins = "ulpi_data0_po1",
+ "ulpi_data1_po2",
+ "ulpi_data2_po3",
+ "ulpi_data3_po4",
+ "ulpi_data4_po5",
+ "ulpi_data5_po6",
+ "ulpi_data6_po7",
+ "ulpi_data7_po0";
+ nvidia,function = "uarta";
+ nvidia,pull = <TEGRA_PIN_PULL_NONE>;
+ nvidia,tristate = <TEGRA_PIN_DISABLE>;
+ };
+
+ /* Apalis UART2 */
+ ulpi-clk-py0 {
+ nvidia,pins = "ulpi_clk_py0",
+ "ulpi_dir_py1",
+ "ulpi_nxt_py2",
+ "ulpi_stp_py3";
+ nvidia,function = "uartd";
+ nvidia,pull = <TEGRA_PIN_PULL_NONE>;
+ nvidia,tristate = <TEGRA_PIN_DISABLE>;
+ };
+
+ /* Apalis UART3 */
+ uart2-rxd-pc3 {
+ nvidia,pins = "uart2_rxd_pc3",
+ "uart2_txd_pc2";
+ nvidia,function = "uartb";
+ nvidia,pull = <TEGRA_PIN_PULL_NONE>;
+ nvidia,tristate = <TEGRA_PIN_DISABLE>;
+ };
+
+ /* Apalis UART4 */
+ uart3-rxd-pw7 {
+ nvidia,pins = "uart3_rxd_pw7",
+ "uart3_txd_pw6";
+ nvidia,function = "uartc";
+ nvidia,pull = <TEGRA_PIN_PULL_NONE>;
+ nvidia,tristate = <TEGRA_PIN_DISABLE>;
+ };
+
+ /* Apalis USBH_EN */
+ pex-l0-rst-n-pdd1 {
+ nvidia,pins = "pex_l0_rst_n_pdd1";
+ nvidia,function = "rsvd3";
+ nvidia,pull = <TEGRA_PIN_PULL_NONE>;
+ nvidia,tristate = <TEGRA_PIN_DISABLE>;
+ nvidia,enable-input = <TEGRA_PIN_DISABLE>;
+ };
+
+ /* Apalis USBH_OC# */
+ pex-l0-clkreq-n-pdd2 {
+ nvidia,pins = "pex_l0_clkreq_n_pdd2";
+ nvidia,function = "rsvd3";
+ nvidia,pull = <TEGRA_PIN_PULL_NONE>;
+ nvidia,tristate = <TEGRA_PIN_DISABLE>;
+ nvidia,enable-input = <TEGRA_PIN_ENABLE>;
+ };
+
+ /* Apalis USBO1_EN */
+ gen2-i2c-scl-pt5 {
+ nvidia,pins = "gen2_i2c_scl_pt5";
+ nvidia,function = "rsvd4";
+ nvidia,open-drain = <TEGRA_PIN_DISABLE>;
+ nvidia,pull = <TEGRA_PIN_PULL_NONE>;
+ nvidia,tristate = <TEGRA_PIN_DISABLE>;
+ };
+
+ /* Apalis USBO1_OC# */
+ gen2-i2c-sda-pt6 {
+ nvidia,pins = "gen2_i2c_sda_pt6";
+ nvidia,function = "rsvd4";
+ nvidia,open-drain = <TEGRA_PIN_DISABLE>;
+ nvidia,pull = <TEGRA_PIN_PULL_NONE>;
+ nvidia,tristate = <TEGRA_PIN_DISABLE>;
+ nvidia,enable-input = <TEGRA_PIN_ENABLE>;
+ };
+
+ /* Apalis VGA1 not supported and therefore disabled */
+ crt-hsync-pv6 {
+ nvidia,pins = "crt_hsync_pv6",
+ "crt_vsync_pv7";
+ nvidia,function = "rsvd2";
+ nvidia,pull = <TEGRA_PIN_PULL_DOWN>;
+ nvidia,tristate = <TEGRA_PIN_ENABLE>;
+ nvidia,enable-input = <TEGRA_PIN_DISABLE>;
+ };
+
+ /* Apalis WAKE1_MICO */
+ pv1 {
+ nvidia,pins = "pv1";
+ nvidia,function = "rsvd1";
+ nvidia,pull = <TEGRA_PIN_PULL_NONE>;
+ nvidia,tristate = <TEGRA_PIN_DISABLE>;
+ nvidia,enable-input = <TEGRA_PIN_ENABLE>;
+ };
+
+ /* eMMC (On-module) */
+ sdmmc4-clk-pcc4 {
+ nvidia,pins = "sdmmc4_clk_pcc4",
+ "sdmmc4_cmd_pt7",
+ "sdmmc4_rst_n_pcc3";
+ nvidia,function = "sdmmc4";
+ nvidia,pull = <TEGRA_PIN_PULL_NONE>;
+ nvidia,tristate = <TEGRA_PIN_DISABLE>;
+ nvidia,enable-input = <TEGRA_PIN_ENABLE>;
+ };
+ sdmmc4-dat0-paa0 {
+ nvidia,pins = "sdmmc4_dat0_paa0",
+ "sdmmc4_dat1_paa1",
+ "sdmmc4_dat2_paa2",
+ "sdmmc4_dat3_paa3",
+ "sdmmc4_dat4_paa4",
+ "sdmmc4_dat5_paa5",
+ "sdmmc4_dat6_paa6",
+ "sdmmc4_dat7_paa7";
+ nvidia,function = "sdmmc4";
+ nvidia,pull = <TEGRA_PIN_PULL_UP>;
+ nvidia,tristate = <TEGRA_PIN_DISABLE>;
+ nvidia,enable-input = <TEGRA_PIN_ENABLE>;
+ };
+
+ /* EN_+3.3_SDMMC3 */
+ uart2-cts-n-pj5 {
+ nvidia,pins = "uart2_cts_n_pj5";
+ nvidia,function = "gmi";
+ nvidia,pull = <TEGRA_PIN_PULL_NONE>;
+ nvidia,tristate = <TEGRA_PIN_DISABLE>;
+ nvidia,enable-input = <TEGRA_PIN_DISABLE>;
+ };
+
+ /* LAN i210/i211 DEV_OFF_N, PE_RST_N (On-module) */
+ pex-l2-prsnt-n-pdd7 {
+ nvidia,pins = "pex_l2_prsnt_n_pdd7",
+ "pex_l2_rst_n_pcc6";
+ nvidia,function = "pcie";
+ nvidia,pull = <TEGRA_PIN_PULL_NONE>;
+ nvidia,tristate = <TEGRA_PIN_DISABLE>;
+ nvidia,enable-input = <TEGRA_PIN_DISABLE>;
+ };
+ /* LAN i210/i211 PE_WAKE_N, SDP3 (On-module) */
+ pex-wake-n-pdd3 {
+ nvidia,pins = "pex_wake_n_pdd3",
+ "pex_l2_clkreq_n_pcc7";
+ nvidia,function = "pcie";
+ nvidia,pull = <TEGRA_PIN_PULL_NONE>;
+ nvidia,tristate = <TEGRA_PIN_DISABLE>;
+ nvidia,enable-input = <TEGRA_PIN_ENABLE>;
+ };
+ /* LAN i210/i211 SMB_ALERT_N (On-module) */
+ sys-clk-req-pz5 {
+ nvidia,pins = "sys_clk_req_pz5";
+ nvidia,function = "rsvd2";
+ nvidia,pull = <TEGRA_PIN_PULL_NONE>;
+ nvidia,tristate = <TEGRA_PIN_DISABLE>;
+ nvidia,enable-input = <TEGRA_PIN_ENABLE>;
+ };
+
+ /* LVDS Transceiver Configuration */
+ pbb0 {
+ nvidia,pins = "pbb0",
+ "pbb7",
+ "pcc1",
+ "pcc2";
+ nvidia,function = "rsvd2";
+ nvidia,pull = <TEGRA_PIN_PULL_NONE>;
+ nvidia,tristate = <TEGRA_PIN_DISABLE>;
+ nvidia,enable-input = <TEGRA_PIN_DISABLE>;
+ };
+ pbb3 {
+ nvidia,pins = "pbb3",
+ "pbb4",
+ "pbb5",
+ "pbb6";
+ nvidia,function = "displayb";
+ nvidia,pull = <TEGRA_PIN_PULL_NONE>;
+ nvidia,tristate = <TEGRA_PIN_DISABLE>;
+ nvidia,enable-input = <TEGRA_PIN_DISABLE>;
+ };
+
+ /* Not connected and therefore disabled */
+ clk-32k-out-pa0 {
+ nvidia,pins = "clk3_out_pee0",
+ "clk3_req_pee1",
+ "clk_32k_out_pa0",
+ "dap4_din_pp5",
+ "dap4_dout_pp6",
+ "dap4_fs_pp4",
+ "dap4_sclk_pp7";
+ nvidia,function = "rsvd2";
+ nvidia,pull = <TEGRA_PIN_PULL_DOWN>;
+ nvidia,tristate = <TEGRA_PIN_ENABLE>;
+ nvidia,enable-input = <TEGRA_PIN_DISABLE>;
+ };
+ dap2-fs-pa2 {
+ nvidia,pins = "dap2_fs_pa2",
+ "dap2_sclk_pa3",
+ "dap2_din_pa4",
+ "dap2_dout_pa5",
+ "lcd_dc0_pn6",
+ "lcd_m1_pw1",
+ "lcd_pwr1_pc1",
+ "pex_l1_clkreq_n_pdd6",
+ "pex_l1_prsnt_n_pdd4",
+ "pex_l1_rst_n_pdd5";
+ nvidia,function = "rsvd3";
+ nvidia,pull = <TEGRA_PIN_PULL_DOWN>;
+ nvidia,tristate = <TEGRA_PIN_ENABLE>;
+ nvidia,enable-input = <TEGRA_PIN_DISABLE>;
+ };
+ gmi-ad0-pg0 {
+ nvidia,pins = "gmi_ad0_pg0",
+ "gmi_ad2_pg2",
+ "gmi_ad3_pg3",
+ "gmi_ad4_pg4",
+ "gmi_ad5_pg5",
+ "gmi_ad6_pg6",
+ "gmi_ad7_pg7",
+ "gmi_ad8_ph0",
+ "gmi_ad9_ph1",
+ "gmi_ad10_ph2",
+ "gmi_ad11_ph3",
+ "gmi_ad12_ph4",
+ "gmi_ad13_ph5",
+ "gmi_ad14_ph6",
+ "gmi_ad15_ph7",
+ "gmi_adv_n_pk0",
+ "gmi_clk_pk1",
+ "gmi_cs4_n_pk2",
+ "gmi_cs2_n_pk3",
+ "gmi_dqs_pi2",
+ "gmi_iordy_pi5",
+ "gmi_oe_n_pi1",
+ "gmi_wait_pi7",
+ "gmi_wr_n_pi0",
+ "lcd_cs1_n_pw0",
+ "pu0",
+ "pu1",
+ "pu2";
+ nvidia,function = "rsvd4";
+ nvidia,pull = <TEGRA_PIN_PULL_DOWN>;
+ nvidia,tristate = <TEGRA_PIN_ENABLE>;
+ nvidia,enable-input = <TEGRA_PIN_DISABLE>;
+ };
+ gmi-cs0-n-pj0 {
+ nvidia,pins = "gmi_cs0_n_pj0",
+ "gmi_cs1_n_pj2",
+ "gmi_cs3_n_pk4";
+ nvidia,function = "rsvd1";
+ nvidia,pull = <TEGRA_PIN_PULL_DOWN>;
+ nvidia,tristate = <TEGRA_PIN_ENABLE>;
+ nvidia,enable-input = <TEGRA_PIN_DISABLE>;
+ };
+ gmi-cs6-n-pi3 {
+ nvidia,pins = "gmi_cs6_n_pi3";
+ nvidia,function = "sata";
+ nvidia,pull = <TEGRA_PIN_PULL_DOWN>;
+ nvidia,tristate = <TEGRA_PIN_ENABLE>;
+ nvidia,enable-input = <TEGRA_PIN_DISABLE>;
+ };
+ gmi-cs7-n-pi6 {
+ nvidia,pins = "gmi_cs7_n_pi6";
+ nvidia,function = "gmi_alt";
+ nvidia,pull = <TEGRA_PIN_PULL_DOWN>;
+ nvidia,tristate = <TEGRA_PIN_ENABLE>;
+ nvidia,enable-input = <TEGRA_PIN_DISABLE>;
+ };
+ lcd-pwr0-pb2 {
+ nvidia,pins = "lcd_pwr0_pb2",
+ "lcd_pwr2_pc6",
+ "lcd_wr_n_pz3";
+ nvidia,function = "hdcp";
+ nvidia,pull = <TEGRA_PIN_PULL_DOWN>;
+ nvidia,tristate = <TEGRA_PIN_ENABLE>;
+ nvidia,enable-input = <TEGRA_PIN_DISABLE>;
+ };
+ uart2-rts-n-pj6 {
+ nvidia,pins = "uart2_rts_n_pj6";
+ nvidia,function = "gmi";
+ nvidia,pull = <TEGRA_PIN_PULL_DOWN>;
+ nvidia,tristate = <TEGRA_PIN_ENABLE>;
+ nvidia,enable-input = <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,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_DOWN>;
+ nvidia,tristate = <TEGRA_PIN_ENABLE>;
+ nvidia,enable-input = <TEGRA_PIN_DISABLE>;
+ };
+
+ /* TOUCH_PEN_INT# (On-module) */
+ pv0 {
+ nvidia,pins = "pv0";
+ nvidia,function = "rsvd1";
+ nvidia,pull = <TEGRA_PIN_PULL_NONE>;
+ nvidia,tristate = <TEGRA_PIN_DISABLE>;
+ nvidia,enable-input = <TEGRA_PIN_ENABLE>;
+ };
+ };
+ };
+
+ serial@70006040 {
+ compatible = "nvidia,tegra30-hsuart";
+ };
+
+ serial@70006200 {
+ compatible = "nvidia,tegra30-hsuart";
+ };
+
+ serial@70006300 {
+ compatible = "nvidia,tegra30-hsuart";
+ };
+
+ hdmi_ddc: i2c@7000c700 {
+ clock-frequency = <10000>;
+ };
+
+ /*
+ * PWR_I2C: power I2C to audio codec, PMIC, temperature sensor and
+ * touch screen controller
+ */
+ i2c@7000d000 {
+ status = "okay";
+ clock-frequency = <100000>;
+
+ /* SGTL5000 audio codec */
+ sgtl5000: codec@a {
+ compatible = "fsl,sgtl5000";
+ reg = <0x0a>;
+ VDDA-supply = <®_module_3v3_audio>;
+ VDDD-supply = <®_1v8_vio>;
+ VDDIO-supply = <®_module_3v3>;
+ clocks = <&tegra_car TEGRA30_CLK_EXTERN1>;
+ };
+
+ pmic: pmic@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;
+
+ vcc1-supply = <®_module_3v3>;
+ vcc2-supply = <®_module_3v3>;
+ vcc3-supply = <®_1v8_vio>;
+ vcc4-supply = <®_module_3v3>;
+ vcc5-supply = <®_module_3v3>;
+ vcc6-supply = <®_1v8_vio>;
+ vcc7-supply = <®_5v0_charge_pump>;
+ vccio-supply = <®_module_3v3>;
+
+ regulators {
+ vdd1_reg: vdd1 {
+ regulator-name = "+V1.35_VDDIO_DDR";
+ regulator-min-microvolt = <1350000>;
+ regulator-max-microvolt = <1350000>;
+ regulator-always-on;
+ };
+
+ vdd2_reg: vdd2 {
+ regulator-name = "+V1.05";
+ regulator-min-microvolt = <1050000>;
+ regulator-max-microvolt = <1050000>;
+ };
+
+ vddctrl_reg: vddctrl {
+ regulator-name = "+V1.0_VDD_CPU";
+ regulator-min-microvolt = <1150000>;
+ regulator-max-microvolt = <1150000>;
+ regulator-always-on;
+ };
+
+ reg_1v8_vio: vio {
+ regulator-name = "+V1.8";
+ regulator-min-microvolt = <1800000>;
+ regulator-max-microvolt = <1800000>;
+ regulator-always-on;
+ };
+
+ /*
+ * 1.8 volt +VDDIO_SDMMC3 in case EN_+3.3_SDMMC3
+ * is off
+ */
+ vddio_sdmmc_1v8_reg: ldo1 {
+ regulator-name = "+VDDIO_SDMMC3_1V8";
+ regulator-min-microvolt = <1800000>;
+ regulator-max-microvolt = <1800000>;
+ regulator-always-on;
+ };
+
+ /*
+ * EN_+V3.3 switching via FET:
+ * +V3.3_AUDIO_AVDD_S, +V3.3
+ * see also +V3.3 fixed supply
+ */
+ ldo2_reg: ldo2 {
+ regulator-name = "EN_+V3.3";
+ regulator-min-microvolt = <3300000>;
+ regulator-max-microvolt = <3300000>;
+ regulator-always-on;
+ };
+
+ ldo3_reg: ldo3 {
+ regulator-name = "+V1.2_CSI";
+ regulator-min-microvolt = <1200000>;
+ regulator-max-microvolt = <1200000>;
+ };
+
+ ldo4_reg: ldo4 {
+ regulator-name = "+V1.2_VDD_RTC";
+ regulator-min-microvolt = <1200000>;
+ regulator-max-microvolt = <1200000>;
+ regulator-always-on;
+ };
+
+ /*
+ * +V2.8_AVDD_VDAC:
+ * only required for (unsupported) analog RGB
+ */
+ ldo5_reg: ldo5 {
+ regulator-name = "+V2.8_AVDD_VDAC";
+ regulator-min-microvolt = <2800000>;
+ regulator-max-microvolt = <2800000>;
+ regulator-always-on;
+ };
+
+ /*
+ * +V1.05_AVDD_PLLE: avdd_plle should be 1.05V
+ * but LDO6 can't set voltage in 50mV
+ * granularity
+ */
+ ldo6_reg: ldo6 {
+ regulator-name = "+V1.05_AVDD_PLLE";
+ regulator-min-microvolt = <1100000>;
+ regulator-max-microvolt = <1100000>;
+ };
+
+ ldo7_reg: ldo7 {
+ regulator-name = "+V1.2_AVDD_PLL";
+ regulator-min-microvolt = <1200000>;
+ regulator-max-microvolt = <1200000>;
+ regulator-always-on;
+ };
+
+ ldo8_reg: ldo8 {
+ regulator-name = "+V1.0_VDD_DDR_HS";
+ regulator-min-microvolt = <1000000>;
+ regulator-max-microvolt = <1000000>;
+ regulator-always-on;
+ };
+ };
+ };
+
+ /* STMPE811 touch screen controller */
+ touchscreen@41 {
+ compatible = "st,stmpe811";
+ reg = <0x41>;
+ irq-gpio = <&gpio TEGRA_GPIO(V, 0) IRQ_TYPE_LEVEL_LOW>;
+ interrupt-controller;
+ id = <0>;
+ blocks = <0x5>;
+ irq-trigger = <0x1>;
+
+ stmpe_touchscreen {
+ compatible = "st,stmpe-ts";
+ /* 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: OVERT1# directly connected to TPS65911 PMIC PWRDN
+ */
+ temp-sensor@4c {
+ compatible = "national,lm95245";
+ reg = <0x4c>;
+ };
+
+ /* SW: +V1.2_VDD_CORE */
+ regulator@60 {
+ compatible = "ti,tps62362";
+ reg = <0x60>;
+
+ regulator-name = "tps62362-vout";
+ regulator-min-microvolt = <900000>;
+ regulator-max-microvolt = <1400000>;
+ regulator-boot-on;
+ regulator-always-on;
+ ti,vsel0-state-low;
+ /* VSEL1: EN_CORE_DVFS_N low for DVFS */
+ ti,vsel1-state-low;
+ };
+ };
+
+ /* SPI4: CAN2 */
+ spi@7000da00 {
+ status = "okay";
+ spi-max-frequency = <10000000>;
+
+ can@1 {
+ compatible = "microchip,mcp2515";
+ reg = <1>;
+ clocks = <&clk16m>;
+ interrupt-parent = <&gpio>;
+ interrupts = <TEGRA_GPIO(W, 3) IRQ_TYPE_EDGE_FALLING>;
+ spi-max-frequency = <10000000>;
+ };
+ };
+
+ /* SPI6: CAN1 */
+ spi@7000de00 {
+ status = "okay";
+ spi-max-frequency = <10000000>;
+
+ can@0 {
+ compatible = "microchip,mcp2515";
+ reg = <0>;
+ clocks = <&clk16m>;
+ interrupt-parent = <&gpio>;
+ interrupts = <TEGRA_GPIO(W, 2) IRQ_TYPE_EDGE_FALLING>;
+ spi-max-frequency = <10000000>;
+ };
+ };
+
+ pmc@7000e400 {
+ nvidia,invert-interrupt;
+ nvidia,suspend-mode = <1>;
+ nvidia,cpu-pwr-good-time = <5000>;
+ nvidia,cpu-pwr-off-time = <5000>;
+ nvidia,core-pwr-good-time = <3845 3845>;
+ nvidia,core-pwr-off-time = <0>;
+ nvidia,core-power-req-active-high;
+ nvidia,sys-clock-req-active-high;
+
+ /* Set DEV_OFF bit in DCDC control register of TPS65911 PMIC */
+ i2c-thermtrip {
+ nvidia,i2c-controller-id = <4>;
+ nvidia,bus-addr = <0x2d>;
+ nvidia,reg-addr = <0x3f>;
+ nvidia,reg-data = <0x1>;
+ };
+ };
+
+ hda@70030000 {
+ status = "okay";
+ };
+
+ ahub@70080000 {
+ i2s@70080500 {
+ status = "okay";
+ };
+ };
+
+ /* eMMC */
+ sdhci@78000600 {
+ status = "okay";
+ bus-width = <8>;
+ non-removable;
+ vmmc-supply = <®_module_3v3>; /* VCC */
+ vqmmc-supply = <®_1v8_vio>; /* VCCQ */
+ mmc-ddr-1_8v;
+ };
+
+ clk32k_in: xtal1 {
+ compatible = "fixed-clock";
+ #clock-cells = <0>;
+ clock-frequency = <32768>;
+ };
+
+ clk16m: osc4 {
+ compatible = "fixed-clock";
+ #clock-cells = <0>;
+ clock-frequency = <16000000>;
+ };
+
+ reg_1v8_avdd_hdmi_pll: regulator-1v8-avdd-hdmi-pll {
+ compatible = "regulator-fixed";
+ 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 = <®_1v8_vio>;
+ };
+
+ reg_3v3_avdd_hdmi: regulator-3v3-avdd-hdmi {
+ compatible = "regulator-fixed";
+ 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 = <®_module_3v3>;
+ };
+
+ reg_5v0_charge_pump: regulator-5v0-charge-pump {
+ compatible = "regulator-fixed";
+ regulator-name = "+V5.0";
+ regulator-min-microvolt = <5000000>;
+ regulator-max-microvolt = <5000000>;
+ regulator-always-on;
+ };
+
+ reg_module_3v3: regulator-module-3v3 {
+ compatible = "regulator-fixed";
+ regulator-name = "+V3.3";
+ regulator-min-microvolt = <3300000>;
+ regulator-max-microvolt = <3300000>;
+ regulator-always-on;
+ };
+
+ reg_module_3v3_audio: regulator-module-3v3-audio {
+ compatible = "regulator-fixed";
+ regulator-name = "+V3.3_AUDIO_AVDD_S";
+ regulator-min-microvolt = <3300000>;
+ regulator-max-microvolt = <3300000>;
+ regulator-always-on;
+ };
+
+ sound {
+ compatible = "toradex,tegra-audio-sgtl5000-apalis_t30",
+ "nvidia,tegra-audio-sgtl5000";
+ nvidia,model = "Toradex Apalis T30";
+ nvidia,audio-routing =
+ "Headphone Jack", "HP_OUT",
+ "LINE_IN", "Line In Jack",
+ "MIC_IN", "Mic Jack";
+ nvidia,i2s-controller = <&tegra_i2s2>;
+ nvidia,audio-codec = <&sgtl5000>;
+ clocks = <&tegra_car TEGRA30_CLK_PLL_A>,
+ <&tegra_car TEGRA30_CLK_PLL_A_OUT0>,
+ <&tegra_car TEGRA30_CLK_EXTERN1>;
+ clock-names = "pll_a", "pll_a_out0", "mclk";
+ };
+};
diff --git a/arch/arm/boot/dts/tegra30-apalis.dtsi b/arch/arm/boot/dts/tegra30-apalis.dtsi
index 23cecd327172..7f112f192fe9 100644
--- a/arch/arm/boot/dts/tegra30-apalis.dtsi
+++ b/arch/arm/boot/dts/tegra30-apalis.dtsi
@@ -3,8 +3,7 @@
/*
* 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
+ * Compatible for Revisions 1GB: V1.0A; 2GB: V1.0B, V1.0C, V1.0E
*/
/ {
memory@80000000 {
--
2.14.4
^ permalink raw reply related [flat|nested] 41+ messages in thread
* Re: [PATCH v2 26/34] dt-bindings: add broadcom (formerly plx technology) vendor prefix
2018-08-31 16:38 ` [PATCH v2 26/34] dt-bindings: add broadcom (formerly plx technology) vendor prefix Marcel Ziswiler
@ 2018-08-31 18:01 ` Andreas Färber
2018-09-25 18:24 ` Rob Herring
0 siblings, 1 reply; 41+ messages in thread
From: Andreas Färber @ 2018-08-31 18:01 UTC (permalink / raw)
To: Marcel Ziswiler, devicetree, linux-tegra, linux-kernel
Cc: Marcel Ziswiler, Thierry Reding, David Lechner, Rob Herring,
Johan Hovold, Alexandre Belloni, Mark Rutland
Am 31.08.2018 um 18:38 schrieb Marcel Ziswiler:
> From: Marcel Ziswiler <marcel.ziswiler@toradex.com>
>
> PLX Technology meanwhile got bought by Broadcom Corporation but the
> vendor prefix plx is still used in 8 current device trees. This silences
> the following checkpatch.pl warning:
>
> WARNING: DT compatible string vendor "plx" appears un-documented
> -- check ./Documentation/devicetree/bindings/vendor-prefixes.txt
>
> Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
Sounds sensible,
Reviewed-by: Andreas Färber <afaerber@suse.de>
You may want to tweak the subject though, it is slightly confusing as
Broadcom already has a vendor prefix.
Cheers,
Andreas
--
SUSE Linux GmbH, Maxfeldstr. 5, 90409 Nürnberg, Germany
GF: Felix Imendörffer, Jane Smithard, Graham Norton
HRB 21284 (AG Nürnberg)
^ permalink raw reply [flat|nested] 41+ messages in thread
* Re: [PATCH v2 15/34] ARM: tegra: apalis_t30: reorder backlight properties
2018-08-31 16:37 ` [PATCH v2 15/34] ARM: tegra: apalis_t30: reorder backlight properties Marcel Ziswiler
@ 2018-09-03 9:22 ` Daniel Thompson
2018-09-03 11:50 ` Marcel Ziswiler
0 siblings, 1 reply; 41+ messages in thread
From: Daniel Thompson @ 2018-09-03 9:22 UTC (permalink / raw)
To: Marcel Ziswiler
Cc: devicetree, linux-tegra, linux-kernel, Marcel Ziswiler,
Thierry Reding, Jonathan Hunter, Rob Herring, Mark Rutland
On Fri, Aug 31, 2018 at 06:37:57PM +0200, Marcel Ziswiler wrote:
> From: Marcel Ziswiler <marcel.ziswiler@toradex.com>
>
> Reorder backlight properties.
This is a bit terse. Should the header explain why too?
>
> Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
>
> ---
>
> Changes in v2: None
>
> arch/arm/boot/dts/tegra30-apalis-eval.dts | 3 +--
> 1 file changed, 1 insertion(+), 2 deletions(-)
>
> diff --git a/arch/arm/boot/dts/tegra30-apalis-eval.dts b/arch/arm/boot/dts/tegra30-apalis-eval.dts
> index 9f2392a05532..300ce726ff4d 100644
> --- a/arch/arm/boot/dts/tegra30-apalis-eval.dts
> +++ b/arch/arm/boot/dts/tegra30-apalis-eval.dts
> @@ -185,13 +185,12 @@
>
> backlight: backlight {
> compatible = "pwm-backlight";
> - /* PWM_BKL1 */
> - pwms = <&pwm 0 5000000>;
> brightness-levels = <255 231 223 207 191 159 127 0>;
> default-brightness-level = <6>;
> /* BKL1_ON */
> enable-gpios = <&gpio TEGRA_GPIO(V, 2) GPIO_ACTIVE_HIGH>;
> power-supply = <®_3v3>;
> + pwms = <&pwm 0 5000000>; /* BKL1_PWM */
> };
>
> gpio-keys {
> --
> 2.14.4
>
^ permalink raw reply [flat|nested] 41+ messages in thread
* Re: [PATCH v2 15/34] ARM: tegra: apalis_t30: reorder backlight properties
2018-09-03 9:22 ` Daniel Thompson
@ 2018-09-03 11:50 ` Marcel Ziswiler
0 siblings, 0 replies; 41+ messages in thread
From: Marcel Ziswiler @ 2018-09-03 11:50 UTC (permalink / raw)
To: daniel.thompson@linaro.org
Cc: thierry.reding@gmail.com, linux-kernel@vger.kernel.org,
mark.rutland@arm.com, jonathanh@nvidia.com,
linux-tegra@vger.kernel.org, devicetree@vger.kernel.org,
robh+dt@kernel.org
On Mon, 2018-09-03 at 10:22 +0100, Daniel Thompson wrote:
> On Fri, Aug 31, 2018 at 06:37:57PM +0200, Marcel Ziswiler wrote:
> > From: Marcel Ziswiler <marcel.ziswiler@toradex.com>
> >
> > Reorder backlight properties.
>
> This is a bit terse. Should the header explain why too?
I agree. I guess I missed mentioning it here explicitly. At other
places I did usually mentioned that it improves the situation in
regards to all our other device trees. It's just a pain to look at
various device trees if stuff is randomly ordered.
> > Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
> >
> > ---
> >
> > Changes in v2: None
> >
> > arch/arm/boot/dts/tegra30-apalis-eval.dts | 3 +--
> > 1 file changed, 1 insertion(+), 2 deletions(-)
> >
> > diff --git a/arch/arm/boot/dts/tegra30-apalis-eval.dts
> > b/arch/arm/boot/dts/tegra30-apalis-eval.dts
> > index 9f2392a05532..300ce726ff4d 100644
> > --- a/arch/arm/boot/dts/tegra30-apalis-eval.dts
> > +++ b/arch/arm/boot/dts/tegra30-apalis-eval.dts
> > @@ -185,13 +185,12 @@
> >
> > backlight: backlight {
> > compatible = "pwm-backlight";
> > - /* PWM_BKL1 */
> > - pwms = <&pwm 0 5000000>;
> > brightness-levels = <255 231 223 207 191 159 127
> > 0>;
> > default-brightness-level = <6>;
> > /* BKL1_ON */
> > enable-gpios = <&gpio TEGRA_GPIO(V, 2)
> > GPIO_ACTIVE_HIGH>;
> > power-supply = <®_3v3>;
> > + pwms = <&pwm 0 5000000>; /* BKL1_PWM */
> > };
> >
> > gpio-keys {
> > --
> > 2.14.4
^ permalink raw reply [flat|nested] 41+ messages in thread
* Re: [PATCH v2 26/34] dt-bindings: add broadcom (formerly plx technology) vendor prefix
2018-08-31 18:01 ` Andreas Färber
@ 2018-09-25 18:24 ` Rob Herring
0 siblings, 0 replies; 41+ messages in thread
From: Rob Herring @ 2018-09-25 18:24 UTC (permalink / raw)
To: Andreas Färber
Cc: Marcel Ziswiler, devicetree, linux-tegra, linux-kernel,
Marcel Ziswiler, Thierry Reding, David Lechner, Johan Hovold,
Alexandre Belloni, Mark Rutland
On Fri, Aug 31, 2018 at 08:01:01PM +0200, Andreas Färber wrote:
> Am 31.08.2018 um 18:38 schrieb Marcel Ziswiler:
> > From: Marcel Ziswiler <marcel.ziswiler@toradex.com>
> >
> > PLX Technology meanwhile got bought by Broadcom Corporation but the
> > vendor prefix plx is still used in 8 current device trees. This silences
> > the following checkpatch.pl warning:
> >
> > WARNING: DT compatible string vendor "plx" appears un-documented
> > -- check ./Documentation/devicetree/bindings/vendor-prefixes.txt
> >
> > Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
>
> Sounds sensible,
>
> Reviewed-by: Andreas Färber <afaerber@suse.de>
>
> You may want to tweak the subject though, it is slightly confusing as
> Broadcom already has a vendor prefix.
Yes, please.
With that,
Acked-by: Rob Herring <robh@kernel.org>
^ permalink raw reply [flat|nested] 41+ messages in thread
* Re: [PATCH v2 34/34] ARM: tegra: apalis_t30: support v1.1 hardware revision
2018-08-31 16:38 ` [PATCH v2 34/34] ARM: tegra: apalis_t30: support v1.1 hardware revision Marcel Ziswiler
@ 2018-09-25 18:32 ` Rob Herring
0 siblings, 0 replies; 41+ messages in thread
From: Rob Herring @ 2018-09-25 18:32 UTC (permalink / raw)
To: Marcel Ziswiler
Cc: devicetree, linux-tegra, linux-kernel, Marcel Ziswiler,
Mikko Perttunen, Thierry Reding, Jonathan Hunter, Mark Rutland
On Fri, Aug 31, 2018 at 06:38:16PM +0200, Marcel Ziswiler wrote:
> From: Marcel Ziswiler <marcel.ziswiler@toradex.com>
>
> Support the V1.1 hardware revisions with the following change:
>
> Changed power rail for MMC1 interface to a 3.3V/1.8V switchable rail in
> order to be able to run UHS SD cards in ultra high speed 1.8V mode.
>
> [ 207.502011] mmc2: host does not support reading read-only switch,
> assuming write-enable
> [ 207.517011] mmc2: new ultra high speed SDR104 SDHC card at address
> aaaa
> [ 207.534190] mmcblk2: mmc2:aaaa SE32G 29.7 GiB
> [ 207.545096] mmcblk2: p1
>
> root@apalis-t30:~# cat /sys/kernel/debug/mmc2/ios
> clock: 208000000 Hz
> actual clock: 204000000 Hz
> vdd: 21 (3.3 ~ 3.4 V)
> bus mode: 2 (push-pull)
> chip select: 0 (don't care)
> power mode: 2 (on)
> bus width: 2 (4 bits)
> timing spec: 6 (sd uhs SDR104)
> signal voltage: 1 (1.80 V)
> driver type: 0 (driver type B)
> root@apalis-t30:~# hdparm -t /dev/mmcblk2
>
> /dev/mmcblk2:
> Timing buffered disk reads: 256 MB in 3.02 seconds = 84.71 MB/sec
>
> Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
>
> ---
> + panel: panel {
> + /*
> + * edt,et057090dhu: EDT 5.7" LCD TFT
> + * edt,et070080dh6: EDT 7.0" LCD TFT
> + */
> + compatible = "edt,et057090dhu", "simple-panel";
"simple-panel" is not a valid compatible string.
> + backlight = <&backlight>;
> + power-supply = <®_3v3>;
> + };
With that,
Reviewed-by: Rob Herring <robh@kernel.org>
^ permalink raw reply [flat|nested] 41+ messages in thread
* Re: [PATCH v2 00/34] ARM: dts: tegra: apalis_t30: major revamp incl. v1.1 hardware support
2018-08-31 16:37 [PATCH v2 00/34] ARM: dts: tegra: apalis_t30: major revamp incl. v1.1 hardware support Marcel Ziswiler
` (33 preceding siblings ...)
2018-08-31 16:38 ` [PATCH v2 34/34] ARM: tegra: apalis_t30: support v1.1 hardware revision Marcel Ziswiler
@ 2018-09-26 14:46 ` Thierry Reding
34 siblings, 0 replies; 41+ messages in thread
From: Thierry Reding @ 2018-09-26 14:46 UTC (permalink / raw)
To: Marcel Ziswiler
Cc: devicetree, linux-tegra, linux-kernel, Alexandre Belloni,
Mikko Perttunen, Jonathan Hunter, David Lechner, Thierry Reding,
Rob Herring, Johan Hovold, Marcel Ziswiler, Mark Rutland,
Andreas Färber
[-- Attachment #1: Type: text/plain, Size: 4124 bytes --]
On Fri, Aug 31, 2018 at 06:37:42PM +0200, Marcel Ziswiler wrote:
> This series is a major overhaul and adds support for the V1.1 hardware
> revision of the Toradex Apalis T30 system on module.
>
> Changes in v2:
> - Clean-up PCIe controller/port status' as well.
> - Also move serial UART "nvidia,tegra30-hsuart" compatible to module
> level device trees.
> - Also add two missing newlines.
> - Also replace underscores in node names with dashes.
> - Explicitly disable input of BKL1_ON as well.
> - Replace underscores in node names with dashes.
> - When running some more tests I realized that the reg-addr should
> really be 0x3f. Fix this.
> - Get rid of fake clocks simple bus as suggested by Rob.
> - Replace "[PATCH 27/28] ARM: tegra: apalis_t30: fix pcie switch vendor
> compatible" with "[PATCH v2 26/34] dt-bindings: add broadcom (formerly
> plx technology) vendor prefix" as suggested by Stefan.
> - New patch as suggested by Rob.
> - New patch.
> - Drop "[PATCH 01/28] ARM: tegra: apalis_t30: enable broken-hpi on emmc"
> which should already be handled by the broken-hpi quirk as pointed out
> by Dmitry. If I would find more eMMC parts which exhibit the issue I
> will add them to the quirk as a separate patch.
> - Updated V1.1 device trees with all applicable previous fixes.
>
> Marcel Ziswiler (34):
> ARM: tegra: apalis_t30: fix mmc1 cmd pull-up
> ARM: tegra: apalis_t30: pull-up sd card detect pins
> ARM: tegra: apalis_t30: add local-mac-address property
> ARM: tegra: apalis_t30: reorder pcie properties
> ARM: tegra: apalis_t30: annotate/clean-up pcie controller/port nodes
> ARM: tegra: apalis_t30: reorder host1x/hdmi properties
> ARM: tegra: apalis_t30: regulator clean-up
> ARM: tegra: apalis_t30: add missing regulators
> ARM: tegra: apalis_t30: annotate uarts and move compatible to board
> ARM: tegra: apalis_t30: drop unused cami2c label
> ARM: tegra: apalis_t30: white-space/newline clean-up
> ARM: tegra: apalis_t30: drop unused mmc1/sd1 labels
> ARM: tegra: apalis_t30: annotate mmc1/sd1
> ARM: tegra: apalis_t30: move dr_mode property from phy to controller
> ARM: tegra: apalis_t30: reorder backlight properties
> ARM: tegra: apalis_t30: drop pwmleds
> ARM: tegra: apalis_t30: pinmux clean-up
> ARM: tegra: apalis_t30: add missing pinmux
> ARM: tegra: apalis_t30: use proper irq-gpio for stmpe811
> ARM: tegra: apalis_t30: further lm95245 temperature sensor annotation
> ARM: tegra: apalis_t30: add i2c-thermtrip
> ARM: tegra: apalis_t30: add proper emmc vmmc and vqmmc supplies
> ARM: tegra: apalis_t30: enable emmc ddr52 mode
> ARM: tegra: apalis_t30: get rid of fake clocks simple bus
> ARM: tegra: apalis_t30: line break long compatible property line
> dt-bindings: add broadcom (formerly plx technology) vendor prefix
> ARM: tegra: apalis_t30: drop module level model and compatible
> ARM: tegra: apalis_t30: drop obsolete spidev nodes
> ARM: tegra: apalis_t30: hog group for pcie switch reset gpio
> ARM: tegra: apalis_t30: rename hdmiddc to hdmi_ddc
> ARM: tegra: apalis_t30: rename tps65911@2d, stmpe811@41 and
> tps62362@60
> ARM: tegra: apalis_t30: fix mcp2515 can controller interrupt polarity
> ARM: tegra: apalis_t30: move hda node from carrier to module
> ARM: tegra: apalis_t30: support v1.1 hardware revision
>
> Documentation/devicetree/bindings/arm/tegra.txt | 2 +
> .../devicetree/bindings/vendor-prefixes.txt | 1 +
> arch/arm/boot/dts/Makefile | 1 +
> arch/arm/boot/dts/tegra30-apalis-eval.dts | 148 +--
> arch/arm/boot/dts/tegra30-apalis-v1.1-eval.dts | 266 +++++
> arch/arm/boot/dts/tegra30-apalis-v1.1.dtsi | 1189 ++++++++++++++++++++
> arch/arm/boot/dts/tegra30-apalis.dtsi | 705 +++++++++---
> 7 files changed, 2064 insertions(+), 248 deletions(-)
> create mode 100644 arch/arm/boot/dts/tegra30-apalis-v1.1-eval.dts
> create mode 100644 arch/arm/boot/dts/tegra30-apalis-v1.1.dtsi
Applied, thanks.
Thierry
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]
^ permalink raw reply [flat|nested] 41+ messages in thread
end of thread, other threads:[~2018-09-26 14:46 UTC | newest]
Thread overview: 41+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2018-08-31 16:37 [PATCH v2 00/34] ARM: dts: tegra: apalis_t30: major revamp incl. v1.1 hardware support Marcel Ziswiler
2018-08-31 16:37 ` [PATCH v2 01/34] ARM: tegra: apalis_t30: fix mmc1 cmd pull-up Marcel Ziswiler
2018-08-31 16:37 ` [PATCH v2 02/34] ARM: tegra: apalis_t30: pull-up sd card detect pins Marcel Ziswiler
2018-08-31 16:37 ` [PATCH v2 03/34] ARM: tegra: apalis_t30: add local-mac-address property Marcel Ziswiler
2018-08-31 16:37 ` [PATCH v2 04/34] ARM: tegra: apalis_t30: reorder pcie properties Marcel Ziswiler
2018-08-31 16:37 ` [PATCH v2 05/34] ARM: tegra: apalis_t30: annotate/clean-up pcie controller/port nodes Marcel Ziswiler
2018-08-31 16:37 ` [PATCH v2 06/34] ARM: tegra: apalis_t30: reorder host1x/hdmi properties Marcel Ziswiler
2018-08-31 16:37 ` [PATCH v2 07/34] ARM: tegra: apalis_t30: regulator clean-up Marcel Ziswiler
2018-08-31 16:37 ` [PATCH v2 08/34] ARM: tegra: apalis_t30: add missing regulators Marcel Ziswiler
2018-08-31 16:37 ` [PATCH v2 09/34] ARM: tegra: apalis_t30: annotate uarts and move compatible to board Marcel Ziswiler
2018-08-31 16:37 ` [PATCH v2 10/34] ARM: tegra: apalis_t30: drop unused cami2c label Marcel Ziswiler
2018-08-31 16:37 ` [PATCH v2 11/34] ARM: tegra: apalis_t30: white-space/newline clean-up Marcel Ziswiler
2018-08-31 16:37 ` [PATCH v2 12/34] ARM: tegra: apalis_t30: drop unused mmc1/sd1 labels Marcel Ziswiler
2018-08-31 16:37 ` [PATCH v2 13/34] ARM: tegra: apalis_t30: annotate mmc1/sd1 Marcel Ziswiler
2018-08-31 16:37 ` [PATCH v2 14/34] ARM: tegra: apalis_t30: move dr_mode property from phy to controller Marcel Ziswiler
2018-08-31 16:37 ` [PATCH v2 15/34] ARM: tegra: apalis_t30: reorder backlight properties Marcel Ziswiler
2018-09-03 9:22 ` Daniel Thompson
2018-09-03 11:50 ` Marcel Ziswiler
2018-08-31 16:37 ` [PATCH v2 16/34] ARM: tegra: apalis_t30: drop pwmleds Marcel Ziswiler
2018-08-31 16:37 ` [PATCH v2 17/34] ARM: tegra: apalis_t30: pinmux clean-up Marcel Ziswiler
2018-08-31 16:38 ` [PATCH v2 18/34] ARM: tegra: apalis_t30: add missing pinmux Marcel Ziswiler
2018-08-31 16:38 ` [PATCH v2 19/34] ARM: tegra: apalis_t30: use proper irq-gpio for stmpe811 Marcel Ziswiler
2018-08-31 16:38 ` [PATCH v2 20/34] ARM: tegra: apalis_t30: further lm95245 temperature sensor annotation Marcel Ziswiler
2018-08-31 16:38 ` [PATCH v2 21/34] ARM: tegra: apalis_t30: add i2c-thermtrip Marcel Ziswiler
2018-08-31 16:38 ` [PATCH v2 22/34] ARM: tegra: apalis_t30: add proper emmc vmmc and vqmmc supplies Marcel Ziswiler
2018-08-31 16:38 ` [PATCH v2 23/34] ARM: tegra: apalis_t30: enable emmc ddr52 mode Marcel Ziswiler
2018-08-31 16:38 ` [PATCH v2 24/34] ARM: tegra: apalis_t30: get rid of fake clocks simple bus Marcel Ziswiler
2018-08-31 16:38 ` [PATCH v2 25/34] ARM: tegra: apalis_t30: line break long compatible property line Marcel Ziswiler
2018-08-31 16:38 ` [PATCH v2 26/34] dt-bindings: add broadcom (formerly plx technology) vendor prefix Marcel Ziswiler
2018-08-31 18:01 ` Andreas Färber
2018-09-25 18:24 ` Rob Herring
2018-08-31 16:38 ` [PATCH v2 27/34] ARM: tegra: apalis_t30: drop module level model and compatible Marcel Ziswiler
2018-08-31 16:38 ` [PATCH v2 28/34] ARM: tegra: apalis_t30: drop obsolete spidev nodes Marcel Ziswiler
2018-08-31 16:38 ` [PATCH v2 29/34] ARM: tegra: apalis_t30: hog group for pcie switch reset gpio Marcel Ziswiler
2018-08-31 16:38 ` [PATCH v2 30/34] ARM: tegra: apalis_t30: rename hdmiddc to hdmi_ddc Marcel Ziswiler
2018-08-31 16:38 ` [PATCH v2 31/34] ARM: tegra: apalis_t30: rename tps65911@2d, stmpe811@41 and tps62362@60 Marcel Ziswiler
2018-08-31 16:38 ` [PATCH v2 32/34] ARM: tegra: apalis_t30: fix mcp2515 can controller interrupt polarity Marcel Ziswiler
2018-08-31 16:38 ` [PATCH v2 33/34] ARM: tegra: apalis_t30: move hda node from carrier to module Marcel Ziswiler
2018-08-31 16:38 ` [PATCH v2 34/34] ARM: tegra: apalis_t30: support v1.1 hardware revision Marcel Ziswiler
2018-09-25 18:32 ` Rob Herring
2018-09-26 14:46 ` [PATCH v2 00/34] ARM: dts: tegra: apalis_t30: major revamp incl. v1.1 hardware support Thierry Reding
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.