Commit 6b66d2ee47e28babb6fbca3206abda6d10961b36
Committed by
Tom Rini
1 parent
684af0be94
Exists in
smarc_8mq_lf_v2020.04
and in
9 other branches
ARM: dts: am57xx: Disable voltage switching for SD card
If UHS speed modes are enabled, a compatible SD card switches down to 1.8V during enumeration. If after this a software reboot/crash takes place and on-chip ROM tries to enumerate the SD card, the difference in IO voltages (host @ 3.3V and card @ 1.8V) may end up damaging the card. The fix for this is to have support for power cycling the card in hardware (with a PORz/soft-reset line causing a power cycle of the card). Because the beaglebone X15 (rev A,B and C), am57xx-evms and am57xx-idks don't have this capability, disable voltage switching for these boards. The major effect of this is that the maximum supported speed mode is now high speed(50 MHz) down from SDR104(200 MHz). Signed-off-by: Faiz Abbas <faiz_abbas@ti.com>
Showing 6 changed files with 6 additions and 24 deletions Side-by-side Diff
arch/arm/dts/am571x-idk.dts
... | ... | @@ -102,14 +102,9 @@ |
102 | 102 | }; |
103 | 103 | |
104 | 104 | &mmc1 { |
105 | - pinctrl-names = "default", "hs", "sdr12", "sdr25", "sdr50", "ddr50", "sdr104"; | |
105 | + pinctrl-names = "default", "hs"; | |
106 | 106 | pinctrl-0 = <&mmc1_pins_default_no_clk_pu>; |
107 | 107 | pinctrl-1 = <&mmc1_pins_hs>; |
108 | - pinctrl-2 = <&mmc1_pins_sdr12>; | |
109 | - pinctrl-3 = <&mmc1_pins_sdr25>; | |
110 | - pinctrl-4 = <&mmc1_pins_sdr50>; | |
111 | - pinctrl-5 = <&mmc1_pins_ddr50_rev20 &mmc1_iodelay_ddr50_conf>; | |
112 | - pinctrl-6 = <&mmc1_pins_sdr104 &mmc1_iodelay_sdr104_rev20_conf>; | |
113 | 108 | }; |
114 | 109 | |
115 | 110 | &mmc2 { |
arch/arm/dts/am572x-idk.dts
... | ... | @@ -21,14 +21,9 @@ |
21 | 21 | }; |
22 | 22 | |
23 | 23 | &mmc1 { |
24 | - pinctrl-names = "default", "hs", "sdr12", "sdr25", "sdr50", "ddr50", "sdr104"; | |
24 | + pinctrl-names = "default", "hs"; | |
25 | 25 | pinctrl-0 = <&mmc1_pins_default_no_clk_pu>; |
26 | 26 | pinctrl-1 = <&mmc1_pins_hs>; |
27 | - pinctrl-2 = <&mmc1_pins_sdr12>; | |
28 | - pinctrl-3 = <&mmc1_pins_sdr25>; | |
29 | - pinctrl-4 = <&mmc1_pins_sdr50>; | |
30 | - pinctrl-5 = <&mmc1_pins_ddr50 &mmc1_iodelay_ddr_rev20_conf>; | |
31 | - pinctrl-6 = <&mmc1_pins_sdr104 &mmc1_iodelay_sdr104_rev20_conf>; | |
32 | 27 | }; |
33 | 28 | |
34 | 29 | &mmc2 { |
arch/arm/dts/am57xx-beagle-x15-common.dtsi
arch/arm/dts/am57xx-beagle-x15-revb1.dts
... | ... | @@ -19,14 +19,9 @@ |
19 | 19 | }; |
20 | 20 | |
21 | 21 | &mmc1 { |
22 | - pinctrl-names = "default", "hs", "sdr12", "sdr25", "sdr50", "ddr50", "sdr104"; | |
22 | + pinctrl-names = "default", "hs"; | |
23 | 23 | pinctrl-0 = <&mmc1_pins_default>; |
24 | 24 | pinctrl-1 = <&mmc1_pins_hs>; |
25 | - pinctrl-2 = <&mmc1_pins_sdr12>; | |
26 | - pinctrl-3 = <&mmc1_pins_sdr25>; | |
27 | - pinctrl-4 = <&mmc1_pins_sdr50>; | |
28 | - pinctrl-5 = <&mmc1_pins_ddr50 &mmc1_iodelay_ddr_rev11_conf>; | |
29 | - pinctrl-6 = <&mmc1_pins_sdr104 &mmc1_iodelay_sdr104_rev11_conf>; | |
30 | 25 | vmmc-supply = <&vdd_3v3>; |
31 | 26 | vqmmc-supply = <&ldo1_reg>; |
32 | 27 | }; |
arch/arm/dts/am57xx-beagle-x15-revc.dts
... | ... | @@ -19,14 +19,9 @@ |
19 | 19 | }; |
20 | 20 | |
21 | 21 | &mmc1 { |
22 | - pinctrl-names = "default", "hs", "sdr12", "sdr25", "sdr50", "ddr50", "sdr104"; | |
22 | + pinctrl-names = "default", "hs"; | |
23 | 23 | pinctrl-0 = <&mmc1_pins_default>; |
24 | 24 | pinctrl-1 = <&mmc1_pins_hs>; |
25 | - pinctrl-2 = <&mmc1_pins_sdr12>; | |
26 | - pinctrl-3 = <&mmc1_pins_sdr25>; | |
27 | - pinctrl-4 = <&mmc1_pins_sdr50>; | |
28 | - pinctrl-5 = <&mmc1_pins_ddr50 &mmc1_iodelay_ddr_rev20_conf>; | |
29 | - pinctrl-6 = <&mmc1_pins_sdr104 &mmc1_iodelay_sdr104_rev20_conf>; | |
30 | 25 | vmmc-supply = <&vdd_3v3>; |
31 | 26 | vqmmc-supply = <&ldo1_reg>; |
32 | 27 | }; |