* [PATCH] ARM: dts: tegra: correct Beaver pinmux
@ 2016-02-23 20:49 Lucas Stach
[not found] ` <1456260543-18076-1-git-send-email-dev-8ppwABl0HbeELgA04lAiVw@public.gmane.org>
0 siblings, 1 reply; 3+ messages in thread
From: Lucas Stach @ 2016-02-23 20:49 UTC (permalink / raw)
To: linux-tegra-u79uwXL29TY76Z2rM5mHXA
Update pinmux to get rid of invalid uses of the rsvd1 function and
add correct drive settings for SDIO1, which makes some more SD-cards
work.
Signed-off-by: Lucas Stach <dev-8ppwABl0HbeELgA04lAiVw@public.gmane.org>
---
arch/arm/boot/dts/tegra30-beaver.dts | 39 ++++++++++++++++++++++--------------
1 file changed, 24 insertions(+), 15 deletions(-)
diff --git a/arch/arm/boot/dts/tegra30-beaver.dts b/arch/arm/boot/dts/tegra30-beaver.dts
index 3dede39..1daed40 100644
--- a/arch/arm/boot/dts/tegra30-beaver.dts
+++ b/arch/arm/boot/dts/tegra30-beaver.dts
@@ -255,14 +255,14 @@
};
sdmmc3_dat6_pd3 {
nvidia,pins = "sdmmc3_dat6_pd3";
- nvidia,function = "rsvd1";
+ nvidia,function = "spdif";
nvidia,pull = <TEGRA_PIN_PULL_NONE>;
nvidia,tristate = <TEGRA_PIN_DISABLE>;
nvidia,enable-input = <TEGRA_PIN_ENABLE>;
};
sdmmc3_dat7_pd4 {
nvidia,pins = "sdmmc3_dat7_pd4";
- nvidia,function = "rsvd1";
+ nvidia,function = "spdif";
nvidia,pull = <TEGRA_PIN_PULL_NONE>;
nvidia,tristate = <TEGRA_PIN_DISABLE>;
nvidia,enable-input = <TEGRA_PIN_ENABLE>;
@@ -276,14 +276,14 @@
};
vi_vsync_pd6 {
nvidia,pins = "vi_vsync_pd6";
- nvidia,function = "rsvd1";
+ nvidia,function = "ddr";
nvidia,pull = <TEGRA_PIN_PULL_NONE>;
nvidia,tristate = <TEGRA_PIN_DISABLE>;
nvidia,enable-input = <TEGRA_PIN_ENABLE>;
};
vi_hsync_pd7 {
nvidia,pins = "vi_hsync_pd7";
- nvidia,function = "rsvd1";
+ nvidia,function = "ddr";
nvidia,pull = <TEGRA_PIN_PULL_NONE>;
nvidia,tristate = <TEGRA_PIN_DISABLE>;
nvidia,enable-input = <TEGRA_PIN_ENABLE>;
@@ -801,7 +801,7 @@
};
hdmi_int_pn7 {
nvidia,pins = "hdmi_int_pn7";
- nvidia,function = "rsvd1";
+ nvidia,function = "hdmi";
nvidia,pull = <TEGRA_PIN_PULL_NONE>;
nvidia,tristate = <TEGRA_PIN_ENABLE>;
nvidia,enable-input = <TEGRA_PIN_ENABLE>;
@@ -836,7 +836,7 @@
};
ulpi_data3_po4 {
nvidia,pins = "ulpi_data3_po4";
- nvidia,function = "rsvd1";
+ nvidia,function = "uarta";
nvidia,pull = <TEGRA_PIN_PULL_NONE>;
nvidia,tristate = <TEGRA_PIN_DISABLE>;
nvidia,enable-input = <TEGRA_PIN_ENABLE>;
@@ -1102,21 +1102,21 @@
};
vi_d10_pt2 {
nvidia,pins = "vi_d10_pt2";
- nvidia,function = "rsvd1";
+ nvidia,function = "ddr";
nvidia,pull = <TEGRA_PIN_PULL_NONE>;
nvidia,tristate = <TEGRA_PIN_DISABLE>;
nvidia,enable-input = <TEGRA_PIN_ENABLE>;
};
vi_d11_pt3 {
nvidia,pins = "vi_d11_pt3";
- nvidia,function = "rsvd1";
+ nvidia,function = "ddr";
nvidia,pull = <TEGRA_PIN_PULL_UP>;
nvidia,tristate = <TEGRA_PIN_DISABLE>;
nvidia,enable-input = <TEGRA_PIN_ENABLE>;
};
vi_d0_pt4 {
nvidia,pins = "vi_d0_pt4";
- nvidia,function = "rsvd1";
+ nvidia,function = "ddr";
nvidia,pull = <TEGRA_PIN_PULL_NONE>;
nvidia,tristate = <TEGRA_PIN_DISABLE>;
nvidia,enable-input = <TEGRA_PIN_ENABLE>;
@@ -1146,7 +1146,7 @@
};
pu0 {
nvidia,pins = "pu0";
- nvidia,function = "rsvd1";
+ nvidia,function = "owr";
nvidia,pull = <TEGRA_PIN_PULL_NONE>;
nvidia,tristate = <TEGRA_PIN_DISABLE>;
nvidia,enable-input = <TEGRA_PIN_ENABLE>;
@@ -1167,7 +1167,7 @@
};
pu3 {
nvidia,pins = "pu3";
- nvidia,function = "rsvd1";
+ nvidia,function = "pwm0";
nvidia,pull = <TEGRA_PIN_PULL_NONE>;
nvidia,tristate = <TEGRA_PIN_DISABLE>;
nvidia,enable-input = <TEGRA_PIN_ENABLE>;
@@ -1188,7 +1188,7 @@
};
pu6 {
nvidia,pins = "pu6";
- nvidia,function = "rsvd1";
+ nvidia,function = "pwm3";
nvidia,pull = <TEGRA_PIN_PULL_NONE>;
nvidia,tristate = <TEGRA_PIN_DISABLE>;
nvidia,enable-input = <TEGRA_PIN_ENABLE>;
@@ -1216,7 +1216,7 @@
};
pv3 {
nvidia,pins = "pv3";
- nvidia,function = "rsvd1";
+ nvidia,function = "clk_12m_out";
nvidia,pull = <TEGRA_PIN_PULL_NONE>;
nvidia,tristate = <TEGRA_PIN_DISABLE>;
nvidia,enable-input = <TEGRA_PIN_DISABLE>;
@@ -1505,7 +1505,7 @@
};
pbb0 {
nvidia,pins = "pbb0";
- nvidia,function = "rsvd1";
+ nvidia,function = "i2s4";
nvidia,pull = <TEGRA_PIN_PULL_NONE>;
nvidia,tristate = <TEGRA_PIN_DISABLE>;
nvidia,enable-input = <TEGRA_PIN_ENABLE>;
@@ -1570,7 +1570,7 @@
};
pcc1 {
nvidia,pins = "pcc1";
- nvidia,function = "rsvd1";
+ nvidia,function = "i2s4";
nvidia,pull = <TEGRA_PIN_PULL_NONE>;
nvidia,tristate = <TEGRA_PIN_DISABLE>;
nvidia,enable-input = <TEGRA_PIN_ENABLE>;
@@ -1718,6 +1718,15 @@
nvidia,slew-rate-rising = <1>;
nvidia,slew-rate-falling = <1>;
};
+ sdio1 {
+ nvidia,pins = "drive_sdio1";
+ nvidia,high-speed-mode = <TEGRA_PIN_DISABLE>;
+ nvidia,schmitt = <TEGRA_PIN_DISABLE>;
+ nvidia,pull-down-strength = <46>;
+ nvidia,pull-up-strength = <42>;
+ nvidia,slew-rate-rising = <1>;
+ nvidia,slew-rate-falling = <1>;
+ };
gpv {
nvidia,pins = "drive_gpv";
nvidia,pull-up-strength = <16>;
--
2.5.0
^ permalink raw reply related [flat|nested] 3+ messages in thread
* Re: [PATCH] ARM: dts: tegra: correct Beaver pinmux
2016-02-23 20:49 [PATCH] ARM: dts: tegra: correct Beaver pinmux Lucas Stach
@ 2016-02-23 21:56 ` Stephen Warren
0 siblings, 0 replies; 3+ messages in thread
From: Stephen Warren @ 2016-02-23 21:56 UTC (permalink / raw)
To: Lucas Stach
Cc: linux-tegra-u79uwXL29TY76Z2rM5mHXA, Thierry Reding,
Alexandre Courbot, ARM kernel mailing list
On 02/23/2016 01:49 PM, Lucas Stach wrote:
> Update pinmux to get rid of invalid uses of the rsvd1 function and
> add correct drive settings for SDIO1, which makes some more SD-cards
> work.
(Adding a variety of missing CCs)
I think this patch looks OK. Looking at the kernel pinctrl driver, I
think that before this patch, because some of the mux settings were
deemed invalid by the pinctrl driver, the pinmux settings were not all
applied, and this change fixes it? Ouch! Luckily U-Boot programmed what
is hopefully the same table before the kernel booted!
> diff --git a/arch/arm/boot/dts/tegra30-beaver.dts b/arch/arm/boot/dts/tegra30-beaver.dts
... (many other fixes; see original email)
> + sdio1 {
> + nvidia,pins = "drive_sdio1";
> + nvidia,high-speed-mode = <TEGRA_PIN_DISABLE>;
> + nvidia,schmitt = <TEGRA_PIN_DISABLE>;
> + nvidia,pull-down-strength = <46>;
> + nvidia,pull-up-strength = <42>;
> + nvidia,slew-rate-rising = <1>;
> + nvidia,slew-rate-falling = <1>;
> + };
I think it would be worth mentioning in the commit description where
this data came from.
^ permalink raw reply [flat|nested] 3+ messages in thread
* [PATCH] ARM: dts: tegra: correct Beaver pinmux
@ 2016-02-23 21:56 ` Stephen Warren
0 siblings, 0 replies; 3+ messages in thread
From: Stephen Warren @ 2016-02-23 21:56 UTC (permalink / raw)
To: linux-arm-kernel
On 02/23/2016 01:49 PM, Lucas Stach wrote:
> Update pinmux to get rid of invalid uses of the rsvd1 function and
> add correct drive settings for SDIO1, which makes some more SD-cards
> work.
(Adding a variety of missing CCs)
I think this patch looks OK. Looking at the kernel pinctrl driver, I
think that before this patch, because some of the mux settings were
deemed invalid by the pinctrl driver, the pinmux settings were not all
applied, and this change fixes it? Ouch! Luckily U-Boot programmed what
is hopefully the same table before the kernel booted!
> diff --git a/arch/arm/boot/dts/tegra30-beaver.dts b/arch/arm/boot/dts/tegra30-beaver.dts
... (many other fixes; see original email)
> + sdio1 {
> + nvidia,pins = "drive_sdio1";
> + nvidia,high-speed-mode = <TEGRA_PIN_DISABLE>;
> + nvidia,schmitt = <TEGRA_PIN_DISABLE>;
> + nvidia,pull-down-strength = <46>;
> + nvidia,pull-up-strength = <42>;
> + nvidia,slew-rate-rising = <1>;
> + nvidia,slew-rate-falling = <1>;
> + };
I think it would be worth mentioning in the commit description where
this data came from.
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2016-02-23 21:56 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-02-23 20:49 [PATCH] ARM: dts: tegra: correct Beaver pinmux Lucas Stach
[not found] ` <1456260543-18076-1-git-send-email-dev-8ppwABl0HbeELgA04lAiVw@public.gmane.org>
2016-02-23 21:56 ` Stephen Warren
2016-02-23 21:56 ` Stephen Warren
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.