Commit fafc6638 authored by Alistair Francis's avatar Alistair Francis Committed by Dmitry Torokhov

Input: wacom_i2c - clean up the query device fields

Improve the query device fields to be more verbose.
Signed-off-by: default avatarAlistair Francis <alistair@alistair23.me>
Link: https://lore.kernel.org/r/20211118123545.102872-1-alistair@alistair23.meSigned-off-by: default avatarDmitry Torokhov <dmitry.torokhov@gmail.com>
parent b7b2b49e
...@@ -24,12 +24,19 @@ ...@@ -24,12 +24,19 @@
#define WACOM_IN_PROXIMITY BIT(5) #define WACOM_IN_PROXIMITY BIT(5)
/* Registers */ /* Registers */
#define WACOM_CMD_QUERY0 0x04 #define WACOM_COMMAND_LSB 0x04
#define WACOM_CMD_QUERY1 0x00 #define WACOM_COMMAND_MSB 0x00
#define WACOM_CMD_QUERY2 0x33
#define WACOM_CMD_QUERY3 0x02 #define WACOM_DATA_LSB 0x05
#define WACOM_CMD_THROW0 0x05 #define WACOM_DATA_MSB 0x00
#define WACOM_CMD_THROW1 0x00
/* Report types */
#define REPORT_FEATURE 0x30
/* Requests / operations */
#define OPCODE_GET_REPORT 0x02
#define WACOM_QUERY_REPORT 3
#define WACOM_QUERY_SIZE 19 #define WACOM_QUERY_SIZE 19
struct wacom_features { struct wacom_features {
...@@ -50,23 +57,24 @@ struct wacom_i2c { ...@@ -50,23 +57,24 @@ struct wacom_i2c {
static int wacom_query_device(struct i2c_client *client, static int wacom_query_device(struct i2c_client *client,
struct wacom_features *features) struct wacom_features *features)
{ {
int ret; u8 get_query_data_cmd[] = {
u8 cmd1[] = { WACOM_CMD_QUERY0, WACOM_CMD_QUERY1, WACOM_COMMAND_LSB,
WACOM_CMD_QUERY2, WACOM_CMD_QUERY3 }; WACOM_COMMAND_MSB,
u8 cmd2[] = { WACOM_CMD_THROW0, WACOM_CMD_THROW1 }; REPORT_FEATURE | WACOM_QUERY_REPORT,
OPCODE_GET_REPORT,
WACOM_DATA_LSB,
WACOM_DATA_MSB,
};
u8 data[WACOM_QUERY_SIZE]; u8 data[WACOM_QUERY_SIZE];
int ret;
struct i2c_msg msgs[] = { struct i2c_msg msgs[] = {
/* Request reading of feature ReportID: 3 (Pen Query Data) */
{ {
.addr = client->addr, .addr = client->addr,
.flags = 0, .flags = 0,
.len = sizeof(cmd1), .len = sizeof(get_query_data_cmd),
.buf = cmd1, .buf = get_query_data_cmd,
},
{
.addr = client->addr,
.flags = 0,
.len = sizeof(cmd2),
.buf = cmd2,
}, },
{ {
.addr = client->addr, .addr = client->addr,
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment