[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <002601d65fce$8a0148d0$9e03da70$@emc.com.tw>
Date: Wed, 22 Jul 2020 10:19:33 +0800
From: "Dave.Wang" <dave.wang@....com.tw>
To: "'Dmitry Torokhov'" <dmitry.torokhov@...il.com>
Cc: <Linux-input@...r.kernel.org>, <Linux-kernel@...r.kernel.org>,
<phoenix@....com.tw>, <josh.chen@....com.tw>,
<jingle.wu@....com.tw>, <kai.heng.feng@...onical.com>
Subject: RE: [PATCH 1/3] Input: elan_i2c - Do no operation for elan_smbus_set_mode function
Dear Dmitry,
Are there devices that do not trigger errors?
=> Yes, there exist devices that would act normally. However, our team
cannot organize the rule to recognize which devices could trigger this
command without error.
What I sure about is that some devices would get TP no function while
triggering this command.
Besides, ABS mode had been set in P/S2 protocol, so there is no need to set
ABS mode again in SMBUS driver.
How do we put SMbus devices into low power mode?
=> As far as I am concerned, core.c only set the mode into ABS mode or
ENABLE_CALIBRATE mode after updating firmware.
I don't know what or when to set SMbus devices into low power mode.
Best regards,
Dave
-----Original Message-----
From: Dmitry Torokhov [mailto:dmitry.torokhov@...il.com]
Sent: Wednesday, July 22, 2020 12:13 AM
To: Dave Wang <dave.wang@....com.tw>
Cc: Linux-input@...r.kernel.org; Linux-kernel@...r.kernel.org;
phoenix@....com.tw; josh.chen@....com.tw; jingle.wu@....com.tw;
kai.heng.feng@...onical.com
Subject: Re: [PATCH 1/3] Input: elan_i2c - Do no operation for
elan_smbus_set_mode function
Hi Dave,
On Mon, Dec 09, 2019 at 06:11:07AM -0500, Dave Wang wrote:
> Some touchpads might get error while triggerring the set_mode command
> in SMBus interface. Do no operation for elan_smbus_set_mode function.
Are there devices that do not trigger errors? How do we put SMbus devices
into low power mode?
>
> Signed-off-by: Dave Wang <dave.wang@....com.tw>
> ---
> drivers/input/mouse/elan_i2c_smbus.c | 5 +----
> 1 file changed, 1 insertion(+), 4 deletions(-)
>
> diff --git a/drivers/input/mouse/elan_i2c_smbus.c
> b/drivers/input/mouse/elan_i2c_smbus.c
> index 8c3185d54c73..bcb9ec4a7a6b 100644
> --- a/drivers/input/mouse/elan_i2c_smbus.c
> +++ b/drivers/input/mouse/elan_i2c_smbus.c
> @@ -84,10 +84,7 @@ static int elan_smbus_initialize(struct i2c_client
> *client)
>
> static int elan_smbus_set_mode(struct i2c_client *client, u8 mode) {
> - u8 cmd[4] = { 0x00, 0x07, 0x00, mode };
> -
> - return i2c_smbus_write_block_data(client, ETP_SMBUS_IAP_CMD,
> - sizeof(cmd), cmd);
> + return 0; /* A no-op */
> }
>
> static int elan_smbus_sleep_control(struct i2c_client *client, bool
> sleep)
> --
> 2.17.1
>
Thanks.
--
Dmitry
Powered by blists - more mailing lists