[PATCH] staging: iio: tsl2583: fix unused function warning

From: Arnd Bergmann
Date: Tue Nov 08 2016 - 09:03:34 EST


Removing a call to the taos_chip_off() makes it unused when CONFIG_PM
is disabled:

drivers/staging/iio/light/tsl2583.c:438:12: error: âtaos_chip_offâ defined but not used [-Werror=unused-function]

This removes all the #ifdef in this file, and marks the PM functions as
__maybe_unused instead, which is more reliable and gives us better
compile time coverage.

Fixes: 0561155f6fc5 ("staging: iio: tsl2583: don't shutdown chip when updating the lux table")
Signed-off-by: Arnd Bergmann <arnd@xxxxxxxx>
---
drivers/staging/iio/light/tsl2583.c | 15 +++------------
1 file changed, 3 insertions(+), 12 deletions(-)

diff --git a/drivers/staging/iio/light/tsl2583.c b/drivers/staging/iio/light/tsl2583.c
index 7eab17f4557e..d74e33bacbf9 100644
--- a/drivers/staging/iio/light/tsl2583.c
+++ b/drivers/staging/iio/light/tsl2583.c
@@ -816,8 +816,7 @@ static int taos_probe(struct i2c_client *clientp,
return 0;
}

-#ifdef CONFIG_PM_SLEEP
-static int taos_suspend(struct device *dev)
+static int __maybe_unused taos_suspend(struct device *dev)
{
struct iio_dev *indio_dev = i2c_get_clientdata(to_i2c_client(dev));
struct tsl2583_chip *chip = iio_priv(indio_dev);
@@ -834,7 +833,7 @@ static int taos_suspend(struct device *dev)
return ret;
}

-static int taos_resume(struct device *dev)
+static int __maybe_unused taos_resume(struct device *dev)
{
struct iio_dev *indio_dev = i2c_get_clientdata(to_i2c_client(dev));
struct tsl2583_chip *chip = iio_priv(indio_dev);
@@ -850,10 +849,6 @@ static int taos_resume(struct device *dev)
}

static SIMPLE_DEV_PM_OPS(taos_pm_ops, taos_suspend, taos_resume);
-#define TAOS_PM_OPS (&taos_pm_ops)
-#else
-#define TAOS_PM_OPS NULL
-#endif

static struct i2c_device_id taos_idtable[] = {
{ "tsl2580", 0 },
@@ -863,7 +858,6 @@ static struct i2c_device_id taos_idtable[] = {
};
MODULE_DEVICE_TABLE(i2c, taos_idtable);

-#ifdef CONFIG_OF
static const struct of_device_id taos2583_of_match[] = {
{ .compatible = "amstaos,tsl2580", },
{ .compatible = "amstaos,tsl2581", },
@@ -871,15 +865,12 @@ static const struct of_device_id taos2583_of_match[] = {
{ },
};
MODULE_DEVICE_TABLE(of, taos2583_of_match);
-#else
-#define taos2583_of_match NULL
-#endif

/* Driver definition */
static struct i2c_driver taos_driver = {
.driver = {
.name = "tsl2583",
- .pm = TAOS_PM_OPS,
+ .pm = &taos_pm_ops,
.of_match_table = taos2583_of_match,
},
.id_table = taos_idtable,
--
2.9.0