--- v3
+++ v1
@@ -1,119 +1,30 @@
-Read whole info block in one i2c transaction.
-And then re-read the matrix size after applying pdata config, since
-it may have changed.
-Note, however, that the matrix x & y size are just displayed for
-information purposes. They aren't actually used by the driver itself.
-
-Also, parse and info print the firmware major and minor version numbers.
+It isn't sent, nor checked anyway, so don't bother reading it.
Signed-off-by: Daniel Kurtz <djkurtz@chromium.org>
---
- drivers/input/touchscreen/atmel_mxt_ts.c | 65 +++++------------------------
- 1 files changed, 12 insertions(+), 53 deletions(-)
+ drivers/input/touchscreen/atmel_mxt_ts.c | 2 --
+ 1 files changed, 0 insertions(+), 2 deletions(-)
diff --git a/drivers/input/touchscreen/atmel_mxt_ts.c b/drivers/input/touchscreen/atmel_mxt_ts.c
-index 1da814b..13ecbb4 100644
+index c422fad..309761a 100644
--- a/drivers/input/touchscreen/atmel_mxt_ts.c
+++ b/drivers/input/touchscreen/atmel_mxt_ts.c
-@@ -36,6 +36,7 @@
- #define MXT_FW_NAME "maxtouch.fw"
+@@ -236,7 +236,6 @@ struct mxt_object {
+ struct mxt_message {
+ u8 reportid;
+ u8 message[7];
+- u8 checksum;
+ };
- /* Registers */
-+#define MXT_INFO 0x00
- #define MXT_FAMILY_ID 0x00
- #define MXT_VARIANT_ID 0x01
- #define MXT_VERSION 0x02
-@@ -738,41 +739,6 @@ static void mxt_handle_pdata(struct mxt_data *data)
- }
+ struct mxt_finger {
+@@ -336,7 +335,6 @@ static void mxt_dump_message(struct device *dev,
+ dev_dbg(dev, "message5:\t0x%x\n", message->message[4]);
+ dev_dbg(dev, "message6:\t0x%x\n", message->message[5]);
+ dev_dbg(dev, "message7:\t0x%x\n", message->message[6]);
+- dev_dbg(dev, "checksum:\t0x%x\n", message->checksum);
}
--static int mxt_get_info(struct mxt_data *data)
--{
-- struct i2c_client *client = data->client;
-- struct mxt_info *info = &data->info;
-- int error;
-- u8 val;
--
-- error = mxt_read_reg(client, MXT_FAMILY_ID, 1, &val);
-- if (error)
-- return error;
-- info->family_id = val;
--
-- error = mxt_read_reg(client, MXT_VARIANT_ID, 1, &val);
-- if (error)
-- return error;
-- info->variant_id = val;
--
-- error = mxt_read_reg(client, MXT_VERSION, 1, &val);
-- if (error)
-- return error;
-- info->version = val;
--
-- error = mxt_read_reg(client, MXT_BUILD, 1, &val);
-- if (error)
-- return error;
-- info->build = val;
--
-- error = mxt_read_reg(client, MXT_OBJECT_NUM, 1, &val);
-- if (error)
-- return error;
-- info->object_num = val;
--
-- return 0;
--}
--
- static int mxt_get_object_table(struct mxt_data *data)
- {
- int error;
-@@ -808,11 +774,12 @@ static int mxt_get_object_table(struct mxt_data *data)
- static int mxt_initialize(struct mxt_data *data)
- {
- struct i2c_client *client = data->client;
-+ struct device *dev = &client->dev;
- struct mxt_info *info = &data->info;
- int error;
-- u8 val;
-
-- error = mxt_get_info(data);
-+ /* Read 7-byte info block starting at address 0 */
-+ error = mxt_read_reg(client, MXT_INFO, sizeof(*info), info);
- if (error)
- return error;
-
-@@ -847,26 +814,18 @@ static int mxt_initialize(struct mxt_data *data)
- MXT_COMMAND_RESET, 1);
- msleep(MXT_RESET_TIME);
-
-- /* Update matrix size at info struct */
-- error = mxt_read_reg(client, MXT_MATRIX_X_SIZE, 1, &val);
-- if (error)
-- return error;
-- info->matrix_xsize = val;
--
-- error = mxt_read_reg(client, MXT_MATRIX_Y_SIZE, 1, &val);
-+ /* Update matrix size, since it may have been modified by pdata */
-+ error = mxt_read_reg(client, MXT_MATRIX_X_SIZE, 2,
-+ &info->matrix_xsize);
- if (error)
- return error;
-- info->matrix_ysize = val;
-
-- dev_info(&client->dev,
-- "Family ID: %d Variant ID: %d Version: %d Build: %d\n",
-- info->family_id, info->variant_id, info->version,
-- info->build);
-+ dev_info(dev, "Family ID: %d Variant ID: %d Major.Minor.Build: %d.%d.%d\n",
-+ info->family_id, info->variant_id, info->version >> 4,
-+ info->version & 0xf, info->build);
-
-- dev_info(&client->dev,
-- "Matrix X Size: %d Matrix Y Size: %d Object Num: %d\n",
-- info->matrix_xsize, info->matrix_ysize,
-- info->object_num);
-+ dev_info(dev, "Matrix X Size: %d Matrix Y Size: %d Object Num: %d\n",
-+ info->matrix_xsize, info->matrix_ysize, info->object_num);
-
- return 0;
- }
+ static int mxt_check_bootloader(struct i2c_client *client,
--
1.7.7.3
+