[PATCH 3/3] macintosh/ams: Fix unused variable warning

Christophe Leroy christophe.leroy at csgroup.eu
Thu Mar 7 00:17:42 AEDT 2024



Le 06/03/2024 à 13:58, Michael Ellerman a écrit :
> If both CONFIG_SENSORS_AMS_PMU and CONFIG_SENSORS_AMS_I2C are unset,
> there is an unused variable warning in the ams driver:
> 
>    drivers/macintosh/ams/ams-core.c: In function 'ams_init':
>    drivers/macintosh/ams/ams-core.c:181:29: warning: unused variable 'np'
>      181 |         struct device_node *np;
> 
> Fix it by using IS_ENABLED() to create a block for each case, and move
> the variable declartion in there.
> 
> Probably the dependencies should be changed so that the driver can't be
> built with both variants disabled, but that would be a larger change.

Can be done easily that way I think:

diff --git a/drivers/macintosh/Kconfig b/drivers/macintosh/Kconfig
index a0e717a986dc..fb38f684444f 100644
--- a/drivers/macintosh/Kconfig
+++ b/drivers/macintosh/Kconfig
@@ -262,7 +262,7 @@ config SENSORS_AMS
  	  will be called ams.

  config SENSORS_AMS_PMU
-	bool "PMU variant"
+	bool "PMU variant" if SENSORS_AMS_I2C
  	depends on SENSORS_AMS && ADB_PMU
  	default y
  	help


> 
> Signed-off-by: Michael Ellerman <mpe at ellerman.id.au>
> ---
>   drivers/macintosh/ams/ams-core.c | 29 ++++++++++++++---------------
>   1 file changed, 14 insertions(+), 15 deletions(-)
> 
> diff --git a/drivers/macintosh/ams/ams-core.c b/drivers/macintosh/ams/ams-core.c
> index c978b4272daa..22d3e6605287 100644
> --- a/drivers/macintosh/ams/ams-core.c
> +++ b/drivers/macintosh/ams/ams-core.c
> @@ -178,25 +178,24 @@ int ams_sensor_attach(void)
>   
>   static int __init ams_init(void)
>   {
> -	struct device_node *np;
> -
>   	spin_lock_init(&ams_info.irq_lock);
>   	mutex_init(&ams_info.lock);
>   	INIT_WORK(&ams_info.worker, ams_worker);
>   
> -#ifdef CONFIG_SENSORS_AMS_I2C
> -	np = of_find_node_by_name(NULL, "accelerometer");
> -	if (np && of_device_is_compatible(np, "AAPL,accelerometer_1"))
> -		/* Found I2C motion sensor */
> -		return ams_i2c_init(np);
> -#endif
> -
> -#ifdef CONFIG_SENSORS_AMS_PMU
> -	np = of_find_node_by_name(NULL, "sms");
> -	if (np && of_device_is_compatible(np, "sms"))
> -		/* Found PMU motion sensor */
> -		return ams_pmu_init(np);
> -#endif
> +	if (IS_ENABLED(CONFIG_SENSORS_AMS_I2C)) {
> +		struct device_node *np = of_find_node_by_name(NULL, "accelerometer");
> +		if (np && of_device_is_compatible(np, "AAPL,accelerometer_1"))
> +			/* Found I2C motion sensor */
> +			return ams_i2c_init(np);
> +	}
> +
> +	if (IS_ENABLED(CONFIG_SENSORS_AMS_PMU)) {
> +		struct device_node *np = of_find_node_by_name(NULL, "sms");
> +		if (np && of_device_is_compatible(np, "sms"))
> +			/* Found PMU motion sensor */
> +			return ams_pmu_init(np);
> +	}
> +
>   	return -ENODEV;
>   }
>   


More information about the Linuxppc-dev mailing list