diff mbox

[3/7] mmc: sdhci-s3c: Fix driver data for Exynos4 SoCs

Message ID 20171004063828.22068-4-m.szyprowski@samsung.com (mailing list archive)
State New, archived
Headers show

Commit Message

Marek Szyprowski Oct. 4, 2017, 6:38 a.m. UTC
Support for non-dt based initialization for Exynos SoCs has been removed,
so there is no need to keep driver IDs for this case. While touching this,
replace odd conditional code for instantiating driver data for Exynos4
SoCs with a simple reference and move that driver data under CONFIG_OF.

Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
---
 drivers/mmc/host/sdhci-s3c.c | 18 +++++-------------
 1 file changed, 5 insertions(+), 13 deletions(-)

Comments

Ulf Hansson Oct. 4, 2017, 8:08 a.m. UTC | #1
On 4 October 2017 at 08:38, Marek Szyprowski <m.szyprowski@samsung.com> wrote:
> Support for non-dt based initialization for Exynos SoCs has been removed,
> so there is no need to keep driver IDs for this case. While touching this,
> replace odd conditional code for instantiating driver data for Exynos4
> SoCs with a simple reference and move that driver data under CONFIG_OF.
>
> Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>

Are there some dependency to any other earlier patches in this series,
or is it safe to apply standalone to my mmc tree?

Kind regards
Uffe

> ---
>  drivers/mmc/host/sdhci-s3c.c | 18 +++++-------------
>  1 file changed, 5 insertions(+), 13 deletions(-)
>
> diff --git a/drivers/mmc/host/sdhci-s3c.c b/drivers/mmc/host/sdhci-s3c.c
> index d328fcf284d1..cda83ccb2702 100644
> --- a/drivers/mmc/host/sdhci-s3c.c
> +++ b/drivers/mmc/host/sdhci-s3c.c
> @@ -761,32 +761,24 @@ static const struct dev_pm_ops sdhci_s3c_pmops = {
>                            NULL)
>  };
>
> -#if defined(CONFIG_CPU_EXYNOS4210) || defined(CONFIG_SOC_EXYNOS4212)
> -static struct sdhci_s3c_drv_data exynos4_sdhci_drv_data = {
> -       .no_divider = true,
> -};
> -#define EXYNOS4_SDHCI_DRV_DATA ((kernel_ulong_t)&exynos4_sdhci_drv_data)
> -#else
> -#define EXYNOS4_SDHCI_DRV_DATA ((kernel_ulong_t)NULL)
> -#endif
> -
>  static const struct platform_device_id sdhci_s3c_driver_ids[] = {
>         {
>                 .name           = "s3c-sdhci",
>                 .driver_data    = (kernel_ulong_t)NULL,
> -       }, {
> -               .name           = "exynos4-sdhci",
> -               .driver_data    = EXYNOS4_SDHCI_DRV_DATA,
>         },
>         { }
>  };
>  MODULE_DEVICE_TABLE(platform, sdhci_s3c_driver_ids);
>
>  #ifdef CONFIG_OF
> +static struct sdhci_s3c_drv_data exynos4_sdhci_drv_data = {
> +       .no_divider = true,
> +};
> +
>  static const struct of_device_id sdhci_s3c_dt_match[] = {
>         { .compatible = "samsung,s3c6410-sdhci", },
>         { .compatible = "samsung,exynos4210-sdhci",
> -               .data = (void *)EXYNOS4_SDHCI_DRV_DATA },
> +               .data = &exynos4_sdhci_drv_data },
>         {},
>  };
>  MODULE_DEVICE_TABLE(of, sdhci_s3c_dt_match);
> --
> 2.14.2
>
--
To unsubscribe from this list: send the line "unsubscribe linux-mmc" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Marek Szyprowski Oct. 4, 2017, 8:11 a.m. UTC | #2
Hi Ulf,

On 2017-10-04 10:08, Ulf Hansson wrote:
> On 4 October 2017 at 08:38, Marek Szyprowski <m.szyprowski@samsung.com> wrote:
>> Support for non-dt based initialization for Exynos SoCs has been removed,
>> so there is no need to keep driver IDs for this case. While touching this,
>> replace odd conditional code for instantiating driver data for Exynos4
>> SoCs with a simple reference and move that driver data under CONFIG_OF.
>>
>> Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
> Are there some dependency to any other earlier patches in this series,
> or is it safe to apply standalone to my mmc tree?

It is safe to apply it standalone. Other patches in this series are 
cleanup in
other drivers.

>
> Kind regards
> Uffe
>
>> ---
>>   drivers/mmc/host/sdhci-s3c.c | 18 +++++-------------
>>   1 file changed, 5 insertions(+), 13 deletions(-)
>>
>> diff --git a/drivers/mmc/host/sdhci-s3c.c b/drivers/mmc/host/sdhci-s3c.c
>> index d328fcf284d1..cda83ccb2702 100644
>> --- a/drivers/mmc/host/sdhci-s3c.c
>> +++ b/drivers/mmc/host/sdhci-s3c.c
>> @@ -761,32 +761,24 @@ static const struct dev_pm_ops sdhci_s3c_pmops = {
>>                             NULL)
>>   };
>>
>> -#if defined(CONFIG_CPU_EXYNOS4210) || defined(CONFIG_SOC_EXYNOS4212)
>> -static struct sdhci_s3c_drv_data exynos4_sdhci_drv_data = {
>> -       .no_divider = true,
>> -};
>> -#define EXYNOS4_SDHCI_DRV_DATA ((kernel_ulong_t)&exynos4_sdhci_drv_data)
>> -#else
>> -#define EXYNOS4_SDHCI_DRV_DATA ((kernel_ulong_t)NULL)
>> -#endif
>> -
>>   static const struct platform_device_id sdhci_s3c_driver_ids[] = {
>>          {
>>                  .name           = "s3c-sdhci",
>>                  .driver_data    = (kernel_ulong_t)NULL,
>> -       }, {
>> -               .name           = "exynos4-sdhci",
>> -               .driver_data    = EXYNOS4_SDHCI_DRV_DATA,
>>          },
>>          { }
>>   };
>>   MODULE_DEVICE_TABLE(platform, sdhci_s3c_driver_ids);
>>
>>   #ifdef CONFIG_OF
>> +static struct sdhci_s3c_drv_data exynos4_sdhci_drv_data = {
>> +       .no_divider = true,
>> +};
>> +
>>   static const struct of_device_id sdhci_s3c_dt_match[] = {
>>          { .compatible = "samsung,s3c6410-sdhci", },
>>          { .compatible = "samsung,exynos4210-sdhci",
>> -               .data = (void *)EXYNOS4_SDHCI_DRV_DATA },
>> +               .data = &exynos4_sdhci_drv_data },
>>          {},
>>   };
>>   MODULE_DEVICE_TABLE(of, sdhci_s3c_dt_match);
>> --
>> 2.14.2
>>
>
>

Best regards
Krzysztof Kozlowski Oct. 4, 2017, 8:15 a.m. UTC | #3
On Wed, Oct 4, 2017 at 8:38 AM, Marek Szyprowski
<m.szyprowski@samsung.com> wrote:
> Support for non-dt based initialization for Exynos SoCs has been removed,
> so there is no need to keep driver IDs for this case. While touching this,
> replace odd conditional code for instantiating driver data for Exynos4
> SoCs with a simple reference and move that driver data under CONFIG_OF.
>
> Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
> ---
>  drivers/mmc/host/sdhci-s3c.c | 18 +++++-------------
>  1 file changed, 5 insertions(+), 13 deletions(-)
>

Acked-by: Krzysztof Kozlowski <krzk@kernel.org>

Best regards,
Krzysztof
--
To unsubscribe from this list: send the line "unsubscribe linux-mmc" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
On 10/04/2017 08:38 AM, Marek Szyprowski wrote:
> Support for non-dt based initialization for Exynos SoCs has been removed,
> so there is no need to keep driver IDs for this case. While touching this,
> replace odd conditional code for instantiating driver data for Exynos4
> SoCs with a simple reference and move that driver data under CONFIG_OF.
> 
> Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>

Reviewed-by: Sylwester Nawrocki <m.szyprowski@samsung.com>
--
To unsubscribe from this list: send the line "unsubscribe linux-mmc" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Ulf Hansson Oct. 4, 2017, 8:59 a.m. UTC | #5
On 4 October 2017 at 08:38, Marek Szyprowski <m.szyprowski@samsung.com> wrote:
> Support for non-dt based initialization for Exynos SoCs has been removed,
> so there is no need to keep driver IDs for this case. While touching this,
> replace odd conditional code for instantiating driver data for Exynos4
> SoCs with a simple reference and move that driver data under CONFIG_OF.
>
> Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>

Thanks, applied for next!

Kind regards
Uffe

> ---
>  drivers/mmc/host/sdhci-s3c.c | 18 +++++-------------
>  1 file changed, 5 insertions(+), 13 deletions(-)
>
> diff --git a/drivers/mmc/host/sdhci-s3c.c b/drivers/mmc/host/sdhci-s3c.c
> index d328fcf284d1..cda83ccb2702 100644
> --- a/drivers/mmc/host/sdhci-s3c.c
> +++ b/drivers/mmc/host/sdhci-s3c.c
> @@ -761,32 +761,24 @@ static const struct dev_pm_ops sdhci_s3c_pmops = {
>                            NULL)
>  };
>
> -#if defined(CONFIG_CPU_EXYNOS4210) || defined(CONFIG_SOC_EXYNOS4212)
> -static struct sdhci_s3c_drv_data exynos4_sdhci_drv_data = {
> -       .no_divider = true,
> -};
> -#define EXYNOS4_SDHCI_DRV_DATA ((kernel_ulong_t)&exynos4_sdhci_drv_data)
> -#else
> -#define EXYNOS4_SDHCI_DRV_DATA ((kernel_ulong_t)NULL)
> -#endif
> -
>  static const struct platform_device_id sdhci_s3c_driver_ids[] = {
>         {
>                 .name           = "s3c-sdhci",
>                 .driver_data    = (kernel_ulong_t)NULL,
> -       }, {
> -               .name           = "exynos4-sdhci",
> -               .driver_data    = EXYNOS4_SDHCI_DRV_DATA,
>         },
>         { }
>  };
>  MODULE_DEVICE_TABLE(platform, sdhci_s3c_driver_ids);
>
>  #ifdef CONFIG_OF
> +static struct sdhci_s3c_drv_data exynos4_sdhci_drv_data = {
> +       .no_divider = true,
> +};
> +
>  static const struct of_device_id sdhci_s3c_dt_match[] = {
>         { .compatible = "samsung,s3c6410-sdhci", },
>         { .compatible = "samsung,exynos4210-sdhci",
> -               .data = (void *)EXYNOS4_SDHCI_DRV_DATA },
> +               .data = &exynos4_sdhci_drv_data },
>         {},
>  };
>  MODULE_DEVICE_TABLE(of, sdhci_s3c_dt_match);
> --
> 2.14.2
>
--
To unsubscribe from this list: send the line "unsubscribe linux-mmc" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
On 10/04/2017 10:39 AM, Sylwester Nawrocki wrote:
> On 10/04/2017 08:38 AM, Marek Szyprowski wrote:
>> Support for non-dt based initialization for Exynos SoCs has been removed,
>> so there is no need to keep driver IDs for this case. While touching this,
>> replace odd conditional code for instantiating driver data for Exynos4
>> SoCs with a simple reference and move that driver data under CONFIG_OF.
>>
>> Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>

> Reviewed-by: Sylwester Nawrocki <m.szyprowski@samsung.com>

Oops, this should have been:
Reviewed-by: Sylwester Nawrocki <s.nawrocki@samsung.com>

I guess it's too late to fix that since the patch is applied to a stable
branch.

--
Regards,
Sylwester
--
To unsubscribe from this list: send the line "unsubscribe linux-mmc" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Ulf Hansson Oct. 4, 2017, 10:50 a.m. UTC | #7
On 4 October 2017 at 12:03, Sylwester Nawrocki <s.nawrocki@samsung.com> wrote:
> On 10/04/2017 10:39 AM, Sylwester Nawrocki wrote:
>> On 10/04/2017 08:38 AM, Marek Szyprowski wrote:
>>> Support for non-dt based initialization for Exynos SoCs has been removed,
>>> so there is no need to keep driver IDs for this case. While touching this,
>>> replace odd conditional code for instantiating driver data for Exynos4
>>> SoCs with a simple reference and move that driver data under CONFIG_OF.
>>>
>>> Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
>
>> Reviewed-by: Sylwester Nawrocki <m.szyprowski@samsung.com>
>
> Oops, this should have been:
> Reviewed-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
>
> I guess it's too late to fix that since the patch is applied to a stable
> branch.

I can deal with that, no worries.

Kind regards
Uffe
--
To unsubscribe from this list: send the line "unsubscribe linux-mmc" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
diff mbox

Patch

diff --git a/drivers/mmc/host/sdhci-s3c.c b/drivers/mmc/host/sdhci-s3c.c
index d328fcf284d1..cda83ccb2702 100644
--- a/drivers/mmc/host/sdhci-s3c.c
+++ b/drivers/mmc/host/sdhci-s3c.c
@@ -761,32 +761,24 @@  static const struct dev_pm_ops sdhci_s3c_pmops = {
 			   NULL)
 };
 
-#if defined(CONFIG_CPU_EXYNOS4210) || defined(CONFIG_SOC_EXYNOS4212)
-static struct sdhci_s3c_drv_data exynos4_sdhci_drv_data = {
-	.no_divider = true,
-};
-#define EXYNOS4_SDHCI_DRV_DATA ((kernel_ulong_t)&exynos4_sdhci_drv_data)
-#else
-#define EXYNOS4_SDHCI_DRV_DATA ((kernel_ulong_t)NULL)
-#endif
-
 static const struct platform_device_id sdhci_s3c_driver_ids[] = {
 	{
 		.name		= "s3c-sdhci",
 		.driver_data	= (kernel_ulong_t)NULL,
-	}, {
-		.name		= "exynos4-sdhci",
-		.driver_data	= EXYNOS4_SDHCI_DRV_DATA,
 	},
 	{ }
 };
 MODULE_DEVICE_TABLE(platform, sdhci_s3c_driver_ids);
 
 #ifdef CONFIG_OF
+static struct sdhci_s3c_drv_data exynos4_sdhci_drv_data = {
+	.no_divider = true,
+};
+
 static const struct of_device_id sdhci_s3c_dt_match[] = {
 	{ .compatible = "samsung,s3c6410-sdhci", },
 	{ .compatible = "samsung,exynos4210-sdhci",
-		.data = (void *)EXYNOS4_SDHCI_DRV_DATA },
+		.data = &exynos4_sdhci_drv_data },
 	{},
 };
 MODULE_DEVICE_TABLE(of, sdhci_s3c_dt_match);