RE: [PATCH v3] mmc: dw_mmc: Add MSHC compatible for Exynos4412

From: Seungwon Jeon
Date: Tue Feb 19 2013 - 05:19:22 EST


On Tuesday, February 19, 2013, Dongjin Kim wrote:
> This patch adds the compatible string for MSHC controller of Exynos4412, and
> share the controller specific properties with Exynos5250 since they have same
> features. Its driver data name is changed to exynos_drv_data instead SoC
> specific name.

It's not actually same.
Exynos4412 doesn't have forward compatibilities for Exynos5250.
I agree that functionality of exynos_drv_data is common.
These functions have been implemented for existing Exynos*.
But in case of caps, it can't applied completely.
I'm concerning about this.

Thanks,
Seungwon Jeon
>
> Cc: Jaehoon Chung <jh80.chung@xxxxxxxxxxx>
> Cc: Sachin Kamat <sachin.kamat@xxxxxxxxxx>
> Signed-off-by: Dongjin Kim <tobetter@xxxxxxxxx>
> ---
> drivers/mmc/host/dw_mmc-exynos.c | 12 +++++++-----
> 1 file changed, 7 insertions(+), 5 deletions(-)
>
> diff --git a/drivers/mmc/host/dw_mmc-exynos.c b/drivers/mmc/host/dw_mmc-exynos.c
> index 4d50da6..38cd03c 100644
> --- a/drivers/mmc/host/dw_mmc-exynos.c
> +++ b/drivers/mmc/host/dw_mmc-exynos.c
> @@ -199,8 +199,8 @@ static int dw_mci_exynos_setup_bus(struct dw_mci *host,
> return 0;
> }
>
> -/* Exynos5250 controller specific capabilities */
> -static unsigned long exynos5250_dwmmc_caps[4] = {
> +/* Exynos4412/Exynos5250 controller specific capabilities */
> +static unsigned long exynos_dwmmc_caps[4] = {
> MMC_CAP_UHS_DDR50 | MMC_CAP_1_8V_DDR |
> MMC_CAP_8_BIT_DATA | MMC_CAP_CMD23,
> MMC_CAP_CMD23,
> @@ -208,8 +208,8 @@ static unsigned long exynos5250_dwmmc_caps[4] = {
> MMC_CAP_CMD23,
> };
>
> -static const struct dw_mci_drv_data exynos5250_drv_data = {
> - .caps = exynos5250_dwmmc_caps,
> +static const struct dw_mci_drv_data exynos_drv_data = {
> + .caps = exynos_dwmmc_caps,
> .init = dw_mci_exynos_priv_init,
> .setup_clock = dw_mci_exynos_setup_clock,
> .prepare_command = dw_mci_exynos_prepare_command,
> @@ -219,8 +219,10 @@ static const struct dw_mci_drv_data exynos5250_drv_data = {
> };
>
> static const struct of_device_id dw_mci_exynos_match[] = {
> + { .compatible = "samsung,exynos4412-dw-mshc",
> + .data = &exynos_drv_data, },
> { .compatible = "samsung,exynos5250-dw-mshc",
> - .data = &exynos5250_drv_data, },
> + .data = &exynos_drv_data, },
> {},
> };
> MODULE_DEVICE_TABLE(of, dw_mci_exynos_match);
> --
> 1.7.10.4
>
> --
> To unsubscribe from this list: send the line "unsubscribe linux-mmc" in
> the body of a message to majordomo@xxxxxxxxxxxxxxx
> More majordomo info at http://vger.kernel.org/majordomo-info.html

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/