svn commit: r361917 - stable/9/sys/netgraph/bluetooth/drivers/ubt

Hans Petter Selasky hselasky at FreeBSD.org
Mon Jun 8 09:31:52 UTC 2020


Author: hselasky
Date: Mon Jun  8 09:31:52 2020
New Revision: 361917
URL: https://svnweb.freebsd.org/changeset/base/361917

Log:
  MFC r361582:
  Fix check for wMaxPacketSize in USB bluetooth driver,
  in case device is not FULL speed.
  
  Sponsored by:	Mellanox Technologies

Modified:
  stable/9/sys/netgraph/bluetooth/drivers/ubt/ng_ubt.c
Directory Properties:
  stable/9/sys/   (props changed)

Modified: stable/9/sys/netgraph/bluetooth/drivers/ubt/ng_ubt.c
==============================================================================
--- stable/9/sys/netgraph/bluetooth/drivers/ubt/ng_ubt.c	Mon Jun  8 09:31:14 2020	(r361916)
+++ stable/9/sys/netgraph/bluetooth/drivers/ubt/ng_ubt.c	Mon Jun  8 09:31:52 2020	(r361917)
@@ -506,7 +506,7 @@ ubt_attach(device_t dev)
 	struct ubt_softc		*sc = device_get_softc(dev);
 	struct usb_endpoint_descriptor	*ed;
 	struct usb_interface_descriptor *id;
-	uint16_t			wMaxPacketSize;
+	uint32_t			wMaxPacketSize;
 	uint8_t				alt_index, i, j;
 	uint8_t				iface_index[2] = { 0, 1 };
 
@@ -596,9 +596,10 @@ ubt_attach(device_t dev)
 		if ((ed->bDescriptorType == UDESC_ENDPOINT) &&
 		    (ed->bLength >= sizeof(*ed)) &&
 		    (i == 1)) {
-			uint16_t temp;
+			uint32_t temp;
 
-			temp = UGETW(ed->wMaxPacketSize);
+			temp = usbd_get_max_frame_length(
+			    ed, NULL, usbd_get_speed(uaa->device));
 			if (temp > wMaxPacketSize) {
 				wMaxPacketSize = temp;
 				alt_index = j;


More information about the svn-src-stable-9 mailing list