[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