diff options
author | Shantanu Jain <shjain@codeaurora.org> | 2016-05-26 11:34:09 +0530 |
---|---|---|
committer | Gerrit - the friendly Code Review server <code-review@localhost> | 2016-08-17 02:14:32 -0700 |
commit | aee223238b3932989b8ab68fdae1dcbafd1c53b0 (patch) | |
tree | fd03217b849d7e6819382a8eaff324e52244fbf4 /drivers/input | |
parent | 61f82846e06f2f35a2d764027664b6289d11982b (diff) |
input: touchscreen: correct the return value in ITE tech touch driver
Correct the return value of it7260_ts_chip_low_power_mode function
in ITE tech touch driver.
This is a propagation patch from 3.18 kernel 'commit b1e998b971d9
("input: touchscreen: correct the return value in ITE tech touch driver")'
CRs-Fixed: 1020680
Change-Id: Iaaeb4ae22fadefd976906fdf8a995cd7cfe12d33
Signed-off-by: Shantanu Jain <shjain@codeaurora.org>
Diffstat (limited to 'drivers/input')
-rw-r--r-- | drivers/input/touchscreen/it7258_ts_i2c.c | 18 |
1 files changed, 15 insertions, 3 deletions
diff --git a/drivers/input/touchscreen/it7258_ts_i2c.c b/drivers/input/touchscreen/it7258_ts_i2c.c index 231ecd1a8542..88b1d3c013c7 100644 --- a/drivers/input/touchscreen/it7258_ts_i2c.c +++ b/drivers/input/touchscreen/it7258_ts_i2c.c @@ -748,15 +748,27 @@ static int it7260_ts_chip_low_power_mode(struct it7260_ts_data *ts_data, u8 dummy; int ret; - if (sleep_type) + if (sleep_type) { ret = it7260_i2c_write_no_ready_check(ts_data, BUF_COMMAND, cmd_sleep, sizeof(cmd_sleep)); - else + if (ret != IT_I2C_WRITE_RET) + dev_err(&ts_data->client->dev, + "Can't go to sleep or low power mode(%d) %d\n", + sleep_type, ret); + else + ret = 0; + } else { ret = it7260_i2c_read_no_ready_check(ts_data, BUF_QUERY, &dummy, sizeof(dummy)); + if (ret != IT_I2C_READ_RET) + dev_err(&ts_data->client->dev, + "Can't go to active mode %d\n", ret); + else + ret = 0; + } msleep(WAIT_CHANGE_MODE); - return (ret == IT_I2C_WRITE_RET ? 0 : ret); + return ret; } static ssize_t sysfs_fw_upgrade_store(struct device *dev, |