diff options
| author | Arnd Bergmann <arnd@arndb.de> | 2012-05-13 00:14:24 -0400 |
|---|---|---|
| committer | Arnd Bergmann <arnd@arndb.de> | 2012-05-15 07:29:42 -0400 |
| commit | 7f217794ffa72f208a250b79ab0b7ea3de19677f (patch) | |
| tree | e158792f6662bc7cad4e55a62f4efe7426215141 | |
| parent | e6511df4f25607e2e6d60062eb69c28c057329fa (diff) | |
mmc: dt: Consolidate DT bindings
This patch unifies the current DT MMC bindings documentation and code,
adds generic MMC DT bindings documentation, and updates .dts files for
consistency.
[cjb: typo fixes, addition of max-frequency property]
Signed-off-by: Chris Ball <cjb@laptop.org>
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
20 files changed, 66 insertions, 21 deletions
diff --git a/Documentation/devicetree/bindings/mmc/fsl-esdhc.txt b/Documentation/devicetree/bindings/mmc/fsl-esdhc.txt index 64bcb8be973c..0d93b4b0e0e3 100644 --- a/Documentation/devicetree/bindings/mmc/fsl-esdhc.txt +++ b/Documentation/devicetree/bindings/mmc/fsl-esdhc.txt | |||
| @@ -11,9 +11,11 @@ Required properties: | |||
| 11 | - interrupt-parent : interrupt source phandle. | 11 | - interrupt-parent : interrupt source phandle. |
| 12 | - clock-frequency : specifies eSDHC base clock frequency. | 12 | - clock-frequency : specifies eSDHC base clock frequency. |
| 13 | - sdhci,wp-inverted : (optional) specifies that eSDHC controller | 13 | - sdhci,wp-inverted : (optional) specifies that eSDHC controller |
| 14 | reports inverted write-protect state; | 14 | reports inverted write-protect state; New devices should use |
| 15 | the generic "wp-inverted" property. | ||
| 15 | - sdhci,1-bit-only : (optional) specifies that a controller can | 16 | - sdhci,1-bit-only : (optional) specifies that a controller can |
| 16 | only handle 1-bit data transfers. | 17 | only handle 1-bit data transfers. New devices should use the |
| 18 | generic "bus-width = <1>" property. | ||
| 17 | - sdhci,auto-cmd12: (optional) specifies that a controller can | 19 | - sdhci,auto-cmd12: (optional) specifies that a controller can |
| 18 | only handle auto CMD12. | 20 | only handle auto CMD12. |
| 19 | 21 | ||
diff --git a/Documentation/devicetree/bindings/mmc/fsl-imx-esdhc.txt b/Documentation/devicetree/bindings/mmc/fsl-imx-esdhc.txt index ab22fe6e73ab..c7e404b3ef05 100644 --- a/Documentation/devicetree/bindings/mmc/fsl-imx-esdhc.txt +++ b/Documentation/devicetree/bindings/mmc/fsl-imx-esdhc.txt | |||
| @@ -9,7 +9,7 @@ Required properties: | |||
| 9 | - interrupts : Should contain eSDHC interrupt | 9 | - interrupts : Should contain eSDHC interrupt |
| 10 | 10 | ||
| 11 | Optional properties: | 11 | Optional properties: |
| 12 | - fsl,card-wired : Indicate the card is wired to host permanently | 12 | - non-removable : Indicate the card is wired to host permanently |
| 13 | - fsl,cd-internal : Indicate to use controller internal card detection | 13 | - fsl,cd-internal : Indicate to use controller internal card detection |
| 14 | - fsl,wp-internal : Indicate to use controller internal write protection | 14 | - fsl,wp-internal : Indicate to use controller internal write protection |
| 15 | - cd-gpios : Specify GPIOs for card detection | 15 | - cd-gpios : Specify GPIOs for card detection |
diff --git a/Documentation/devicetree/bindings/mmc/mmc-spi-slot.txt b/Documentation/devicetree/bindings/mmc/mmc-spi-slot.txt index 89a0084df2f7..d64aea5a4203 100644 --- a/Documentation/devicetree/bindings/mmc/mmc-spi-slot.txt +++ b/Documentation/devicetree/bindings/mmc/mmc-spi-slot.txt | |||
| @@ -10,7 +10,8 @@ Required properties: | |||
| 10 | 10 | ||
| 11 | Optional properties: | 11 | Optional properties: |
| 12 | - gpios : may specify GPIOs in this order: Card-Detect GPIO, | 12 | - gpios : may specify GPIOs in this order: Card-Detect GPIO, |
| 13 | Write-Protect GPIO. | 13 | Write-Protect GPIO. Note that this does not follow the |
| 14 | binding from mmc.txt, for historic reasons. | ||
| 14 | - interrupts : the interrupt of a card detect interrupt. | 15 | - interrupts : the interrupt of a card detect interrupt. |
| 15 | - interrupt-parent : the phandle for the interrupt controller that | 16 | - interrupt-parent : the phandle for the interrupt controller that |
| 16 | services interrupts for this device. | 17 | services interrupts for this device. |
diff --git a/Documentation/devicetree/bindings/mmc/mmc.txt b/Documentation/devicetree/bindings/mmc/mmc.txt new file mode 100644 index 000000000000..6e70dcde0a71 --- /dev/null +++ b/Documentation/devicetree/bindings/mmc/mmc.txt | |||
| @@ -0,0 +1,27 @@ | |||
| 1 | These properties are common to multiple MMC host controllers. Any host | ||
| 2 | that requires the respective functionality should implement them using | ||
| 3 | these definitions. | ||
| 4 | |||
| 5 | Required properties: | ||
| 6 | - bus-width: Number of data lines, can be <1>, <4>, or <8> | ||
| 7 | |||
| 8 | Optional properties: | ||
| 9 | - cd-gpios : Specify GPIOs for card detection, see gpio binding | ||
| 10 | - wp-gpios : Specify GPIOs for write protection, see gpio binding | ||
| 11 | - cd-inverted: when present, polarity on the wp gpio line is inverted | ||
| 12 | - wp-inverted: when present, polarity on the wp gpio line is inverted | ||
| 13 | - non-removable: non-removable slot (like eMMC) | ||
| 14 | - max-frequency: maximum operating clock frequency | ||
| 15 | |||
| 16 | Example: | ||
| 17 | |||
| 18 | sdhci@ab000000 { | ||
| 19 | compatible = "sdhci"; | ||
| 20 | reg = <0xab000000 0x200>; | ||
| 21 | interrupts = <23>; | ||
| 22 | bus-width = <4>; | ||
| 23 | cd-gpios = <&gpio 69 0>; | ||
| 24 | cd-inverted; | ||
| 25 | wp-gpios = <&gpio 70 0>; | ||
| 26 | max-frequency = <50000000>; | ||
| 27 | } | ||
diff --git a/Documentation/devicetree/bindings/mmc/nvidia-sdhci.txt b/Documentation/devicetree/bindings/mmc/nvidia-sdhci.txt index 7e51154679a6..f77c3031607f 100644 --- a/Documentation/devicetree/bindings/mmc/nvidia-sdhci.txt +++ b/Documentation/devicetree/bindings/mmc/nvidia-sdhci.txt | |||
| @@ -7,12 +7,12 @@ Required properties: | |||
| 7 | - compatible : Should be "nvidia,<chip>-sdhci" | 7 | - compatible : Should be "nvidia,<chip>-sdhci" |
| 8 | - reg : Should contain SD/MMC registers location and length | 8 | - reg : Should contain SD/MMC registers location and length |
| 9 | - interrupts : Should contain SD/MMC interrupt | 9 | - interrupts : Should contain SD/MMC interrupt |
| 10 | - bus-width : Number of data lines, can be <1>, <4>, or <8> | ||
| 10 | 11 | ||
| 11 | Optional properties: | 12 | Optional properties: |
| 12 | - cd-gpios : Specify GPIOs for card detection | 13 | - cd-gpios : Specify GPIOs for card detection |
| 13 | - wp-gpios : Specify GPIOs for write protection | 14 | - wp-gpios : Specify GPIOs for write protection |
| 14 | - power-gpios : Specify GPIOs for power control | 15 | - power-gpios : Specify GPIOs for power control |
| 15 | - support-8bit : Boolean, indicates if 8-bit mode should be used. | ||
| 16 | 16 | ||
| 17 | Example: | 17 | Example: |
| 18 | 18 | ||
| @@ -23,5 +23,5 @@ sdhci@c8000200 { | |||
| 23 | cd-gpios = <&gpio 69 0>; /* gpio PI5 */ | 23 | cd-gpios = <&gpio 69 0>; /* gpio PI5 */ |
| 24 | wp-gpios = <&gpio 57 0>; /* gpio PH1 */ | 24 | wp-gpios = <&gpio 57 0>; /* gpio PH1 */ |
| 25 | power-gpios = <&gpio 155 0>; /* gpio PT3 */ | 25 | power-gpios = <&gpio 155 0>; /* gpio PT3 */ |
| 26 | support-8bit; | 26 | bus-width = <8>; |
| 27 | }; | 27 | }; |
diff --git a/Documentation/devicetree/bindings/mmc/ti-omap-hsmmc.txt b/Documentation/devicetree/bindings/mmc/ti-omap-hsmmc.txt index dbd4368ab8cc..8a53958c9a9f 100644 --- a/Documentation/devicetree/bindings/mmc/ti-omap-hsmmc.txt +++ b/Documentation/devicetree/bindings/mmc/ti-omap-hsmmc.txt | |||
| @@ -15,7 +15,7 @@ Optional properties: | |||
| 15 | ti,dual-volt: boolean, supports dual voltage cards | 15 | ti,dual-volt: boolean, supports dual voltage cards |
| 16 | <supply-name>-supply: phandle to the regulator device tree node | 16 | <supply-name>-supply: phandle to the regulator device tree node |
| 17 | "supply-name" examples are "vmmc", "vmmc_aux" etc | 17 | "supply-name" examples are "vmmc", "vmmc_aux" etc |
| 18 | ti,bus-width: Number of data lines, default assumed is 1 if the property is missing. | 18 | bus-width: Number of data lines, default assumed is 1 if the property is missing. |
| 19 | cd-gpios: GPIOs for card detection | 19 | cd-gpios: GPIOs for card detection |
| 20 | wp-gpios: GPIOs for write protection | 20 | wp-gpios: GPIOs for write protection |
| 21 | ti,non-removable: non-removable slot (like eMMC) | 21 | ti,non-removable: non-removable slot (like eMMC) |
| @@ -27,7 +27,7 @@ Example: | |||
| 27 | reg = <0x4809c000 0x400>; | 27 | reg = <0x4809c000 0x400>; |
| 28 | ti,hwmods = "mmc1"; | 28 | ti,hwmods = "mmc1"; |
| 29 | ti,dual-volt; | 29 | ti,dual-volt; |
| 30 | ti,bus-width = <4>; | 30 | bus-width = <4>; |
| 31 | vmmc-supply = <&vmmc>; /* phandle to regulator node */ | 31 | vmmc-supply = <&vmmc>; /* phandle to regulator node */ |
| 32 | ti,non-removable; | 32 | ti,non-removable; |
| 33 | }; | 33 | }; |
diff --git a/arch/arm/boot/dts/imx53-smd.dts b/arch/arm/boot/dts/imx53-smd.dts index c7ee86c2dfb5..139138a556b0 100644 --- a/arch/arm/boot/dts/imx53-smd.dts +++ b/arch/arm/boot/dts/imx53-smd.dts | |||
| @@ -35,7 +35,7 @@ | |||
| 35 | }; | 35 | }; |
| 36 | 36 | ||
| 37 | esdhc@50008000 { /* ESDHC2 */ | 37 | esdhc@50008000 { /* ESDHC2 */ |
| 38 | fsl,card-wired; | 38 | non-removable; |
| 39 | status = "okay"; | 39 | status = "okay"; |
| 40 | }; | 40 | }; |
| 41 | 41 | ||
| @@ -76,7 +76,7 @@ | |||
| 76 | }; | 76 | }; |
| 77 | 77 | ||
| 78 | esdhc@50020000 { /* ESDHC3 */ | 78 | esdhc@50020000 { /* ESDHC3 */ |
| 79 | fsl,card-wired; | 79 | non-removable; |
| 80 | status = "okay"; | 80 | status = "okay"; |
| 81 | }; | 81 | }; |
| 82 | }; | 82 | }; |
diff --git a/arch/arm/boot/dts/imx6q-arm2.dts b/arch/arm/boot/dts/imx6q-arm2.dts index ce1c8238c897..d2eaf521c9fd 100644 --- a/arch/arm/boot/dts/imx6q-arm2.dts +++ b/arch/arm/boot/dts/imx6q-arm2.dts | |||
| @@ -41,7 +41,7 @@ | |||
| 41 | }; | 41 | }; |
| 42 | 42 | ||
| 43 | usdhc@0219c000 { /* uSDHC4 */ | 43 | usdhc@0219c000 { /* uSDHC4 */ |
| 44 | fsl,card-wired; | 44 | non-removable; |
| 45 | vmmc-supply = <®_3p3v>; | 45 | vmmc-supply = <®_3p3v>; |
| 46 | status = "okay"; | 46 | status = "okay"; |
| 47 | }; | 47 | }; |
diff --git a/arch/arm/boot/dts/omap3-beagle.dts b/arch/arm/boot/dts/omap3-beagle.dts index 8c756be4d7ad..5b4506c0a8c4 100644 --- a/arch/arm/boot/dts/omap3-beagle.dts +++ b/arch/arm/boot/dts/omap3-beagle.dts | |||
| @@ -57,7 +57,7 @@ | |||
| 57 | &mmc1 { | 57 | &mmc1 { |
| 58 | vmmc-supply = <&vmmc1>; | 58 | vmmc-supply = <&vmmc1>; |
| 59 | vmmc_aux-supply = <&vsim>; | 59 | vmmc_aux-supply = <&vsim>; |
| 60 | ti,bus-width = <8>; | 60 | bus-width = <8>; |
| 61 | }; | 61 | }; |
| 62 | 62 | ||
| 63 | &mmc2 { | 63 | &mmc2 { |
diff --git a/arch/arm/boot/dts/omap4-panda.dts b/arch/arm/boot/dts/omap4-panda.dts index ea6f5bb8a120..31fb4218d3ae 100644 --- a/arch/arm/boot/dts/omap4-panda.dts +++ b/arch/arm/boot/dts/omap4-panda.dts | |||
| @@ -55,7 +55,7 @@ | |||
| 55 | 55 | ||
| 56 | &mmc1 { | 56 | &mmc1 { |
| 57 | vmmc-supply = <&vmmc>; | 57 | vmmc-supply = <&vmmc>; |
| 58 | ti,bus-width = <8>; | 58 | bus-width = <8>; |
| 59 | }; | 59 | }; |
| 60 | 60 | ||
| 61 | &mmc2 { | 61 | &mmc2 { |
| @@ -72,5 +72,5 @@ | |||
| 72 | 72 | ||
| 73 | &mmc5 { | 73 | &mmc5 { |
| 74 | ti,non-removable; | 74 | ti,non-removable; |
| 75 | ti,bus-width = <4>; | 75 | bus-width = <4>; |
| 76 | }; | 76 | }; |
diff --git a/arch/arm/boot/dts/omap4-sdp.dts b/arch/arm/boot/dts/omap4-sdp.dts index 67b2e98074c6..a1dd873425fc 100644 --- a/arch/arm/boot/dts/omap4-sdp.dts +++ b/arch/arm/boot/dts/omap4-sdp.dts | |||
| @@ -94,12 +94,12 @@ | |||
| 94 | 94 | ||
| 95 | &mmc1 { | 95 | &mmc1 { |
| 96 | vmmc-supply = <&vmmc>; | 96 | vmmc-supply = <&vmmc>; |
| 97 | ti,bus-width = <8>; | 97 | bus-width = <8>; |
| 98 | }; | 98 | }; |
| 99 | 99 | ||
| 100 | &mmc2 { | 100 | &mmc2 { |
| 101 | vmmc-supply = <&vaux1>; | 101 | vmmc-supply = <&vaux1>; |
| 102 | ti,bus-width = <8>; | 102 | bus-width = <8>; |
| 103 | ti,non-removable; | 103 | ti,non-removable; |
| 104 | }; | 104 | }; |
| 105 | 105 | ||
| @@ -112,6 +112,6 @@ | |||
| 112 | }; | 112 | }; |
| 113 | 113 | ||
| 114 | &mmc5 { | 114 | &mmc5 { |
| 115 | ti,bus-width = <4>; | 115 | bus-width = <4>; |
| 116 | ti,non-removable; | 116 | ti,non-removable; |
| 117 | }; | 117 | }; |
diff --git a/arch/arm/boot/dts/tegra-cardhu.dts b/arch/arm/boot/dts/tegra-cardhu.dts index ac3fb7558459..67c6511f6372 100644 --- a/arch/arm/boot/dts/tegra-cardhu.dts +++ b/arch/arm/boot/dts/tegra-cardhu.dts | |||
| @@ -54,6 +54,7 @@ | |||
| 54 | cd-gpios = <&gpio 69 0>; /* gpio PI5 */ | 54 | cd-gpios = <&gpio 69 0>; /* gpio PI5 */ |
| 55 | wp-gpios = <&gpio 155 0>; /* gpio PT3 */ | 55 | wp-gpios = <&gpio 155 0>; /* gpio PT3 */ |
| 56 | power-gpios = <&gpio 31 0>; /* gpio PD7 */ | 56 | power-gpios = <&gpio 31 0>; /* gpio PD7 */ |
| 57 | bus-width = <4>; | ||
| 57 | }; | 58 | }; |
| 58 | 59 | ||
| 59 | sdhci@78000200 { | 60 | sdhci@78000200 { |
| @@ -66,5 +67,6 @@ | |||
| 66 | 67 | ||
| 67 | sdhci@78000400 { | 68 | sdhci@78000400 { |
| 68 | support-8bit; | 69 | support-8bit; |
| 70 | bus-width = <8>; | ||
| 69 | }; | 71 | }; |
| 70 | }; | 72 | }; |
diff --git a/arch/arm/boot/dts/tegra-harmony.dts b/arch/arm/boot/dts/tegra-harmony.dts index 6e8447dc0202..e9cae68861de 100644 --- a/arch/arm/boot/dts/tegra-harmony.dts +++ b/arch/arm/boot/dts/tegra-harmony.dts | |||
| @@ -100,6 +100,7 @@ | |||
| 100 | cd-gpios = <&gpio 69 0>; /* gpio PI5 */ | 100 | cd-gpios = <&gpio 69 0>; /* gpio PI5 */ |
| 101 | wp-gpios = <&gpio 57 0>; /* gpio PH1 */ | 101 | wp-gpios = <&gpio 57 0>; /* gpio PH1 */ |
| 102 | power-gpios = <&gpio 155 0>; /* gpio PT3 */ | 102 | power-gpios = <&gpio 155 0>; /* gpio PT3 */ |
| 103 | bus-width = <4>; | ||
| 103 | }; | 104 | }; |
| 104 | 105 | ||
| 105 | sdhci@c8000400 { | 106 | sdhci@c8000400 { |
| @@ -111,5 +112,6 @@ | |||
| 111 | wp-gpios = <&gpio 59 0>; /* gpio PH3 */ | 112 | wp-gpios = <&gpio 59 0>; /* gpio PH3 */ |
| 112 | power-gpios = <&gpio 70 0>; /* gpio PI6 */ | 113 | power-gpios = <&gpio 70 0>; /* gpio PI6 */ |
| 113 | support-8bit; | 114 | support-8bit; |
| 115 | bus-width = <8>; | ||
| 114 | }; | 116 | }; |
| 115 | }; | 117 | }; |
diff --git a/arch/arm/boot/dts/tegra-paz00.dts b/arch/arm/boot/dts/tegra-paz00.dts index 6c02abb469d4..03d3d7994da7 100644 --- a/arch/arm/boot/dts/tegra-paz00.dts +++ b/arch/arm/boot/dts/tegra-paz00.dts | |||
| @@ -97,6 +97,7 @@ | |||
| 97 | cd-gpios = <&gpio 173 0>; /* gpio PV5 */ | 97 | cd-gpios = <&gpio 173 0>; /* gpio PV5 */ |
| 98 | wp-gpios = <&gpio 57 0>; /* gpio PH1 */ | 98 | wp-gpios = <&gpio 57 0>; /* gpio PH1 */ |
| 99 | power-gpios = <&gpio 169 0>; /* gpio PV1 */ | 99 | power-gpios = <&gpio 169 0>; /* gpio PV1 */ |
| 100 | bus-width = <4>; | ||
| 100 | }; | 101 | }; |
| 101 | 102 | ||
| 102 | sdhci@c8000200 { | 103 | sdhci@c8000200 { |
| @@ -109,6 +110,7 @@ | |||
| 109 | 110 | ||
| 110 | sdhci@c8000600 { | 111 | sdhci@c8000600 { |
| 111 | support-8bit; | 112 | support-8bit; |
| 113 | bus-width = <8>; | ||
| 112 | }; | 114 | }; |
| 113 | 115 | ||
| 114 | gpio-keys { | 116 | gpio-keys { |
diff --git a/arch/arm/boot/dts/tegra-seaboard.dts b/arch/arm/boot/dts/tegra-seaboard.dts index dbf1c5a171c2..8decf7229973 100644 --- a/arch/arm/boot/dts/tegra-seaboard.dts +++ b/arch/arm/boot/dts/tegra-seaboard.dts | |||
| @@ -104,10 +104,12 @@ | |||
| 104 | cd-gpios = <&gpio 69 0>; /* gpio PI5 */ | 104 | cd-gpios = <&gpio 69 0>; /* gpio PI5 */ |
| 105 | wp-gpios = <&gpio 57 0>; /* gpio PH1 */ | 105 | wp-gpios = <&gpio 57 0>; /* gpio PH1 */ |
| 106 | power-gpios = <&gpio 70 0>; /* gpio PI6 */ | 106 | power-gpios = <&gpio 70 0>; /* gpio PI6 */ |
| 107 | bus-width = <4>; | ||
| 107 | }; | 108 | }; |
| 108 | 109 | ||
| 109 | sdhci@c8000600 { | 110 | sdhci@c8000600 { |
| 110 | support-8bit; | 111 | support-8bit; |
| 112 | bus-width = <8>; | ||
| 111 | }; | 113 | }; |
| 112 | 114 | ||
| 113 | usb@c5000000 { | 115 | usb@c5000000 { |
diff --git a/arch/arm/boot/dts/tegra-ventana.dts b/arch/arm/boot/dts/tegra-ventana.dts index 2dcff8728e90..29e54c7a3657 100644 --- a/arch/arm/boot/dts/tegra-ventana.dts +++ b/arch/arm/boot/dts/tegra-ventana.dts | |||
| @@ -100,9 +100,11 @@ | |||
| 100 | cd-gpios = <&gpio 69 0>; /* gpio PI5 */ | 100 | cd-gpios = <&gpio 69 0>; /* gpio PI5 */ |
| 101 | wp-gpios = <&gpio 57 0>; /* gpio PH1 */ | 101 | wp-gpios = <&gpio 57 0>; /* gpio PH1 */ |
| 102 | power-gpios = <&gpio 70 0>; /* gpio PI6 */ | 102 | power-gpios = <&gpio 70 0>; /* gpio PI6 */ |
| 103 | bus-width = <4>; | ||
| 103 | }; | 104 | }; |
| 104 | 105 | ||
| 105 | sdhci@c8000600 { | 106 | sdhci@c8000600 { |
| 106 | support-8bit; | 107 | support-8bit; |
| 108 | bus-width = <8>; | ||
| 107 | }; | 109 | }; |
| 108 | }; | 110 | }; |
diff --git a/arch/powerpc/boot/dts/mpc8569mds.dts b/arch/powerpc/boot/dts/mpc8569mds.dts index 7e283c891b7f..fe0d60935e9b 100644 --- a/arch/powerpc/boot/dts/mpc8569mds.dts +++ b/arch/powerpc/boot/dts/mpc8569mds.dts | |||
| @@ -119,6 +119,7 @@ | |||
| 119 | sdhc@2e000 { | 119 | sdhc@2e000 { |
| 120 | status = "disabled"; | 120 | status = "disabled"; |
| 121 | sdhci,1-bit-only; | 121 | sdhci,1-bit-only; |
| 122 | bus-width = <1>; | ||
| 122 | }; | 123 | }; |
| 123 | 124 | ||
| 124 | par_io@e0100 { | 125 | par_io@e0100 { |
diff --git a/drivers/mmc/host/omap_hsmmc.c b/drivers/mmc/host/omap_hsmmc.c index 56d4499d4388..33e81c24e140 100644 --- a/drivers/mmc/host/omap_hsmmc.c +++ b/drivers/mmc/host/omap_hsmmc.c | |||
| @@ -1766,7 +1766,7 @@ static struct omap_mmc_platform_data *of_get_hsmmc_pdata(struct device *dev) | |||
| 1766 | pdata->slots[0].nonremovable = true; | 1766 | pdata->slots[0].nonremovable = true; |
| 1767 | pdata->slots[0].no_regulator_off_init = true; | 1767 | pdata->slots[0].no_regulator_off_init = true; |
| 1768 | } | 1768 | } |
| 1769 | of_property_read_u32(np, "ti,bus-width", &bus_width); | 1769 | of_property_read_u32(np, "bus-width", &bus_width); |
| 1770 | if (bus_width == 4) | 1770 | if (bus_width == 4) |
| 1771 | pdata->slots[0].caps |= MMC_CAP_4_BIT_DATA; | 1771 | pdata->slots[0].caps |= MMC_CAP_4_BIT_DATA; |
| 1772 | else if (bus_width == 8) | 1772 | else if (bus_width == 8) |
diff --git a/drivers/mmc/host/sdhci-esdhc-imx.c b/drivers/mmc/host/sdhci-esdhc-imx.c index 8abdaf6697a8..0d2b082f2246 100644 --- a/drivers/mmc/host/sdhci-esdhc-imx.c +++ b/drivers/mmc/host/sdhci-esdhc-imx.c | |||
| @@ -402,7 +402,7 @@ sdhci_esdhc_imx_probe_dt(struct platform_device *pdev, | |||
| 402 | if (!np) | 402 | if (!np) |
| 403 | return -ENODEV; | 403 | return -ENODEV; |
| 404 | 404 | ||
| 405 | if (of_get_property(np, "fsl,card-wired", NULL)) | 405 | if (of_get_property(np, "non-removable", NULL)) |
| 406 | boarddata->cd_type = ESDHC_CD_PERMANENT; | 406 | boarddata->cd_type = ESDHC_CD_PERMANENT; |
| 407 | 407 | ||
| 408 | if (of_get_property(np, "fsl,cd-controller", NULL)) | 408 | if (of_get_property(np, "fsl,cd-controller", NULL)) |
diff --git a/drivers/mmc/host/sdhci-pltfm.c b/drivers/mmc/host/sdhci-pltfm.c index c5c2a48bdd94..d9a4ef4f1ed0 100644 --- a/drivers/mmc/host/sdhci-pltfm.c +++ b/drivers/mmc/host/sdhci-pltfm.c | |||
| @@ -42,7 +42,8 @@ static struct sdhci_ops sdhci_pltfm_ops = { | |||
| 42 | #ifdef CONFIG_OF | 42 | #ifdef CONFIG_OF |
| 43 | static bool sdhci_of_wp_inverted(struct device_node *np) | 43 | static bool sdhci_of_wp_inverted(struct device_node *np) |
| 44 | { | 44 | { |
| 45 | if (of_get_property(np, "sdhci,wp-inverted", NULL)) | 45 | if (of_get_property(np, "sdhci,wp-inverted", NULL) || |
| 46 | of_get_property(np, "wp-inverted", NULL)) | ||
| 46 | return true; | 47 | return true; |
| 47 | 48 | ||
| 48 | /* Old device trees don't have the wp-inverted property. */ | 49 | /* Old device trees don't have the wp-inverted property. */ |
| @@ -59,13 +60,16 @@ void sdhci_get_of_property(struct platform_device *pdev) | |||
| 59 | struct sdhci_host *host = platform_get_drvdata(pdev); | 60 | struct sdhci_host *host = platform_get_drvdata(pdev); |
| 60 | struct sdhci_pltfm_host *pltfm_host = sdhci_priv(host); | 61 | struct sdhci_pltfm_host *pltfm_host = sdhci_priv(host); |
| 61 | const __be32 *clk; | 62 | const __be32 *clk; |
| 63 | u32 bus_width; | ||
| 62 | int size; | 64 | int size; |
| 63 | 65 | ||
| 64 | if (of_device_is_available(np)) { | 66 | if (of_device_is_available(np)) { |
| 65 | if (of_get_property(np, "sdhci,auto-cmd12", NULL)) | 67 | if (of_get_property(np, "sdhci,auto-cmd12", NULL)) |
| 66 | host->quirks |= SDHCI_QUIRK_MULTIBLOCK_READ_ACMD12; | 68 | host->quirks |= SDHCI_QUIRK_MULTIBLOCK_READ_ACMD12; |
| 67 | 69 | ||
| 68 | if (of_get_property(np, "sdhci,1-bit-only", NULL)) | 70 | if (of_get_property(np, "sdhci,1-bit-only", NULL) || |
| 71 | (of_property_read_u32(np, "bus-width", &bus_width) == 0 && | ||
| 72 | bus_width == 1)) | ||
| 69 | host->quirks |= SDHCI_QUIRK_FORCE_1_BIT_DATA; | 73 | host->quirks |= SDHCI_QUIRK_FORCE_1_BIT_DATA; |
| 70 | 74 | ||
| 71 | if (sdhci_of_wp_inverted(np)) | 75 | if (sdhci_of_wp_inverted(np)) |
