Re: [PATCH] ARM: ep93xx: Avoid soc_device_to_device()

From: Alexander Sverdlin
Date: Mon Nov 11 2019 - 18:19:57 EST


Hi!

On 11/11/2019 23:37, Andreas FÃrber wrote:
> ep93xx_init_soc() uses soc_device_to_device() to return a device
> to ep93xx_init_devices(), where it is passed on to its callers,
> who all ignore the return value. As this helper is deprecated,
> change the return type of ep93xx_init_devices() to void and
> have ep93xx_init_soc() return the soc_device instead.
>
> Cc: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>
> Signed-off-by: Andreas FÃrber <afaerber@xxxxxxx>

Acked-by: Alexander Sverdlin <alexander.sverdlin@xxxxxxxxx>

> ---
> arch/arm/mach-ep93xx/core.c | 12 ++++--------
> arch/arm/mach-ep93xx/platform.h | 2 +-
> 2 files changed, 5 insertions(+), 9 deletions(-)
>
> diff --git a/arch/arm/mach-ep93xx/core.c b/arch/arm/mach-ep93xx/core.c
> index 6fb19a393fd2..7a0c82b30564 100644
> --- a/arch/arm/mach-ep93xx/core.c
> +++ b/arch/arm/mach-ep93xx/core.c
> @@ -937,7 +937,7 @@ static const char __init *ep93xx_get_machine_name(void)
> return kasprintf(GFP_KERNEL,"%s", machine_desc->name);
> }
>
> -static struct device __init *ep93xx_init_soc(void)
> +static struct soc_device __init *ep93xx_init_soc(void)
> {
> struct soc_device_attribute *soc_dev_attr;
> struct soc_device *soc_dev;
> @@ -958,13 +958,11 @@ static struct device __init *ep93xx_init_soc(void)
> return NULL;
> }
>
> - return soc_device_to_device(soc_dev);
> + return soc_dev;
> }
>
> -struct device __init *ep93xx_init_devices(void)
> +void __init ep93xx_init_devices(void)
> {
> - struct device *parent;
> -
> /* Disallow access to MaverickCrunch initially */
> ep93xx_devcfg_clear_bits(EP93XX_SYSCON_DEVCFG_CPENA);
>
> @@ -975,7 +973,7 @@ struct device __init *ep93xx_init_devices(void)
> EP93XX_SYSCON_DEVCFG_GONIDE |
> EP93XX_SYSCON_DEVCFG_HONIDE);
>
> - parent = ep93xx_init_soc();
> + ep93xx_init_soc();
>
> /* Get the GPIO working early, other devices need it */
> platform_device_register(&ep93xx_gpio_device);
> @@ -989,8 +987,6 @@ struct device __init *ep93xx_init_devices(void)
> platform_device_register(&ep93xx_wdt_device);
>
> gpio_led_register_device(-1, &ep93xx_led_data);
> -
> - return parent;
> }
>
> void ep93xx_restart(enum reboot_mode mode, const char *cmd)
> diff --git a/arch/arm/mach-ep93xx/platform.h b/arch/arm/mach-ep93xx/platform.h
> index b4045a186239..8a3a2be50f11 100644
> --- a/arch/arm/mach-ep93xx/platform.h
> +++ b/arch/arm/mach-ep93xx/platform.h
> @@ -34,7 +34,7 @@ void ep93xx_register_ac97(void);
> void ep93xx_register_ide(void);
> void ep93xx_register_adc(void);
>
> -struct device *ep93xx_init_devices(void);
> +void ep93xx_init_devices(void);
> extern void ep93xx_timer_init(void);
>
> void ep93xx_restart(enum reboot_mode, const char *);