Re: [RFC PATCH 07/21] mmc: sdhci-pxav3: consolidate parsing path

From: Shawn Lin
Date: Wed Jan 27 2016 - 01:17:49 EST


Hi Jisheng,

On 2016/1/27 13:44, Jisheng Zhang wrote:
Hi Shawn,

On Wed, 27 Jan 2016 13:07:36 +0800 Shawn Lin wrote:

This patch remove mmc_of_parse and check return value
of sdhci_get_of_property.

Cc: Jisheng Zhang <jszhang@xxxxxxxxxxx>
Cc: Gregory CLEMENT <gregory.clement@xxxxxxxxxxxxxxxxxx>
Signed-off-by: Shawn Lin <shawn.lin@xxxxxxxxxxxxxx>

Reviewed-by: Jisheng Zhang <jszhang@xxxxxxxxxxx>


But I have some comments to your patch10:

SDHCI_QUIRK_BROKEN_CARD_DETECTION is for "broken-cd".
If we add MMC_CAP_NONREMOVABLE("non-removeble"), we shoud
not add "broken-cd" together according to mmc.txt for
dt-bingdings. Also, "broken-cd" can obtain from mmc_of_parse,
which will add MMC_CAP_NEEDS_POLL into mmc->caps.

The problem is non-dt platforms which need the broken cd quirk don't have
chance to set MMC_CAP_NEEDS_POLL in driver, unless we explicitly do so
in driver. But then, the driver only need to do so on some platforms but
not always.


Thanks for sharing your thought. That is indeed a historical baggage
to improve sdhci. So, it needs to check each platform case by case.
Let's wait more feedback untile I decide how to respin the patchset. :)

Thanks,
Jisheng


---

drivers/mmc/host/sdhci-pxav3.c | 4 +---
1 file changed, 1 insertion(+), 3 deletions(-)

diff --git a/drivers/mmc/host/sdhci-pxav3.c b/drivers/mmc/host/sdhci-pxav3.c
index f5edf9d..06eda25 100644
--- a/drivers/mmc/host/sdhci-pxav3.c
+++ b/drivers/mmc/host/sdhci-pxav3.c
@@ -410,10 +410,8 @@ static int sdhci_pxav3_probe(struct platform_device *pdev)

match = of_match_device(of_match_ptr(sdhci_pxav3_of_match), &pdev->dev);
if (match) {
- ret = mmc_of_parse(host->mmc);
- if (ret)
+ ret = sdhci_get_of_property(pdev);
goto err_of_parse;
- sdhci_get_of_property(pdev);
pdata = pxav3_get_mmc_pdata(dev);
pdev->dev.platform_data = pdata;
} else if (pdata) {






--
Best Regards
Shawn Lin