ARM: remove the sub-node and deprecate supports-highspeed property for dwmmc.
Subsystems (4)
Jaehoon Chung
maintainerv9 cover ARM: remove the sub-node and deprecate supports-highspeed property for dwmmc.
Since used the mmc_of_parse(), didn't parse the sub-node.
So we can remove the sub-node, because almost SoC used the only one card per a host. And supports-highspeed can be replaced with "cap-mmc/sd-highspeed" property.
Changelog V9:
- Fix typos.
- Relocated the warning message.
- Change patch's sequence.
Changelog V8:
- Add the warning message to notice that slot-node was removed. (As Doug's suggestion)
Changelog V7:
- Fixed typo and modified the commit message.
Changelog V6:
- Fixed Wrong bit control for host's quirks and rename.
- Add "Acked-by" for each SoC maintainers.
Changelog V5:
- Rebased on v3.16-rc4.
- Add Acked-by.
Changelog V4:
- Fix the checkpatch error.
Changelog V3:
- Fix the wrong bus-width value.
- Use the slot->host->quirks instead of brq->quirks.
- Add tested-by and reviewd-by.
Changelog V2:
- Add the "mmc: dw_mmc: replace "disable-wp" from slot's quirks to host's quirk"
Jaehoon Chung (5):
mmc: dw_mmc: Slot quirk "disable-wp" is deprecated.
mmc: dw_mmc: modify the dt-binding for removing slot-node and
supports-highspeed
ARM: dts: exynos: unuse the slot-node and deprecate the
supports-highspeed for dw-mmc
ARM: dts: socfpga: unuse the slot-node and deprecate the
supports-highspeed for dw-mmc
ARM: dts: rockchip: unuse the slot-node and deprecate the
supports-highspeed for dw-mmc
.../devicetree/bindings/mmc/exynos-dw-mshc.txt | 17 ++++--------- .../devicetree/bindings/mmc/k3-dw-mshc.txt | 12 ++++----- .../devicetree/bindings/mmc/synopsys-dw-mshc.txt | 12 ++++----- arch/arm/boot/dts/exynos4412-odroidx.dts | 8 ++---- arch/arm/boot/dts/exynos4412-origen.dts | 8 ++---- arch/arm/boot/dts/exynos4412-trats2.dts | 8 ++---- arch/arm/boot/dts/exynos5250-arndale.dts | 18 ++++---------- arch/arm/boot/dts/exynos5250-cros-common.dtsi | 26 ++++++-------------- arch/arm/boot/dts/exynos5250-smdk5250.dts | 18 ++++---------- arch/arm/boot/dts/exynos5250-snow.dts | 6 ++--- arch/arm/boot/dts/exynos5260-xyref5260.dts | 18 ++++---------- arch/arm/boot/dts/exynos5410-smdk5410.dts | 18 ++++---------- arch/arm/boot/dts/exynos5420-arndale-octa.dts | 16 +++--------- arch/arm/boot/dts/exynos5420-peach-pit.dts | 16 +++--------- arch/arm/boot/dts/exynos5420-smdk5420.dts | 16 +++--------- arch/arm/boot/dts/exynos5800-peach-pi.dts | 16 +++--------- arch/arm/boot/dts/rk3066a-bqcurie2.dts | 16 +++--------- arch/arm/boot/dts/socfpga_arria5.dtsi | 9 +++---- arch/arm/boot/dts/socfpga_cyclone5.dtsi | 9 +++---- arch/arm/boot/dts/socfpga_vt.dts | 9 +++---- drivers/mmc/host/dw_mmc.c | 11 +++++++-- include/linux/mmc/dw_mmc.h | 2 ++ 22 files changed, 90 insertions(+), 199 deletions(-)
Signature · 1 line
1.7.9.5
Jaehoon Chung
maintainerPATCH v9 1/5 mmc: dw_mmc: Slot quirk "disable-wp" is deprecated.
Slot quirks "disable-wp" is deprecated. Instead, use the host quirk "disable-wp". (Because the slot-node is removed in dt-file.)
--- drivers/mmc/host/dw_mmc.c | 11 +++++++++-- include/linux/mmc/dw_mmc.h | 2 ++ 2 files changed, 11 insertions(+), 2 deletions(-)
drivers/mmc/host/dw_mmc.c +9 -2
@@ -997,7 +997,8 @@ static int dw_mci_get_ro(struct mmc_host *mmc)int gpio_ro =mmc_gpio_get_ro (mmc);/* Use platform get_ro function, else try on board write protect */ -if (slot->quirks &DW_MCI_SLOT_QUIRK_NO_WRITE_PROTECT ) +if ((slot->quirks &DW_MCI_SLOT_QUIRK_NO_WRITE_PROTECT ) || + (slot->host->quirks &DW_MCI_QUIRK_NO_WRITE_PROTECT )) read_only =0 ;else if (!IS_ERR_VALUE (gpio_ro)) read_only = gpio_ro;
@@ -2021,8 +2022,11 @@ static int dw_mci_of_get_slot_quirks(struct device *dev, u8 slot)/* get quirks */ for (idx =0 ; idx <ARRAY_SIZE (of_slot_quirks); idx++) -if (of_get_property (np, of_slot_quirks[idx].quirk,NULL )) +if (of_get_property (np, of_slot_quirks[idx].quirk,NULL )) { +dev_warn (dev,"Slot quirk %s is deprecated\n" , + of_slot_quirks[idx].quirk); quirks |= of_slot_quirks[idx].id; + }return quirks; }
@@ -2238,6 +2242,9 @@ static struct dw_mci_of_quirks { { .quirk = "broken-cd", .id = DW_MCI_QUIRK_BROKEN_CARD_DETECTION, + }, { + .quirk = "disable-wp", + .id = DW_MCI_QUIRK_NO_WRITE_PROTECT, }, };
include/linux/mmc/dw_mmc.h +2 -0
@@ -213,6 +213,8 @@ struct dw_mci_dma_ops {#define DW_MCI_QUIRK_HIGHSPEED BIT(2)/* Unreliable card detection */ #define DW_MCI_QUIRK_BROKEN_CARD_DETECTION BIT(3) +/* No write protect */ +#define DW_MCI_QUIRK_NO_WRITE_PROTECT BIT(4)/* Slot level quirks */ /* This slot has no write protect */
Signature · 1 line
1.7.9.5
PATCH v9 1/5 mmc: dw_mmc: Slot quirk "disable-wp" is deprecated.
Jaehoon
Quoted 11 lines · Jaehoon Chung
Slot quirks "disable-wp" is deprecated. Instead, use the host quirk "disable-wp". (Because the slot-node is removed in dt-file.)
Signed-off-by Jaehoon Chung <[email protected]>Tested-by Sachin Kamat <[email protected]>Acked-by Seungwon Jeon <[email protected]>--- drivers/mmc/host/dw_mmc.c | 11 +++++++++-- include/linux/mmc/dw_mmc.h | 2 ++ 2 files changed, 11 insertions(+), 2 deletions(-)
Thanks for taking my suggestion and making it backward compatible. This looks great to me. It tested this in both the backward compatible way (with the warning) and the non-backward compatible way. I think we should land and patch #2 ASAP and then we can land the rest of the series as SoC maintainers see fit.
PATCH v9 1/5 mmc: dw_mmc: Slot quirk "disable-wp" is deprecated.
Quoted 15 lines · Doug Anderson
Jaehoon
Quoted 11 lines · Jaehoon Chung
Slot quirks "disable-wp" is deprecated.
Instead, use the host quirk "disable-wp".
(Because the slot-node is removed in dt-file.)Signed-off-by Jaehoon Chung<[email protected]>Tested-by Sachin Kamat<[email protected]>Acked-by Seungwon Jeon<[email protected]>--- drivers/mmc/host/dw_mmc.c | 11 +++++++++-- include/linux/mmc/dw_mmc.h | 2 ++ 2 files changed, 11 insertions(+), 2 deletions(-)
Quoted 6 lines
Thanks for taking my suggestion and making it backward compatible. This looks great to me. It tested this in both the backward compatible way (with the warning) and the non-backward compatible way. I think we should land and patch #2 ASAP and then we can land the rest of the series as SoC maintainers see fit.
Yes, right if we don't want to see useless merge conflicts...
- Kukjin
Quoted 2 lines
Reviewed-by Doug Anderson<[email protected]>Tested-by Doug Anderson<[email protected]>
PATCH v9 1/5 mmc: dw_mmc: Slot quirk "disable-wp" is deprecated.
In reply to Doug AndersonQuoted 15 lines · Doug Anderson
Jaehoon
Quoted 11 lines · Jaehoon Chung
Slot quirks "disable-wp" is deprecated.
Instead, use the host quirk "disable-wp".
(Because the slot-node is removed in dt-file.)Signed-off-by Jaehoon Chung<[email protected]>Tested-by Sachin Kamat<[email protected]>Acked-by Seungwon Jeon<[email protected]>--- drivers/mmc/host/dw_mmc.c | 11 +++++++++-- include/linux/mmc/dw_mmc.h | 2 ++ 2 files changed, 11 insertions(+), 2 deletions(-)
Quoted 6 lines
Thanks for taking my suggestion and making it backward compatible. This looks great to me. It tested this in both the backward compatible way (with the warning) and the non-backward compatible way. I think we should land and patch #2 ASAP and then we can land the rest of the series as SoC maintainers see fit.
Yes, right if we don't want to see useless merge conflicts...
When I sent ack on exynos stuff, there was no conflict with my tree but happens it now.
- Kukjin
Quoted 2 lines
Reviewed-by Doug Anderson<[email protected]>Tested-by Doug Anderson<[email protected]>
Jaehoon Chung
maintainerPATCH v9 1/5 mmc: dw_mmc: Slot quirk "disable-wp" is deprecated.
Hi, All.
It seems too late that this patch-set is merged into linux-3.16. Also there are some conflicts in device-tree. (I will remove the conflicts) So if everybody is ok, I will rebase on linux-next after released linux-3.16. At that time, i will send this patch-set to stable kernel, too. how about?
And I want to know who can apply this patch-set(#3~#5).
Best Regards,
Jaehoon Chung
Quoted 32 lines · Kukjin Kim
Quoted 15 lines · Doug Anderson
Jaehoon
Quoted 11 lines · Jaehoon Chung
Slot quirks "disable-wp" is deprecated.
Instead, use the host quirk "disable-wp".
(Because the slot-node is removed in dt-file.)Signed-off-by Jaehoon Chung<[email protected]>Tested-by Sachin Kamat<[email protected]>Acked-by Seungwon Jeon<[email protected]>--- drivers/mmc/host/dw_mmc.c | 11 +++++++++-- include/linux/mmc/dw_mmc.h | 2 ++ 2 files changed, 11 insertions(+), 2 deletions(-)Quoted 6 lines
Thanks for taking my suggestion and making it backward compatible. This looks great to me. It tested this in both the backward compatible way (with the warning) and the non-backward compatible way. I think we should land and patch #2 ASAP and then we can land the rest of the series as SoC maintainers see fit.
Yes, right if we don't want to see useless merge conflicts...
When I sent ack on exynos stuff, there was no conflict with my tree but happens it now.
- Kukjin
Quoted 2 lines
Reviewed-by Doug Anderson<[email protected]>Tested-by Doug Anderson<[email protected]>
PATCH v9 1/5 mmc: dw_mmc: Slot quirk "disable-wp" is deprecated.
Am Freitag, 1. August 2014, 13:26:43 schrieb Jaehoon Chung:
Quoted 9 lines
Hi, All.
It seems too late that this patch-set is merged into linux-3.16. Also there are some conflicts in device-tree. (I will remove the conflicts) So if everybody is ok, I will rebase on linux-next after released linux-3.16. At that time, i will send this patch-set to stable kernel, too. how about?
And I want to know who can apply this patch-set(#3~#5).
I guess each SoC maintainer could take the changes to their work-area, once the core changes have landed in the mmc tree. So I would take the Rockchip patch, Kukjin the Exynos one and Dinh the socfpga patch.
Heiko
Quoted 9 lines
Best Regards,
Jaehoon ChungQuoted 4 lines · Kukjin Kim
Quoted 3 lines · Doug Anderson
Jaehoon
On Wed, Jul 30, 2014 at 10:35 PM, Jaehoon Chung<[email protected]>
Quoted 28 lines · wrote:
Quoted 28 lines
Quoted 13 lines
Quoted 4 lines
Slot quirks "disable-wp" is deprecated.
Instead, use the host quirk "disable-wp".
(Because the slot-node is removed in dt-file.)Quoted 8 lines
Signed-off-by Jaehoon Chung<[email protected]>Tested-by Sachin Kamat<[email protected]>Acked-by Seungwon Jeon<[email protected]>---
drivers/mmc/host/dw_mmc.c | 11 +++++++++-- include/linux/mmc/dw_mmc.h | 2 ++ 2 files changed, 11 insertions(+), 2 deletions(-)Quoted 5 lines
Thanks for taking my suggestion and making it backward compatible. This looks great to me. It tested this in both the backward compatible way (with the warning) and the non-backward compatible way. I think we should land and patch #2 ASAP and then we can land the rest of the series as SoC maintainers see fit.
Yes, right if we don't want to see useless merge conflicts...
When I sent ack on exynos stuff, there was no conflict with my tree but happens it now.
- Kukjin
Quoted 2 lines
Reviewed-by Doug Anderson<[email protected]>Tested-by Doug Anderson<[email protected]>
Jaehoon Chung
maintainerPATCH v9 2/5 mmc: dw_mmc: modify the dt-binding for removing slot-node and supports-highspeed
In reply to Jaehoon ChungAlmost all SoCs use one slot per host controller.
(Even if controller can support the multiple slot, Recommend to use one slot per host controller.) Don't use the slot-node and deprecate the "supports-highspeed" property.
Instead, use the cap-mmc/sd-highspeed.
--- .../devicetree/bindings/mmc/exynos-dw-mshc.txt | 17 +++++------------ .../devicetree/bindings/mmc/k3-dw-mshc.txt | 12 +++++------- .../devicetree/bindings/mmc/synopsys-dw-mshc.txt | 12 +++++------- 3 files changed, 15 insertions(+), 26 deletions(-)
Documentation/devicetree/bindings/mmc/exynos-dw-mshc.txt +5 -12
@@ -46,13 +46,14 @@ Required Properties: - if CIU clock divider value is 0 (that is divide by 1), both tx and rx phase shift clocks should be 0. -Required properties for a slot: +Required properties for a slot (Deprecated - Recommend to use one slot per host): * gpios: specifies a list of gpios used for command, clock and data bus. The first gpio is the command line and the second gpio is the clock line. The rest of the gpios (depending on the bus-width property) are the data lines in no particular order. The format of the gpio specifier depends on the gpio controller. +(Deprecated - Refer to Documentation/devicetree/binding/pinctrl/samsung-pinctrl.txt) Example:
@@ -69,21 +70,13 @@ Example: dwmmc0 at 12200000 { num-slots = <1>; - supports-highspeed; + cap-mmc-highspeed; + cap-sd-highspeed; broken-cd; fifo-depth = <0x80>; card-detect-delay = <200>; samsung,dw-mshc-ciu-div = <3>; samsung,dw-mshc-sdr-timing = <2 3>; samsung,dw-mshc-ddr-timing = <1 2>; - - slot at 0 { - reg = <0>; - bus-width = <8>; - gpios = <&gpc0 0 2 0 3>, <&gpc0 1 2 0 3>, - <&gpc1 0 2 3 3>, <&gpc1 1 2 3 3>, - <&gpc1 2 2 3 3>, <&gpc1 3 2 3 3>, - <&gpc0 3 2 3 3>, <&gpc0 4 2 3 3>, - <&gpc0 5 2 3 3>, <&gpc0 6 2 3 3>; - }; + bus-width = <8>; };
Documentation/devicetree/bindings/mmc/k3-dw-mshc.txt +5 -7
@@ -34,13 +34,11 @@ Example: num-slots = <1>; vmmc-supply = <&ldo12>; fifo-depth = <0x100>; - supports-highspeed; pinctrl-names = "default"; pinctrl-0 = <&sd_pmx_pins &sd_cfg_func1 &sd_cfg_func2>; - slot at 0 { - reg = <0>; - bus-width = <4>; - disable-wp; - cd-gpios = <&gpio10 3 0>; - }; + bus-width = <4>; + disable-wp; + cd-gpios = <&gpio10 3 0>; + cap-mmc-highspeed; + cap-sd-highspeed; };
Documentation/devicetree/bindings/mmc/synopsys-dw-mshc.txt +5 -7
@@ -67,7 +67,8 @@ Optional properties: * card-detect-delay: Delay in milli-seconds before detecting card after card insert event. The default value is 0. -* supports-highspeed: Enables support for high speed cards (up to 50MHz) +* supports-highspeed (DEPRECATED): Enables support for high speed cards (up to 50MHz) + (use "cap-mmc-highspeed" or "cap-sd-highspeed" instead) * broken-cd: as documented in mmc core bindings.
@@ -98,14 +99,11 @@ board specific portions as listed below. clock-frequency = <400000000>; clock-freq-min-max = <400000 200000000>; num-slots = <1>; - supports-highspeed; broken-cd; fifo-depth = <0x80>; card-detect-delay = <200>; vmmc-supply = <&buck8>; - - slot at 0 { - reg = <0>; - bus-width = <8>; - }; + bus-width = <8>; + cap-mmc-highspeed; + cap-sd-highspeed; };
Signature · 1 line
1.7.9.5
Jaehoon Chung
maintainerPATCH v9 3/5 ARM: dts: exynos: unuse the slot-node and deprecate the supports-highspeed for dw-mmc
In reply to Jaehoon Chungdw-mmc controller can support multiple slots.
But, there are no use-cases anywhere. So we don't need to support the slot-node for dw-mmc controller.
And "supports-highspeed" property in dw-mmc is deprecated. "supports-highspeed" property can be replaced with "cap-sd/mmc-highspeed".
--- arch/arm/boot/dts/exynos4412-odroidx.dts | 8 ++------ arch/arm/boot/dts/exynos4412-origen.dts | 8 ++------ arch/arm/boot/dts/exynos4412-trats2.dts | 8 ++------ arch/arm/boot/dts/exynos5250-arndale.dts | 18 +++++------------ arch/arm/boot/dts/exynos5250-cros-common.dtsi | 26 +++++++------------------ arch/arm/boot/dts/exynos5250-smdk5250.dts | 18 +++++------------ arch/arm/boot/dts/exynos5250-snow.dts | 6 ++---- arch/arm/boot/dts/exynos5260-xyref5260.dts | 18 +++++------------ arch/arm/boot/dts/exynos5410-smdk5410.dts | 18 +++++------------ arch/arm/boot/dts/exynos5420-arndale-octa.dts | 16 ++++----------- arch/arm/boot/dts/exynos5420-peach-pit.dts | 16 ++++----------- arch/arm/boot/dts/exynos5420-smdk5420.dts | 16 ++++----------- arch/arm/boot/dts/exynos5800-peach-pi.dts | 16 ++++----------- 13 files changed, 51 insertions(+), 141 deletions(-)
arch/arm/boot/dts/exynos4412-odroidx.dts +2 -6
@@ -45,17 +45,13 @@ status = "okay"; num-slots = <1>; - supports-highspeed; broken-cd; card-detect-delay = <200>; samsung,dw-mshc-ciu-div = <3>; samsung,dw-mshc-sdr-timing = <2 3>; samsung,dw-mshc-ddr-timing = <1 2>; - - slot at 0 { - reg = <0>; - bus-width = <8>; - }; + bus-width = <8>; + cap-mmc-highspeed; }; regulator_p3v3 {
arch/arm/boot/dts/exynos4412-origen.dts +2 -6
@@ -137,17 +137,13 @@ status = "okay"; num-slots = <1>; - supports-highspeed; broken-cd; card-detect-delay = <200>; samsung,dw-mshc-ciu-div = <3>; samsung,dw-mshc-sdr-timing = <2 3>; samsung,dw-mshc-ddr-timing = <1 2>; - - slot at 0 { - reg = <0>; - bus-width = <8>; - }; + bus-width = <8>; + cap-mmc-highspeed; }; codec at 13400000 {
arch/arm/boot/dts/exynos4412-trats2.dts +2 -6
@@ -520,7 +520,6 @@ mmc at 12550000 { num-slots = <1>; - supports-highspeed; broken-cd; non-removable; card-detect-delay = <200>;
@@ -532,11 +531,8 @@ pinctrl-0 = <&sd4_clk &sd4_cmd &sd4_bus4 &sd4_bus8>; pinctrl-names = "default"; status = "okay"; - - slot at 0 { - reg = <0>; - bus-width = <8>; - }; + bus-width = <8>; + cap-mmc-highspeed; }; serial at 13800000 {
arch/arm/boot/dts/exynos5250-arndale.dts +5 -13
@@ -401,7 +401,6 @@ mmc_0: mmc at 12200000 { status = "okay"; num-slots = <1>; - supports-highspeed; broken-cd; card-detect-delay = <200>; samsung,dw-mshc-ciu-div = <3>;
@@ -410,17 +409,13 @@ vmmc-supply = <&mmc_reg>; pinctrl-names = "default"; pinctrl-0 = <&sd0_clk &sd0_cmd &sd0_bus4 &sd0_bus8>; - - slot at 0 { - reg = <0>; - bus-width = <8>; - }; + bus-width = <8>; + cap-mmc-highspeed; }; mmc_2: mmc at 12220000 { status = "okay"; num-slots = <1>; - supports-highspeed; card-detect-delay = <200>; samsung,dw-mshc-ciu-div = <3>; samsung,dw-mshc-sdr-timing = <2 3>;
@@ -428,12 +423,9 @@ vmmc-supply = <&mmc_reg>; pinctrl-names = "default"; pinctrl-0 = <&sd2_clk &sd2_cmd &sd2_cd &sd2_bus4>; - - slot at 0 { - reg = <0>; - bus-width = <4>; - disable-wp; - }; + bus-width = <4>; + disable-wp; + cap-sd-highspeed; }; i2s0: i2s at 03830000 {
arch/arm/boot/dts/exynos5250-cros-common.dtsi +7 -19
@@ -248,7 +248,6 @@ mmc at 12200000 { num-slots = <1>; - supports-highspeed; broken-cd; card-detect-delay = <200>; samsung,dw-mshc-ciu-div = <3>;
@@ -256,44 +255,33 @@ samsung,dw-mshc-ddr-timing = <1 2>; pinctrl-names = "default"; pinctrl-0 = <&sd0_clk &sd0_cmd &sd0_cd &sd0_bus4 &sd0_bus8>; - - slot at 0 { - reg = <0>; - bus-width = <8>; - }; + bus-width = <8>; + cap-mmc-highspeed; }; mmc at 12220000 { num-slots = <1>; - supports-highspeed; card-detect-delay = <200>; samsung,dw-mshc-ciu-div = <3>; samsung,dw-mshc-sdr-timing = <2 3>; samsung,dw-mshc-ddr-timing = <1 2>; pinctrl-names = "default"; pinctrl-0 = <&sd2_clk &sd2_cmd &sd2_cd &sd2_bus4>; - - slot at 0 { - reg = <0>; - bus-width = <4>; - wp-gpios = <&gpc2 1 0>; - }; + bus-width = <4>; + wp-gpios = <&gpc2 1 0>; + cap-sd-highspeed; }; mmc at 12230000 { num-slots = <1>; - supports-highspeed; broken-cd; card-detect-delay = <200>; samsung,dw-mshc-ciu-div = <3>; samsung,dw-mshc-sdr-timing = <2 3>; samsung,dw-mshc-ddr-timing = <1 2>; /* See board-specific dts files for pin setup */ - - slot at 0 { - reg = <0>; - bus-width = <4>; - }; + bus-width = <4>; + cap-sd-highspeed; }; spi_1: spi at 12d30000 {
arch/arm/boot/dts/exynos5250-smdk5250.dts +5 -13
@@ -282,7 +282,6 @@ mmc at 12200000 { status = "okay"; num-slots = <1>; - supports-highspeed; broken-cd; card-detect-delay = <200>; samsung,dw-mshc-ciu-div = <3>;
@@ -290,29 +289,22 @@ samsung,dw-mshc-ddr-timing = <1 2>; pinctrl-names = "default"; pinctrl-0 = <&sd0_clk &sd0_cmd &sd0_bus4 &sd0_bus8>; - - slot at 0 { - reg = <0>; - bus-width = <8>; - }; + bus-width = <8>; + cap-mmc-highspeed; }; mmc at 12220000 { status = "okay"; num-slots = <1>; - supports-highspeed; card-detect-delay = <200>; samsung,dw-mshc-ciu-div = <3>; samsung,dw-mshc-sdr-timing = <2 3>; samsung,dw-mshc-ddr-timing = <1 2>; pinctrl-names = "default"; pinctrl-0 = <&sd2_clk &sd2_cmd &sd2_cd &sd2_bus4>; - - slot at 0 { - reg = <0>; - bus-width = <4>; - disable-wp; - }; + bus-width = <4>; + disable-wp; + cap-sd-highspeed; }; spi_1: spi at 12d30000 {
arch/arm/boot/dts/exynos5250-snow.dts +2 -4
@@ -329,10 +329,8 @@ */ mmc at 12230000 { status = "okay"; - slot at 0 { - pinctrl-names = "default"; - pinctrl-0 = <&sd3_clk &sd3_cmd &sd3_bus4>; - }; + pinctrl-names = "default"; + pinctrl-0 = <&sd3_clk &sd3_cmd &sd3_bus4>; }; i2c at 12CD0000 {
arch/arm/boot/dts/exynos5260-xyref5260.dts +5 -13
@@ -69,7 +69,7 @@ num-slots = <1>; broken-cd; bypass-smu; - supports-highspeed; + cap-mmc-highspeed; supports-hs200-mode; /* 200 Mhz */ card-detect-delay = <200>; samsung,dw-mshc-ciu-div = <3>;
@@ -77,27 +77,19 @@ samsung,dw-mshc-ddr-timing = <0 2>; pinctrl-names = "default"; pinctrl-0 = <&sd0_rdqs &sd0_clk &sd0_cmd &sd0_bus1 &sd0_bus4 &sd0_bus8>; - - slot at 0 { - reg = <0>; - bus-width = <8>; - }; + bus-width = <8>; }; &mmc_2 { status = "okay"; num-slots = <1>; - supports-highspeed; + cap-sd-highspeed; card-detect-delay = <200>; samsung,dw-mshc-ciu-div = <3>; samsung,dw-mshc-sdr-timing = <2 3>; samsung,dw-mshc-ddr-timing = <1 2>; pinctrl-names = "default"; pinctrl-0 = <&sd2_clk &sd2_cmd &sd2_cd &sd2_bus1 &sd2_bus4>; - - slot at 0 { - reg = <0>; - bus-width = <4>; - disable-wp; - }; + bus-width = <4>; + disable-wp; };
arch/arm/boot/dts/exynos5410-smdk5410.dts +5 -13
@@ -40,33 +40,25 @@ &mmc_0 { status = "okay"; num-slots = <1>; - supports-highspeed; + cap-mmc-highspeed; broken-cd; card-detect-delay = <200>; samsung,dw-mshc-ciu-div = <3>; samsung,dw-mshc-sdr-timing = <2 3>; samsung,dw-mshc-ddr-timing = <1 2>; - - slot at 0 { - reg = <0>; - bus-width = <8>; - }; + bus-width = <8>; }; &mmc_2 { status = "okay"; num-slots = <1>; - supports-highspeed; + cap-sd-highspeed; card-detect-delay = <200>; samsung,dw-mshc-ciu-div = <3>; samsung,dw-mshc-sdr-timing = <2 3>; samsung,dw-mshc-ddr-timing = <1 2>; - - slot at 0 { - reg = <0>; - bus-width = <4>; - disable-wp; - }; + bus-width = <4>; + disable-wp; }; &uart0 {
arch/arm/boot/dts/exynos5420-arndale-octa.dts +4 -12
@@ -50,7 +50,6 @@ mmc at 12200000 { status = "okay"; broken-cd; - supports-highspeed; card-detect-delay = <200>; samsung,dw-mshc-ciu-div = <3>; samsung,dw-mshc-sdr-timing = <0 4>;
@@ -58,16 +57,12 @@ pinctrl-names = "default"; pinctrl-0 = <&sd0_clk &sd0_cmd &sd0_bus4 &sd0_bus8>; vmmc-supply = <&ldo10_reg>; - - slot at 0 { - reg = <0>; - bus-width = <8>; - }; + bus-width = <8>; + cap-mmc-highspeed; }; mmc at 12220000 { status = "okay"; - supports-highspeed; card-detect-delay = <200>; samsung,dw-mshc-ciu-div = <3>; samsung,dw-mshc-sdr-timing = <2 3>;
@@ -75,11 +70,8 @@ pinctrl-names = "default"; pinctrl-0 = <&sd2_clk &sd2_cmd &sd2_cd &sd2_bus4>; vmmc-supply = <&ldo10_reg>; - - slot at 0 { - reg = <0>; - bus-width = <4>; - }; + bus-width = <4>; + cap-mmc-highspeed; }; hsi2c_4: i2c at 12CA0000 {
arch/arm/boot/dts/exynos5420-peach-pit.dts +4 -12
@@ -155,7 +155,7 @@ num-slots = <1>; broken-cd; caps2-mmc-hs200-1_8v; - supports-highspeed; + cap-mmc-highspeed; non-removable; card-detect-delay = <200>; clock-frequency = <400000000>;
@@ -164,17 +164,13 @@ samsung,dw-mshc-ddr-timing = <0 2>; pinctrl-names = "default"; pinctrl-0 = <&sd0_clk &sd0_cmd &sd0_bus4 &sd0_bus8>; - - slot at 0 { - reg = <0>; - bus-width = <8>; - }; + bus-width = <8>; }; &mmc_2 { status = "okay"; num-slots = <1>; - supports-highspeed; + cap-sd-highspeed; card-detect-delay = <200>; clock-frequency = <400000000>; samsung,dw-mshc-ciu-div = <3>;
@@ -182,11 +178,7 @@ samsung,dw-mshc-ddr-timing = <1 2>; pinctrl-names = "default"; pinctrl-0 = <&sd2_clk &sd2_cmd &sd2_cd &sd2_bus4>; - - slot at 0 { - reg = <0>; - bus-width = <4>; - }; + bus-width = <4>; }; &hsi2c_7 {
arch/arm/boot/dts/exynos5420-smdk5420.dts +4 -12
@@ -76,34 +76,26 @@ mmc at 12200000 { status = "okay"; broken-cd; - supports-highspeed; card-detect-delay = <200>; 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_clk &sd0_cmd &sd0_bus4 &sd0_bus8>; - - slot at 0 { - reg = <0>; - bus-width = <8>; - }; + bus-width = <8>; + cap-mmc-highspeed; }; mmc at 12220000 { status = "okay"; - supports-highspeed; card-detect-delay = <200>; samsung,dw-mshc-ciu-div = <3>; samsung,dw-mshc-sdr-timing = <2 3>; samsung,dw-mshc-ddr-timing = <1 2>; pinctrl-names = "default"; pinctrl-0 = <&sd2_clk &sd2_cmd &sd2_cd &sd2_bus4>; - - slot at 0 { - reg = <0>; - bus-width = <4>; - }; + bus-width = <4>; + cap-sd-highspeed; }; dp-controller at 145B0000 {
arch/arm/boot/dts/exynos5800-peach-pi.dts +4 -12
@@ -139,7 +139,7 @@ num-slots = <1>; broken-cd; caps2-mmc-hs200-1_8v; - supports-highspeed; + cap-mmc-highspeed; non-removable; card-detect-delay = <200>; clock-frequency = <400000000>;
@@ -148,17 +148,13 @@ samsung,dw-mshc-ddr-timing = <0 2>; pinctrl-names = "default"; pinctrl-0 = <&sd0_clk &sd0_cmd &sd0_bus4 &sd0_bus8>; - - slot at 0 { - reg = <0>; - bus-width = <8>; - }; + bus-width = <8>; }; &mmc_2 { status = "okay"; num-slots = <1>; - supports-highspeed; + cap-sd-highspeed; card-detect-delay = <200>; clock-frequency = <400000000>; samsung,dw-mshc-ciu-div = <3>;
@@ -166,11 +162,7 @@ samsung,dw-mshc-ddr-timing = <1 2>; pinctrl-names = "default"; pinctrl-0 = <&sd2_clk &sd2_cmd &sd2_cd &sd2_bus4>; - - slot at 0 { - reg = <0>; - bus-width = <4>; - }; + bus-width = <4>; }; &dp {
Signature · 1 line
1.7.9.5
Jaehoon Chung
maintainerPATCH v9 4/5 ARM: dts: socfpga: unuse the slot-node and deprecate the supports-highspeed for dw-mmc
In reply to Jaehoon Chungdw-mmc controller can support multiple slots.
But, there are no use-cases anywhere. So we don't need to support the slot-node for dw-mmc controller.
And "supports-highspeed" property in dw-mmc is deprecated. "supports-highspeed" property can be replaced with "cap-sd/mmc-highspeed".
--- arch/arm/boot/dts/socfpga_arria5.dtsi | 9 +++------ arch/arm/boot/dts/socfpga_cyclone5.dtsi | 9 +++------ arch/arm/boot/dts/socfpga_vt.dts | 9 +++------ 3 files changed, 9 insertions(+), 18 deletions(-)
arch/arm/boot/dts/socfpga_arria5.dtsi +3 -6
@@ -29,13 +29,10 @@ dwmmc0 at ff704000 { num-slots = <1>; - supports-highspeed; broken-cd; - - slot at 0 { - reg = <0>; - bus-width = <4>; - }; + bus-width = <4>; + cap-mmc-highspeed; + cap-sd-highspeed; }; sysmgr at ffd08000 {
arch/arm/boot/dts/socfpga_cyclone5.dtsi +3 -6
@@ -30,13 +30,10 @@ dwmmc0 at ff704000 { num-slots = <1>; - supports-highspeed; broken-cd; - - slot at 0 { - reg = <0>; - bus-width = <4>; - }; + bus-width = <4>; + cap-mmc-highspeed; + cap-sd-highspeed; }; ethernet at ff702000 {
arch/arm/boot/dts/socfpga_vt.dts +3 -6
@@ -43,13 +43,10 @@ dwmmc0 at ff704000 { num-slots = <1>; - supports-highspeed; broken-cd; - - slot at 0 { - reg = <0>; - bus-width = <4>; - }; + bus-width = <4>; + cap-mmc-highspeed; + cap-sd-highspeed; }; ethernet at ff700000 {
Signature · 1 line
1.7.9.5
Jaehoon Chung
maintainerPATCH v9 5/5 ARM: dts: rockchip: unuse the slot-node and deprecate the supports-highspeed for dw-mmc
In reply to Jaehoon Chungdw-mmc controller can support multiple slots.
But, there are no use-cases anywhere. So we don't need to support the slot-node for dw-mmc controller.
And "supports-highspeed" property in dw-mmc is deprecated. "supports-highspeed" property can be replaced with "cap-sd/mmc-highspeed".
--- arch/arm/boot/dts/rk3066a-bqcurie2.dts | 16 ++++------------ 1 file changed, 4 insertions(+), 12 deletions(-)
arch/arm/boot/dts/rk3066a-bqcurie2.dts +4 -12
@@ -59,12 +59,8 @@ pinctrl-names = "default"; pinctrl-0 = <&sd0_clk &sd0_cmd &sd0_cd &sd0_bus4>; vmmc-supply = <&vcc_sd0>; - - slot at 0 { - reg = <0>; - bus-width = <4>; - disable-wp; - }; + bus-width = <4>; + disable-wp; }; dwmmc at 10218000 { /* wifi */
@@ -74,12 +70,8 @@ pinctrl-names = "default"; pinctrl-0 = <&sd1_clk &sd1_cmd &sd1_bus4>; - - slot at 0 { - reg = <0>; - bus-width = <4>; - disable-wp; - }; + bus-width = <4>; + disable-wp; }; gpio-keys {
Signature · 1 line
1.7.9.5