Messages in this thread | | | Subject | Re: [RFC PATCH 07/21] mmc: sdhci-pxav3: consolidate parsing path | From | Shawn Lin <> | Date | Wed, 27 Jan 2016 14:17:11 +0800 |
| |
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@marvell.com> >> Cc: Gregory CLEMENT <gregory.clement@free-electrons.com> >> Signed-off-by: Shawn Lin <shawn.lin@rock-chips.com> > > Reviewed-by: Jisheng Zhang <jszhang@marvell.com> > > > 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
| |