@@ -315,19 +315,20 @@ buck5_reg: BUCK5 {
};
&mshc_0 {
- non-removable;
+ status = "okay";
+ bus-width = <8>;
cap-mmc-highspeed;
card-detect-delay = <200>;
- vmmc-supply = <&ldo12_reg>;
clock-frequency = <100000000>;
max-frequency = <100000000>;
+ mmc-ddr-1_8v;
+ non-removable;
+ pinctrl-0 = <&sd0_cmd &sd0_bus1 &sd0_bus4 &sd0_bus8>;
+ pinctrl-names = "default";
samsung,dw-mshc-ciu-div = <1>;
- samsung,dw-mshc-sdr-timing = <0 1>;
samsung,dw-mshc-ddr-timing = <1 2>;
- pinctrl-names = "default";
- pinctrl-0 = <&sd0_cmd &sd0_bus1 &sd0_bus4 &sd0_bus8>;
- bus-width = <8>;
- status = "okay";
+ samsung,dw-mshc-sdr-timing = <0 1>;
+ vmmc-supply = <&ldo12_reg>;
};
&mshc_1 {
@@ -433,23 +433,22 @@ &i2s2 {
};
&mshc_0 {
- #address-cells = <1>;
- #size-cells = <0>;
+ status = "okay";
broken-cd;
- non-removable;
+ bus-width = <8>;
cap-mmc-highspeed;
- mmc-hs200-1_8v;
card-detect-delay = <200>;
- vmmc-supply = <&vemmc_reg>;
clock-frequency = <100000000>;
max-frequency = <100000000>;
+ mmc-ddr-1_8v;
+ mmc-hs200-1_8v;
+ non-removable;
+ pinctrl-0 = <&sd0_cmd &sd0_bus1 &sd0_bus4 &sd0_bus8>;
+ pinctrl-names = "default";
samsung,dw-mshc-ciu-div = <1>;
- samsung,dw-mshc-sdr-timing = <0 1>;
samsung,dw-mshc-ddr-timing = <1 2>;
- pinctrl-names = "default";
- pinctrl-0 = <&sd0_cmd &sd0_bus1 &sd0_bus4 &sd0_bus8>;
- bus-width = <8>;
- status = "okay";
+ samsung,dw-mshc-sdr-timing = <0 1>;
+ vmmc-supply = <&vemmc_reg>;
};
&serial_0 {
@@ -616,29 +616,26 @@ &jpeg {
};
&mshc_0 {
+ status = "okay";
broken-cd;
- non-removable;
+ bus-width = <8>;
cap-mmc-highspeed;
- mmc-hs200-1_8v;
card-detect-delay = <200>;
- vmmc-supply = <&ldo12_reg>;
clock-frequency = <100000000>;
max-frequency = <100000000>;
+ mmc-ddr-1_8v;
+ mmc-hs200-1_8v;
+ non-removable;
+ pinctrl-0 = <&sd0_cmd &sd0_bus1 &sd0_bus4 &sd0_bus8>;
+ pinctrl-names = "default";
samsung,dw-mshc-ciu-div = <1>;
- samsung,dw-mshc-sdr-timing = <0 1>;
samsung,dw-mshc-ddr-timing = <1 2>;
- pinctrl-names = "default";
- pinctrl-0 = <&sd0_cmd &sd0_bus1 &sd0_bus4 &sd0_bus8>;
- bus-width = <8>;
- status = "okay";
+ samsung,dw-mshc-sdr-timing = <0 1>;
+ vmmc-supply = <&ldo12_reg>;
};
&mshc_1 {
status = "okay";
-
- #address-cells = <1>;
- #size-cells = <0>;
-
non-removable;
cap-sd-highspeed;
cap-sdio-irq;
@@ -28,9 +28,6 @@ / {
aliases {
pinctrl0 = &pinctrl_0;
pinctrl1 = &pinctrl_1;
- mshc0 = &mshc_0;
- mshc1 = &mshc_1;
- mshc2 = &mshc_2;
spi0 = &spi_0;
spi1 = &spi_1;
i2c0 = &i2c_0;
@@ -774,13 +774,12 @@ &rtc {
&sdhci_0 {
status = "okay";
-
bus-width = <8>;
+ mmc-ddr-1_8v;
non-removable;
- vmmc-supply = <&vemmc_reg>;
-
pinctrl-0 = <&sd0_clk>, <&sd0_cmd>, <&sd0_bus8>;
pinctrl-names = "default";
+ vmmc-supply = <&vemmc_reg>;
};
&sdhci_2 {
@@ -325,11 +325,12 @@ max8997_irq: max8997-irq-pins {
};
&sdhci_0 {
+ status = "okay";
bus-width = <4>;
+ mmc-ddr-1_8v;
pinctrl-0 = <&sd0_clk &sd0_cmd &sd0_bus4 &sd0_cd>;
pinctrl-names = "default";
vmmc-supply = <&mmc_reg>;
- status = "okay";
};
&sdhci_2 {
@@ -490,12 +490,13 @@ &rtc {
};
&sdhci_0 {
+ status = "okay";
bus-width = <8>;
+ mmc-ddr-1_8v;
non-removable;
pinctrl-0 = <&sd0_clk &sd0_cmd &sd0_bus8>;
pinctrl-names = "default";
vmmc-supply = <&vemmc_reg>;
- status = "okay";
};
&sdhci_2 {
@@ -583,12 +583,13 @@ &rtc {
};
&sdhci_0 {
+ status = "okay";
bus-width = <8>;
+ mmc-ddr-1_8v;
non-removable;
pinctrl-0 = <&sd0_clk &sd0_cmd &sd0_bus8>;
pinctrl-names = "default";
vmmc-supply = <&vemmc_reg>;
- status = "okay";
};
&sdhci_2 {
@@ -20,6 +20,10 @@ / {
model = "TOPEET iTop 4412 Elite board based on Exynos4412";
compatible = "topeet,itop4412-elite", "samsung,exynos4412", "samsung,exynos4";
+ aliases {
+ mmc2 = &sdhci_2;
+ };
+
chosen {
bootargs = "root=/dev/mmcblk0p2 rw rootfstype=ext4 rootdelay=1 rootwait";
stdout-path = "serial2:115200n8";
@@ -23,6 +23,10 @@ memory@40000000 {
reg = <0x40000000 0x40000000>;
};
+ aliases {
+ mmc0 = &mshc_0;
+ };
+
firmware@203f000 {
compatible = "samsung,secure-firmware";
reg = <0x0203f000 0x1000>;
@@ -470,17 +474,18 @@ &mfc {
};
&mshc_0 {
- pinctrl-0 = <&sd4_clk &sd4_cmd &sd4_bus4 &sd4_bus8>;
- pinctrl-names = "default";
status = "okay";
- vmmc-supply = <&buck9_reg>;
broken-cd;
+ bus-width = <8>;
+ cap-mmc-highspeed;
card-detect-delay = <200>;
+ mmc-ddr-1_8v;
+ pinctrl-0 = <&sd4_clk &sd4_cmd &sd4_bus4 &sd4_bus8>;
+ pinctrl-names = "default";
samsung,dw-mshc-ciu-div = <3>;
- samsung,dw-mshc-sdr-timing = <2 3>;
samsung,dw-mshc-ddr-timing = <1 2>;
- bus-width = <8>;
- cap-mmc-highspeed;
+ samsung,dw-mshc-sdr-timing = <2 3>;
+ vmmc-supply = <&buck9_reg>;
};
&pinctrl_1 {
@@ -971,19 +971,20 @@ &mixer {
};
&mshc_0 {
+ status = "okay";
broken-cd;
- non-removable;
+ bus-width = <8>;
+ cap-mmc-highspeed;
card-detect-delay = <200>;
- vmmc-supply = <&ldo22_reg>;
clock-frequency = <400000000>;
- samsung,dw-mshc-ciu-div = <0>;
- samsung,dw-mshc-sdr-timing = <2 3>;
- samsung,dw-mshc-ddr-timing = <1 2>;
+ mmc-ddr-1_8v;
+ non-removable;
pinctrl-0 = <&sd4_clk &sd4_cmd &sd4_bus4 &sd4_bus8>;
pinctrl-names = "default";
- status = "okay";
- bus-width = <8>;
- cap-mmc-highspeed;
+ samsung,dw-mshc-ciu-div = <0>;
+ samsung,dw-mshc-ddr-timing = <1 2>;
+ samsung,dw-mshc-sdr-timing = <2 3>;
+ vmmc-supply = <&ldo22_reg>;
};
&pmu_system_controller {
@@ -525,19 +525,19 @@ &mixer {
};
&mshc_0 {
- pinctrl-0 = <&sd4_clk &sd4_cmd &sd4_bus4 &sd4_bus8>;
- pinctrl-names = "default";
- vmmc-supply = <&ldo20_reg>;
- mmc-pwrseq = <&emmc_pwrseq>;
status = "okay";
-
broken-cd;
+ bus-width = <8>;
+ cap-mmc-highspeed;
card-detect-delay = <200>;
+ mmc-ddr-1_8v;
+ mmc-pwrseq = <&emmc_pwrseq>;
+ pinctrl-0 = <&sd4_clk &sd4_cmd &sd4_bus4 &sd4_bus8>;
+ pinctrl-names = "default";
samsung,dw-mshc-ciu-div = <3>;
- samsung,dw-mshc-sdr-timing = <2 3>;
samsung,dw-mshc-ddr-timing = <1 2>;
- bus-width = <8>;
- cap-mmc-highspeed;
+ samsung,dw-mshc-sdr-timing = <2 3>;
+ vmmc-supply = <&ldo20_reg>;
};
&rtc {
@@ -492,17 +492,17 @@ key-enter {
};
&mshc_0 {
- pinctrl-0 = <&sd4_clk &sd4_cmd &sd4_bus4 &sd4_bus8>;
- pinctrl-names = "default";
status = "okay";
-
broken-cd;
+ bus-width = <8>;
+ cap-mmc-highspeed;
card-detect-delay = <200>;
+ mmc-ddr-1_8v;
+ pinctrl-0 = <&sd4_clk &sd4_cmd &sd4_bus4 &sd4_bus8>;
+ pinctrl-names = "default";
samsung,dw-mshc-ciu-div = <3>;
- samsung,dw-mshc-sdr-timing = <2 3>;
samsung,dw-mshc-ddr-timing = <1 2>;
- bus-width = <8>;
- cap-mmc-highspeed;
+ samsung,dw-mshc-sdr-timing = <2 3>;
};
&pinctrl_1 {
@@ -688,19 +688,20 @@ regulator-state-mem {
};
&mshc_0 {
+ status = "okay";
broken-cd;
- non-removable;
+ bus-width = <4>;
+ cap-mmc-highspeed;
+ cap-sd-highspeed;
card-detect-delay = <200>;
clock-frequency = <400000000>;
- samsung,dw-mshc-ciu-div = <0>;
- samsung,dw-mshc-sdr-timing = <2 3>;
- samsung,dw-mshc-ddr-timing = <1 2>;
+ mmc-ddr-1_8v;
+ non-removable;
pinctrl-0 = <&sd4_clk &sd4_cmd &sd4_bus4 &sd4_bus8>;
pinctrl-names = "default";
- bus-width = <4>;
- cap-mmc-highspeed;
- cap-sd-highspeed;
- status = "okay";
+ samsung,dw-mshc-ciu-div = <0>;
+ samsung,dw-mshc-ddr-timing = <1 2>;
+ samsung,dw-mshc-sdr-timing = <2 3>;
};
&pinctrl_0 {
@@ -28,7 +28,6 @@ aliases {
pinctrl3 = &pinctrl_3;
fimc-lite0 = &fimc_lite_0;
fimc-lite1 = &fimc_lite_1;
- mshc0 = &mshc_0;
};
bus_acp: bus-acp {
@@ -586,6 +586,7 @@ &mmc_0 {
pinctrl-0 = <&sd0_clk &sd0_cmd &sd0_bus4 &sd0_bus8>;
bus-width = <8>;
cap-mmc-highspeed;
+ mmc-ddr-1_8v;
};
&mmc_2 {
@@ -350,6 +350,7 @@ &mmc_0 {
pinctrl-0 = <&sd0_clk &sd0_cmd &sd0_bus4 &sd0_bus8>;
bus-width = <8>;
cap-mmc-highspeed;
+ mmc-ddr-1_8v;
};
&mmc_2 {
@@ -549,6 +549,7 @@ &mmc_0 {
pinctrl-0 = <&sd0_clk &sd0_cmd &sd0_cd &sd0_bus4 &sd0_bus8>;
bus-width = <8>;
cap-mmc-highspeed;
+ mmc-ddr-1_8v;
};
/* uSD card */
@@ -431,6 +431,7 @@ &mmc_0 {
pinctrl-0 = <&sd0_clk &sd0_cmd &sd0_cd &sd0_bus4 &sd0_bus8>;
bus-width = <8>;
cap-mmc-highspeed;
+ mmc-ddr-1_8v;
};
/*
@@ -30,10 +30,6 @@ aliases {
gsc1 = &gsc_1;
gsc2 = &gsc_2;
gsc3 = &gsc_3;
- mshc0 = &mmc_0;
- mshc1 = &mmc_1;
- mshc2 = &mmc_2;
- mshc3 = &mmc_3;
i2c4 = &i2c_4;
i2c5 = &i2c_5;
i2c6 = &i2c_6;
@@ -86,15 +86,16 @@ &uart3 {
&mmc_0 {
status = "okay";
broken-cd;
+ bus-width = <8>;
cap-mmc-highspeed;
- mmc-hs200-1_8v;
card-detect-delay = <200>;
+ mmc-ddr-1_8v;
+ mmc-hs200-1_8v;
+ pinctrl-0 = <&sd0_rdqs &sd0_clk &sd0_cmd &sd0_bus1 &sd0_bus4 &sd0_bus8>;
+ pinctrl-names = "default";
samsung,dw-mshc-ciu-div = <3>;
- samsung,dw-mshc-sdr-timing = <0 4>;
samsung,dw-mshc-ddr-timing = <0 2>;
- pinctrl-names = "default";
- pinctrl-0 = <&sd0_rdqs &sd0_clk &sd0_cmd &sd0_bus1 &sd0_bus4 &sd0_bus8>;
- bus-width = <8>;
+ samsung,dw-mshc-sdr-timing = <0 4>;
};
&mmc_2 {
@@ -514,6 +514,7 @@ &mmc_0 {
pinctrl-0 = <&sd0_clk &sd0_cmd &sd0_bus1 &sd0_bus4 &sd0_bus8 &sd0_cd>;
bus-width = <8>;
cap-mmc-highspeed;
+ mmc-ddr-1_8v;
mmc-hs200-1_8v;
vmmc-supply = <&ldo20_reg>;
vqmmc-supply = <&ldo11_reg>;
@@ -61,6 +61,7 @@ &mmc_0 {
cap-mmc-highspeed;
broken-cd;
card-detect-delay = <200>;
+ mmc-ddr-1_8v;
samsung,dw-mshc-ciu-div = <3>;
samsung,dw-mshc-sdr-timing = <2 3>;
samsung,dw-mshc-ddr-timing = <1 2>;
@@ -778,6 +778,7 @@ &mmc_0 {
status = "okay";
non-removable;
card-detect-delay = <200>;
+ mmc-ddr-1_8v;
samsung,dw-mshc-ciu-div = <3>;
samsung,dw-mshc-sdr-timing = <0 4>;
samsung,dw-mshc-ddr-timing = <0 2>;
@@ -604,6 +604,7 @@ &mmc_0 {
bus-width = <8>;
cap-mmc-highspeed;
card-detect-delay = <200>;
+ mmc-ddr-1_8v;
mmc-hs200-1_8v;
non-removable;
pinctrl-0 = <&sd0_clk &sd0_cmd &sd0_bus1 &sd0_bus4 &sd0_bus8>;
@@ -722,6 +722,7 @@ &mixer {
/* eMMC flash */
&mmc_0 {
status = "okay";
+ mmc-ddr-1_8v;
mmc-hs200-1_8v;
cap-mmc-highspeed;
non-removable;
@@ -355,6 +355,7 @@ &mmc_0 {
status = "okay";
broken-cd;
card-detect-delay = <200>;
+ mmc-ddr-1_8v;
samsung,dw-mshc-ciu-div = <3>;
samsung,dw-mshc-sdr-timing = <0 4>;
samsung,dw-mshc-ddr-timing = <0 2>;
@@ -19,9 +19,6 @@ / {
compatible = "samsung,exynos5420", "samsung,exynos5";
aliases {
- mshc0 = &mmc_0;
- mshc1 = &mmc_1;
- mshc2 = &mmc_2;
pinctrl0 = &pinctrl_0;
pinctrl1 = &pinctrl_1;
pinctrl2 = &pinctrl_2;
@@ -472,6 +472,7 @@ &mmc_0 {
pinctrl-0 = <&sd0_clk &sd0_cmd &sd0_bus1 &sd0_bus4 &sd0_bus8 &sd0_cd &sd0_rclk>;
bus-width = <8>;
cap-mmc-highspeed;
+ mmc-ddr-1_8v;
mmc-hs200-1_8v;
mmc-hs400-1_8v;
max-frequency = <200000000>;
@@ -597,6 +597,7 @@ rmi4-f12@12 {
/* eMMC flash */
&mmc_0 {
status = "okay";
+ mmc-ddr-1_8v;
mmc-hs200-1_8v;
cap-mmc-highspeed;
non-removable;
@@ -703,6 +703,7 @@ &mixer {
/* eMMC flash */
&mmc_0 {
status = "okay";
+ mmc-ddr-1_8v;
mmc-hs200-1_8v;
mmc-hs400-1_8v;
cap-mmc-highspeed;
Previously, the mshc0 alias has been necessary so that MMC_CAP_1_8V_DDR | MMC_CAP_8_BIT_DATA are set for mshc_0/mmc_0. However, these capabilities should be described in the device tree so that we do not have to rely on the alias. The property mmc-ddr-1_8v replaces MMC_CAP_1_8V_DDR, while bus_width = <8>, which is already set for all the mshc0/mmc0 nodes, replaces MMC_CAP_8_BIT_DATA. Also cleanup and sort (but keep status property at top) some of the nodes while we are modifying them. Signed-off-by: Henrik Grimler <henrik@grimler.se> --- Changes since v2: * Set mmc-ddr-1_8v in device trees for mshc_0/mmc_0 arch/arm/boot/dts/exynos3250-artik5.dtsi | 15 ++++++------- arch/arm/boot/dts/exynos3250-monk.dts | 19 ++++++++--------- arch/arm/boot/dts/exynos3250-rinato.dts | 21 ++++++++----------- arch/arm/boot/dts/exynos3250.dtsi | 3 --- arch/arm/boot/dts/exynos4210-i9100.dts | 5 ++--- arch/arm/boot/dts/exynos4210-origen.dts | 3 ++- arch/arm/boot/dts/exynos4210-trats.dts | 3 ++- .../boot/dts/exynos4210-universal_c210.dts | 3 ++- arch/arm/boot/dts/exynos4412-itop-elite.dts | 4 ++++ .../boot/dts/exynos4412-itop-scp-core.dtsi | 17 +++++++++------ arch/arm/boot/dts/exynos4412-midas.dtsi | 17 ++++++++------- .../boot/dts/exynos4412-odroid-common.dtsi | 16 +++++++------- arch/arm/boot/dts/exynos4412-origen.dts | 12 +++++------ arch/arm/boot/dts/exynos4412-p4note.dtsi | 17 ++++++++------- arch/arm/boot/dts/exynos4412.dtsi | 1 - arch/arm/boot/dts/exynos5250-arndale.dts | 1 + arch/arm/boot/dts/exynos5250-smdk5250.dts | 1 + arch/arm/boot/dts/exynos5250-snow-common.dtsi | 1 + arch/arm/boot/dts/exynos5250-spring.dts | 1 + arch/arm/boot/dts/exynos5250.dtsi | 4 ---- arch/arm/boot/dts/exynos5260-xyref5260.dts | 11 +++++----- arch/arm/boot/dts/exynos5410-odroidxu.dts | 1 + arch/arm/boot/dts/exynos5410-smdk5410.dts | 1 + arch/arm/boot/dts/exynos5420-arndale-octa.dts | 1 + .../dts/exynos5420-galaxy-tab-common.dtsi | 1 + arch/arm/boot/dts/exynos5420-peach-pit.dts | 1 + arch/arm/boot/dts/exynos5420-smdk5420.dts | 1 + arch/arm/boot/dts/exynos5420.dtsi | 3 --- .../boot/dts/exynos5422-odroidxu3-common.dtsi | 1 + arch/arm/boot/dts/exynos5422-samsung-k3g.dts | 1 + arch/arm/boot/dts/exynos5800-peach-pi.dts | 1 + 31 files changed, 100 insertions(+), 87 deletions(-)