diff options
| author | Linux Build Service Account <lnxbuild@localhost> | 2018-03-15 05:42:55 -0700 |
|---|---|---|
| committer | Gerrit - the friendly Code Review server <code-review@localhost> | 2018-03-15 05:42:55 -0700 |
| commit | 4a12fa6291ddc99b8e53274defe41ab4b2cbcd22 (patch) | |
| tree | da6a90fbd634553e871fb5788771d50d9db14187 /drivers | |
| parent | f6a96c6a85e9ab7e2d6ee4fc1b942b1516354735 (diff) | |
| parent | 741edf0dd64b31459f777588be7d620d226672fc (diff) | |
Merge "input: touchscreen: Fix uninitialized variable usage in Atmel driver"
Diffstat (limited to 'drivers')
| -rw-r--r-- | drivers/input/touchscreen/atmel_maxtouch_ts.c | 41 |
1 files changed, 25 insertions, 16 deletions
diff --git a/drivers/input/touchscreen/atmel_maxtouch_ts.c b/drivers/input/touchscreen/atmel_maxtouch_ts.c index f58fc8555156..712a278c9d1e 100644 --- a/drivers/input/touchscreen/atmel_maxtouch_ts.c +++ b/drivers/input/touchscreen/atmel_maxtouch_ts.c @@ -1,7 +1,7 @@ /* * Atmel maXTouch Touchscreen driver * - * Copyright (c) 2014-2015, The Linux Foundation. All rights reserved. + * Copyright (c) 2014-2015, 2018 The Linux Foundation. All rights reserved. * * Linux foundation chooses to take subject only to the GPLv2 license terms, * and distributes only under these terms. @@ -529,6 +529,8 @@ static ssize_t mxt_debug_msg_read(struct file *filp, struct kobject *kobj, static int mxt_debug_msg_init(struct mxt_data *data) { + int ret; + sysfs_bin_attr_init(&data->debug_msg_attr); data->debug_msg_attr.attr.name = "debug_msg"; data->debug_msg_attr.attr.mode = 0666; @@ -536,11 +538,20 @@ static int mxt_debug_msg_init(struct mxt_data *data) data->debug_msg_attr.write = mxt_debug_msg_write; data->debug_msg_attr.size = data->T5_msg_size * DEBUG_MSG_MAX; - if (sysfs_create_bin_file(&data->client->dev.kobj, - &data->debug_msg_attr) < 0) - dev_info(&data->client->dev, "Debugfs already exists\n"); + ret = sysfs_create_bin_file(&data->client->dev.kobj, + &data->debug_msg_attr); + if (ret < 0) { + if (ret == -EEXIST) { + dev_info(&data->client->dev, + "Debugfs already exists\n"); + ret = 0; + } else { + dev_err(&data->client->dev, + "Failed to create 'debug_msg' file\n"); + } + } - return 0; + return ret; } static void mxt_debug_msg_remove(struct mxt_data *data) @@ -1462,7 +1473,7 @@ static int mxt_t6_command(struct mxt_data *data, u16 cmd_offset, u8 value, bool wait) { u16 reg; - u8 command_register; + u8 command_register = 0; int timeout_counter = 0; int ret; @@ -1567,7 +1578,7 @@ static int mxt_check_retrigen(struct mxt_data *data) { struct i2c_client *client = data->client; int error; - int val; + int val = 0; if (data->pdata->irqflags & IRQF_TRIGGER_LOW) return 0; @@ -1612,9 +1623,11 @@ static int mxt_update_t100_resolution(struct mxt_data *data) struct i2c_client *client = data->client; int error; struct mxt_object *object; - u16 range_x, range_y, temp; - u8 cfg, tchaux; - u8 aux; + u16 range_x = 0; + u16 range_y = 0; + u16 temp; + u8 cfg = 0; + u8 tchaux, aux; bool update = false; object = mxt_get_object(data, MXT_TOUCH_MULTITOUCHSCREEN_T100); @@ -1653,10 +1666,6 @@ static int mxt_update_t100_resolution(struct mxt_data *data) if (range_x == 0) range_x = 1023; - /* Handle default values */ - if (range_x == 0) - range_x = 1023; - if (range_y == 0) range_y = 1023; @@ -1728,8 +1737,8 @@ static int mxt_update_t9_resolution(struct mxt_data *data) { struct i2c_client *client = data->client; int error; - struct t9_range range; - unsigned char orient; + struct t9_range range = {0}; + unsigned char orient = 0; struct mxt_object *object; u16 temp; bool update = false; |
