Hi Javier, On 10/15/2015 10:21 PM, Javier Martinez Canillas wrote:
Hello, The Exynos Chromebooks DTS don't use the correct card detection properties since these were carried from the vendor tree that had a reason to do so. There are two things that I noticed: 1) The Marvell WiFi SDIO is marked as broken-cd instead of non-removable: This causes the device to be removed when the system enters into a suspend state which leads to the following warning when the system is resumed: [ 181.944636] mmc2: error -2 during resume (card was removed?) The rationale for using broken-cd is explained in downstream commit [0] and was that using the non-removable property caused issues with the mwifiex driver since the reset logic called the mmc_{remove,add}_host() functions. But the reset logic in the mwifiex mainline driver has changed and this is no longer the case so it's safe to use the non-removable property AFAICT. 2) The eMMC node has both broken-cd and non-removable but the MMC DT binding doc (Documentation/devicetree/bindings/mmc/mmc.txt) mentions that only one of these card detection properties should be used. So this series change both the SDIO WiFi and eMMC device nodes in the Snow, Peach Pi and Peach Pit boards DTS to use the non-removable property. To test, I've cherry picked commit [1] from the vendor tree that adds a debugfs entry to force a card reset and after the reset, the WiFi card still works correctly: $ echo 1 > /sys/kernel/debug/mwifiex/mlan0/reset And also tested that both eMMC and WiFi are working correctly after a S2R. The test were made on an Exynos5800 Peach Pi but I don't have access to a Snow anymore so testing patch 3/6 and 6/6 on that board will be appreciated. v1 of the series was [2] and this version fixes issues pointed out by Tomeu. Changes since v1: - Replace broken-cd for non-removable in the correct mmc node for Snow. - Correct the card detetion properties for eMMC in Snow, Pit and Pi. - Also remove the card-detect-delay property when using non-removable. [0]: https://chromium.googlesource.com/chromiumos/third_party/kernel/+/ad348e1e2381 [1]: https://chromium.googlesource.com/chromiumos/third_party/kernel/+/5995363523de [2]: https://lkml.org/lkml/2015/10/15/294 Best regards, Javier Javier Martinez Canillas (6): ARM: dts: Mark SDIO as non-removable in exynos5800-peach-pi ARM: dts: Mark SDIO as non-removable in exynos5420-peach-pit ARM: dts: Mark SDIO as non-removable in exynos5250-snow-common ARM: dts: Remove broken-cd from eMMC node in exynos5800-peach-pi ARM: dts: Remove broken-cd from eMMC node in exynos5420-peach-pi ARM: dts: Mark eMMC as non-removable in exynos5250-snow-common
This series looks good to me, so feel free to add Reviewed-by: Alim Akhtar <alim.akhtar@xxxxxxxxxxx> and for patch 4 and 5: Tested-by: Alim Akhtar <alim.akhtar@xxxxxxxxxxx> Thanks.
arch/arm/boot/dts/exynos5250-snow-common.dtsi | 6 ++---- arch/arm/boot/dts/exynos5420-peach-pit.dts | 5 +---- arch/arm/boot/dts/exynos5800-peach-pi.dts | 5 +---- 3 files changed, 4 insertions(+), 12 deletions(-)
-- To unsubscribe from this list: send the line "unsubscribe linux-samsung-soc" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html