Message ID | 20200312005549.29922-1-aduggan@synaptics.com (mailing list archive) |
---|---|
State | Mainlined |
Commit | e4ad153ac8274291d21f13e98422821db4d590b9 |
Headers | show |
Series | Input: synaptics-rmi4 - Do not set reduced reporting mode thresholds are not set by the driver | expand |
Hi Andrew, On Wed, Mar 11, 2020 at 05:55:49PM -0700, Andrew Duggan wrote: > The previous patch "c5ccf2ad3d33 (Input: synaptics-rmi4 - switch to > reduced reporting mode)" enabled reduced reporting mode unintentionally > on some devices, if the firmware was configured with default Delta X/Y > threshold values. The result unintentionally degrade the performance of > some touchpads. could this be the cause of a stuttering cursor on a P50 as well? A recording in the issue below shows the cursor moving by ~25 units per event, regardless of the time between those events. https://gitlab.freedesktop.org/libinput/libinput/issues/448 thanks! Cheers, Peter > This patch checks to see that the driver is modifying the delta X/Y > thresholds before modifying the reporting mode. > > Signed-off-by: Andrew Duggan <aduggan@synaptics.com> > --- > drivers/input/rmi4/rmi_f11.c | 4 ++-- > 1 file changed, 2 insertions(+), 2 deletions(-) > > diff --git a/drivers/input/rmi4/rmi_f11.c b/drivers/input/rmi4/rmi_f11.c > index 6adea8a3e8fb..ffa39ab153f2 100644 > --- a/drivers/input/rmi4/rmi_f11.c > +++ b/drivers/input/rmi4/rmi_f11.c > @@ -1203,8 +1203,8 @@ static int rmi_f11_initialize(struct rmi_function *fn) > * If distance threshold values are set, switch to reduced reporting > * mode so they actually get used by the controller. > */ > - if (ctrl->ctrl0_11[RMI_F11_DELTA_X_THRESHOLD] || > - ctrl->ctrl0_11[RMI_F11_DELTA_Y_THRESHOLD]) { > + if (sensor->axis_align.delta_x_threshold || > + sensor->axis_align.delta_y_threshold) { > ctrl->ctrl0_11[0] &= ~RMI_F11_REPORT_MODE_MASK; > ctrl->ctrl0_11[0] |= RMI_F11_REPORT_MODE_REDUCED; > } > -- > 2.20.1 >
Hi Peter, On Do, 2020-03-12 at 13:14 +1000, Peter Hutterer wrote: > Hi Andrew, > > On Wed, Mar 11, 2020 at 05:55:49PM -0700, Andrew Duggan wrote: > > The previous patch "c5ccf2ad3d33 (Input: synaptics-rmi4 - switch to > > reduced reporting mode)" enabled reduced reporting mode > > unintentionally > > on some devices, if the firmware was configured with default Delta > > X/Y > > threshold values. The result unintentionally degrade the > > performance of > > some touchpads. > > could this be the cause of a stuttering cursor on a P50 as well? > A recording in the issue below shows the cursor moving by ~25 units per > event, regardless of the time between those events. > https://gitlab.freedesktop.org/libinput/libinput/issues/448 Yes, that's very much possible, as reduced reporting mode is about only reporting events once they cross a predefined movement threshold. Regards, Lucas > thanks! > > Cheers, > Peter > > > This patch checks to see that the driver is modifying the delta X/Y > > thresholds before modifying the reporting mode. > > > > Signed-off-by: Andrew Duggan <aduggan@synaptics.com> > > --- > > drivers/input/rmi4/rmi_f11.c | 4 ++-- > > 1 file changed, 2 insertions(+), 2 deletions(-) > > > > diff --git a/drivers/input/rmi4/rmi_f11.c > > b/drivers/input/rmi4/rmi_f11.c > > index 6adea8a3e8fb..ffa39ab153f2 100644 > > --- a/drivers/input/rmi4/rmi_f11.c > > +++ b/drivers/input/rmi4/rmi_f11.c > > @@ -1203,8 +1203,8 @@ static int rmi_f11_initialize(struct > > rmi_function *fn) > > * If distance threshold values are set, switch to reduced > > reporting > > * mode so they actually get used by the controller. > > */ > > - if (ctrl->ctrl0_11[RMI_F11_DELTA_X_THRESHOLD] || > > - ctrl->ctrl0_11[RMI_F11_DELTA_Y_THRESHOLD]) { > > + if (sensor->axis_align.delta_x_threshold || > > + sensor->axis_align.delta_y_threshold) { > > ctrl->ctrl0_11[0] &= ~RMI_F11_REPORT_MODE_MASK; > > ctrl->ctrl0_11[0] |= RMI_F11_REPORT_MODE_REDUCED; > > } > > -- > > 2.20.1 > >
On Wed, Mar 11, 2020 at 05:55:49PM -0700, Andrew Duggan wrote: > The previous patch "c5ccf2ad3d33 (Input: synaptics-rmi4 - switch to > reduced reporting mode)" enabled reduced reporting mode unintentionally > on some devices, if the firmware was configured with default Delta X/Y > threshold values. The result unintentionally degrade the performance of > some touchpads. > > This patch checks to see that the driver is modifying the delta X/Y > thresholds before modifying the reporting mode. > > Signed-off-by: Andrew Duggan <aduggan@synaptics.com> Applied, thank you. > --- > drivers/input/rmi4/rmi_f11.c | 4 ++-- > 1 file changed, 2 insertions(+), 2 deletions(-) > > diff --git a/drivers/input/rmi4/rmi_f11.c b/drivers/input/rmi4/rmi_f11.c > index 6adea8a3e8fb..ffa39ab153f2 100644 > --- a/drivers/input/rmi4/rmi_f11.c > +++ b/drivers/input/rmi4/rmi_f11.c > @@ -1203,8 +1203,8 @@ static int rmi_f11_initialize(struct rmi_function *fn) > * If distance threshold values are set, switch to reduced reporting > * mode so they actually get used by the controller. > */ > - if (ctrl->ctrl0_11[RMI_F11_DELTA_X_THRESHOLD] || > - ctrl->ctrl0_11[RMI_F11_DELTA_Y_THRESHOLD]) { > + if (sensor->axis_align.delta_x_threshold || > + sensor->axis_align.delta_y_threshold) { > ctrl->ctrl0_11[0] &= ~RMI_F11_REPORT_MODE_MASK; > ctrl->ctrl0_11[0] |= RMI_F11_REPORT_MODE_REDUCED; > } > -- > 2.20.1 >
diff --git a/drivers/input/rmi4/rmi_f11.c b/drivers/input/rmi4/rmi_f11.c index 6adea8a3e8fb..ffa39ab153f2 100644 --- a/drivers/input/rmi4/rmi_f11.c +++ b/drivers/input/rmi4/rmi_f11.c @@ -1203,8 +1203,8 @@ static int rmi_f11_initialize(struct rmi_function *fn) * If distance threshold values are set, switch to reduced reporting * mode so they actually get used by the controller. */ - if (ctrl->ctrl0_11[RMI_F11_DELTA_X_THRESHOLD] || - ctrl->ctrl0_11[RMI_F11_DELTA_Y_THRESHOLD]) { + if (sensor->axis_align.delta_x_threshold || + sensor->axis_align.delta_y_threshold) { ctrl->ctrl0_11[0] &= ~RMI_F11_REPORT_MODE_MASK; ctrl->ctrl0_11[0] |= RMI_F11_REPORT_MODE_REDUCED; }
The previous patch "c5ccf2ad3d33 (Input: synaptics-rmi4 - switch to reduced reporting mode)" enabled reduced reporting mode unintentionally on some devices, if the firmware was configured with default Delta X/Y threshold values. The result unintentionally degrade the performance of some touchpads. This patch checks to see that the driver is modifying the delta X/Y thresholds before modifying the reporting mode. Signed-off-by: Andrew Duggan <aduggan@synaptics.com> --- drivers/input/rmi4/rmi_f11.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-)