Thread (4 messages) 4 messages, 2 authors, 2020-07-22

RE: [PATCH 1/3] Input: elan_i2c - Do no operation for elan_smbus_set_mode function

From: Dave.Wang <hidden>
Date: 2020-07-22 02:29:42
Also in: lkml

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@gmail.com] 
Sent: Wednesday, July 22, 2020 12:13 AM
To: Dave Wang <redacted>
Cc: Linux-input@vger.kernel.org; Linux-kernel@vger.kernel.org;
phoenix@emc.com.tw; josh.chen@emc.com.tw; jingle.wu@emc.com.tw;
kai.heng.feng@canonical.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?
quoted hunk ↗ jump to hunk
Signed-off-by: Dave Wang <redacted>
---
 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
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help