2022-08-12 19:43:27

by Dmitry Torokhov

[permalink] [raw]
Subject: Re: [PATCH V2] Input: synaptics-rmi4 - filter incomplete relative packet.

Hi Marge,

On Fri, Aug 12, 2022 at 04:43:25PM +0800, margeyang wrote:
> From: Marge Yang <[email protected]>
>
> RMI4 F03 supports the Stick function,
> it's designed to support relative packet.
> This patch supports the following case.
> When relative packet can't be reported completely,
> it may miss one byte or two byte.
> New Synaptics firmware will report PARITY error.
> When timeout error or parity error happens,
> RMI4 driver will sends 0xFE command and
> ask FW to Re-send stick packet again.

My understanding is that F03 is intended to be a pass-through mechanism
for PS/2-compatible devices. In that spirit all protocol handling and
validation should happen in psmouse driver that attaches to a serio port
provided by F03.

Historically we did not pay attention to parity and frame errors for
PS/2 mice/touchpads (and for keyboards on x86) but we coudl add such
code there. Do we actually observe this with RMI devices? Can RMI
firmware handle this better instead?

Thanks.

--
Dmitry


2022-08-15 07:16:20

by Marge Yang

[permalink] [raw]
Subject: RE: [PATCH V2] Input: synaptics-rmi4 - filter incomplete relative packet.

Add Synaptics firmware member

Hi Dmitry,
Update Synaptics firmware's comment.
[Wayne 08/15]
To address the transaction error case in the middle would potential lead to the unexpected data transaction and latency between styk device and host driver. F$03 didn't really parse any data packet but simply works as bridge functionality to bypass the command and response packets between styk device and driver.

Thanks
Marge Yang

-----Original Message-----
From: Dmitry Torokhov <[email protected]>
Sent: Saturday, August 13, 2022 3:28 AM
To: margeyang <[email protected]>
Cc: [email protected]; [email protected]; [email protected]; [email protected]; Marge Yang <[email protected]>; Derek Cheng <[email protected]>; Vincent Huang <[email protected]>
Subject: Re: [PATCH V2] Input: synaptics-rmi4 - filter incomplete relative packet.

CAUTION: Email originated externally, do not click links or open attachments unless you recognize the sender and know the content is safe.


Hi Marge,

On Fri, Aug 12, 2022 at 04:43:25PM +0800, margeyang wrote:
> From: Marge Yang <[email protected]>
>
> RMI4 F03 supports the Stick function,
> it's designed to support relative packet.
> This patch supports the following case.
> When relative packet can't be reported completely, it may miss one
> byte or two byte.
> New Synaptics firmware will report PARITY error.
> When timeout error or parity error happens,
> RMI4 driver will sends 0xFE command and ask FW to Re-send stick packet
> again.

My understanding is that F03 is intended to be a pass-through mechanism for PS/2-compatible devices. In that spirit all protocol handling and validation should happen in psmouse driver that attaches to a serio port provided by F03.

Historically we did not pay attention to parity and frame errors for
PS/2 mice/touchpads (and for keyboards on x86) but we coudl add such code there. Do we actually observe this with RMI devices? Can RMI firmware handle this better instead?

Thanks.

--
Dmitry

2022-08-30 10:14:29

by Marge Yang

[permalink] [raw]
Subject: RE: [PATCH V2] Input: synaptics-rmi4 - filter incomplete relative packet.

Hi Dmitry,
May I know if you have any concerns about FW's feedback?

Thanks
Marge Yang

-----Original Message-----
From: Marge Yang
Sent: Monday, August 15, 2022 2:50 PM
To: Dmitry Torokhov <[email protected]>; margeyang <[email protected]>; Wayne Chang <[email protected]>; Marge Yang <[email protected]>
Cc: [email protected]; [email protected]; [email protected]; [email protected]; Kevin Chu <[email protected]>; Derek Cheng <[email protected]>; Vincent Huang <[email protected]>; Carl Yang <[email protected]>; Ian Lu <[email protected]>; Darren Kang <[email protected]>
Subject: RE: [PATCH V2] Input: synaptics-rmi4 - filter incomplete relative packet.

Add Synaptics firmware member

Hi Dmitry,
Update Synaptics firmware's comment.
[Wayne 08/15]
To address the transaction error case in the middle would potential lead to the unexpected data transaction and latency between styk device and host driver. F$03 didn't really parse any data packet but simply works as bridge functionality to bypass the command and response packets between styk device and driver.

Thanks
Marge Yang

-----Original Message-----
From: Dmitry Torokhov <[email protected]>
Sent: Saturday, August 13, 2022 3:28 AM
To: margeyang <[email protected]>
Cc: [email protected]; [email protected]; [email protected]; [email protected]; Marge Yang <[email protected]>; Derek Cheng <[email protected]>; Vincent Huang <[email protected]>
Subject: Re: [PATCH V2] Input: synaptics-rmi4 - filter incomplete relative packet.

CAUTION: Email originated externally, do not click links or open attachments unless you recognize the sender and know the content is safe.


Hi Marge,

On Fri, Aug 12, 2022 at 04:43:25PM +0800, margeyang wrote:
> From: Marge Yang <[email protected]>
>
> RMI4 F03 supports the Stick function,
> it's designed to support relative packet.
> This patch supports the following case.
> When relative packet can't be reported completely, it may miss one
> byte or two byte.
> New Synaptics firmware will report PARITY error.
> When timeout error or parity error happens,
> RMI4 driver will sends 0xFE command and ask FW to Re-send stick packet
> again.

My understanding is that F03 is intended to be a pass-through mechanism for PS/2-compatible devices. In that spirit all protocol handling and validation should happen in psmouse driver that attaches to a serio port provided by F03.

Historically we did not pay attention to parity and frame errors for
PS/2 mice/touchpads (and for keyboards on x86) but we coudl add such code there. Do we actually observe this with RMI devices? Can RMI firmware handle this better instead?

Thanks.

--
Dmitry