From: Dmitry Torokhov <dmitry.torokhov@gmail.com>
To: Alistair Francis <alistair@alistair23.me>
Cc: linux-input@vger.kernel.org, linux-kernel@vger.kernel.org,
alistair23@gmail.com
Subject: Re: [PATCH v2] Input: wacom_i2c - Clean up the query device fields
Date: Thu, 6 Jun 2024 14:23:24 -0700 [thread overview]
Message-ID: <ZmIozAu-R1nbRYHF@google.com> (raw)
In-Reply-To: <20211118123545.102872-1-alistair@alistair23.me>
Hi Alistair,
On Thu, Nov 18, 2021 at 10:35:45PM +1000, Alistair Francis wrote:
> Improve the query device fields to be more verbose.
>
> Signed-off-by: Alistair Francis <alistair@alistair23.me>
Could you please list what has changed since v1?
> ---
> drivers/input/touchscreen/wacom_i2c.c | 45 ++++++++++++++++-----------
> 1 file changed, 27 insertions(+), 18 deletions(-)
>
> diff --git a/drivers/input/touchscreen/wacom_i2c.c b/drivers/input/touchscreen/wacom_i2c.c
> index fe4ea6204a4e..50d159919bd1 100644
> --- a/drivers/input/touchscreen/wacom_i2c.c
> +++ b/drivers/input/touchscreen/wacom_i2c.c
> @@ -23,13 +23,20 @@
> #define WACOM_BARREL_SWITCH_2 BIT(4)
> #define WACOM_IN_PROXIMITY BIT(5)
>
> -/* Registers */
> -#define WACOM_CMD_QUERY0 0x04
> -#define WACOM_CMD_QUERY1 0x00
> -#define WACOM_CMD_QUERY2 0x33
> -#define WACOM_CMD_QUERY3 0x02
> -#define WACOM_CMD_THROW0 0x05
> -#define WACOM_CMD_THROW1 0x00
> +// Registers
I am partial to C-style comments, let's keep them.
> +#define WACOM_COMMAND_LSB 0x04
> +#define WACOM_COMMAND_MSB 0x00
> +
> +#define WACOM_DATA_LSB 0x05
> +#define WACOM_DATA_MSB 0x00
> +
> +// Report types
> +#define REPORT_FEATURE 0x30
> +
> +// Requests / operations
> +#define OPCODE_GET_REPORT 0x02
> +
> +#define WACOM_QUERY_REPORT 3
> #define WACOM_QUERY_SIZE 19
>
> struct wacom_features {
> @@ -51,22 +58,24 @@ static int wacom_query_device(struct i2c_client *client,
> struct wacom_features *features)
> {
> int ret;
> - u8 cmd1[] = { WACOM_CMD_QUERY0, WACOM_CMD_QUERY1,
> - WACOM_CMD_QUERY2, WACOM_CMD_QUERY3 };
> - u8 cmd2[] = { WACOM_CMD_THROW0, WACOM_CMD_THROW1 };
> u8 data[WACOM_QUERY_SIZE];
> +
> + u8 get_query_data_cmd[] = {
> + WACOM_COMMAND_LSB,
> + WACOM_COMMAND_MSB,
> + REPORT_FEATURE | WACOM_QUERY_REPORT,
> + OPCODE_GET_REPORT,
> + WACOM_DATA_LSB,
> + WACOM_DATA_MSB,
> + };
> +
> struct i2c_msg msgs[] = {
> + // Request reading of feature ReportID: 3 (Pen Query Data)
> {
> .addr = client->addr,
> .flags = 0,
> - .len = sizeof(cmd1),
> - .buf = cmd1,
> - },
> - {
> - .addr = client->addr,
> - .flags = 0,
> - .len = sizeof(cmd2),
> - .buf = cmd2,
> + .len = sizeof(get_query_data_cmd),
> + .buf = get_query_data_cmd,
This combines writes into one message. Is this safe and works for all
devices? At the very least this needs to be mentioned in the patch
description.
> },
> {
> .addr = client->addr,
> --
> 2.31.1
>
Thanks.
--
Dmitry
next prev parent reply other threads:[~2024-06-06 21:23 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-11-18 12:35 [PATCH v2] Input: wacom_i2c - Clean up the query device fields Alistair Francis
2024-06-06 21:23 ` Dmitry Torokhov [this message]
2024-06-06 21:25 ` Dmitry Torokhov
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=ZmIozAu-R1nbRYHF@google.com \
--to=dmitry.torokhov@gmail.com \
--cc=alistair23@gmail.com \
--cc=alistair@alistair23.me \
--cc=linux-input@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.