svn commit: r358872 - head/sys/dev/usb/input

Hans Petter Selasky hselasky at FreeBSD.org
Wed Mar 11 08:16:16 UTC 2020


Author: hselasky
Date: Wed Mar 11 08:16:13 2020
New Revision: 358872
URL: https://svnweb.freebsd.org/changeset/base/358872

Log:
  If the USB frame length is set to 1024 bytes, WMT_BSIZE, the EETI controller
  will pack multiple touch events in the packet and the current code will only
  process the first touch event.
  
  As a result some important events are lost like releasing the finger from the
  touchscreen.
  
  Use the maximum maximum packet size as buffer size instead.
  
  Submitted by:	Oskar Holmlund <oskar.holmlund at ohdata.se>
  PR:		244718
  MFC after:	3 days
  Sponsored by:	Mellanox Technologies

Modified:
  head/sys/dev/usb/input/wmt.c

Modified: head/sys/dev/usb/input/wmt.c
==============================================================================
--- head/sys/dev/usb/input/wmt.c	Wed Mar 11 08:08:53 2020	(r358871)
+++ head/sys/dev/usb/input/wmt.c	Wed Mar 11 08:16:13 2020	(r358872)
@@ -251,7 +251,7 @@ static const struct usb_config wmt_config[WMT_N_TRANSF
 		.endpoint = UE_ADDR_ANY,
 		.direction = UE_DIR_IN,
 		.flags = { .pipe_bof = 1, .short_xfer_ok = 1 },
-		.bufsize = WMT_BSIZE,
+		.bufsize = 0,	/* use wMaxPacketSize */
 		.callback = &wmt_intr_callback,
 	},
 };


More information about the svn-src-head mailing list