On Wednesday 09 March 2016 18:08:51 Yangbo Lu wrote: > @@ -567,10 +580,20 @@ static void esdhc_init(struct platform_device *pdev, struct sdhci_host *host) > struct sdhci_pltfm_host *pltfm_host; > struct sdhci_esdhc *esdhc; > u16 host_ver; > + u32 svr; > > pltfm_host = sdhci_priv(host); > esdhc = sdhci_pltfm_priv(pltfm_host); > > + fsl_guts_init(); > + svr = fsl_guts_get_svr(); > + if (svr) { > + esdhc->soc_ver = SVR_SOC_VER(svr); > + esdhc->soc_rev = SVR_REV(svr); > + } else { > + dev_err(&pdev->dev, "Failed to get SVR value!\n"); > + } > + This makes the driver non-portable. Better identify the specific workarounds based on the compatible string for this device, or add a boolean DT property for the quirk. Arnd -- To unsubscribe from this list: send the line "unsubscribe devicetree" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html