diff options
| author | Brian Masney <masneyb@onstation.org> | 2016-11-12 21:19:19 +0300 |
|---|---|---|
| committer | Jonathan Cameron <jic23@kernel.org> | 2016-11-13 16:07:19 +0300 |
| commit | 85e9304c166e549f75726625cbe06689e2fc6ed2 (patch) | |
| tree | 67ddcaf8849cf33918cfd2c50db4bd311c116df7 | |
| parent | 2ff8a35bd79e5a67137f6201b7d44515f19cf726 (diff) | |
| download | linux-85e9304c166e549f75726625cbe06689e2fc6ed2.tar.xz | |
staging: iio: tsl2583: change current chip state from a tristate to a bool
The current chip state is represented as a tristate (working, suspended,
and unknown). The unknown state was not used. This patch changes the
chip state so that it is now represented as a single boolean value
(suspended).
Signed-off-by: Brian Masney <masneyb@onstation.org>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
| -rw-r--r-- | drivers/staging/iio/light/tsl2583.c | 20 |
1 files changed, 7 insertions, 13 deletions
diff --git a/drivers/staging/iio/light/tsl2583.c b/drivers/staging/iio/light/tsl2583.c index 40aa78e8c867..5a32102e72d1 100644 --- a/drivers/staging/iio/light/tsl2583.c +++ b/drivers/staging/iio/light/tsl2583.c @@ -67,12 +67,6 @@ #define TSL2583_CHIP_ID 0x90 #define TSL2583_CHIP_ID_MASK 0xf0 -enum { - TSL258X_CHIP_UNKNOWN = 0, - TSL258X_CHIP_WORKING = 1, - TSL258X_CHIP_SUSPENDED = 2 -}; - /* Per-device data */ struct taos_als_info { u16 als_ch0; @@ -94,7 +88,7 @@ struct tsl2583_chip { struct taos_settings taos_settings; int als_time_scale; int als_saturation; - int taos_chip_status; + bool suspended; }; struct taos_lux { @@ -441,7 +435,7 @@ static int tsl2583_chip_init_and_power_on(struct iio_dev *indio_dev) if (ret < 0) return ret; - chip->taos_chip_status = TSL258X_CHIP_WORKING; + chip->suspended = false; return ret; } @@ -494,7 +488,7 @@ static ssize_t in_illuminance_calibrate_store(struct device *dev, mutex_lock(&chip->als_mutex); - if (chip->taos_chip_status != TSL258X_CHIP_WORKING) { + if (chip->suspended) { ret = -EBUSY; goto done; } @@ -627,7 +621,7 @@ static int tsl2583_read_raw(struct iio_dev *indio_dev, mutex_lock(&chip->als_mutex); - if (chip->taos_chip_status != TSL258X_CHIP_WORKING) { + if (chip->suspended) { ret = -EBUSY; goto read_done; } @@ -704,7 +698,7 @@ static int tsl2583_write_raw(struct iio_dev *indio_dev, mutex_lock(&chip->als_mutex); - if (chip->taos_chip_status != TSL258X_CHIP_WORKING) { + if (chip->suspended) { ret = -EBUSY; goto write_done; } @@ -778,7 +772,7 @@ static int taos_probe(struct i2c_client *clientp, i2c_set_clientdata(clientp, indio_dev); mutex_init(&chip->als_mutex); - chip->taos_chip_status = TSL258X_CHIP_UNKNOWN; + chip->suspended = true; ret = i2c_smbus_read_byte_data(clientp, TSL258X_CMD_REG | TSL258X_CHIPID); @@ -835,7 +829,7 @@ static int __maybe_unused taos_suspend(struct device *dev) mutex_lock(&chip->als_mutex); ret = tsl2583_set_power_state(chip, TSL258X_CNTL_PWR_OFF); - chip->taos_chip_status = TSL258X_CHIP_SUSPENDED; + chip->suspended = true; mutex_unlock(&chip->als_mutex); return ret; |
