Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 12 Jul 2007 19:18:15 GMT
From:      Rui Paulo <rpaulo@FreeBSD.org>
To:        Perforce Change Reviews <perforce@FreeBSD.org>
Subject:   PERFORCE change 123399 for review
Message-ID:  <200707121918.l6CJIFkI094946@repoman.freebsd.org>

next in thread | raw e-mail | index | archive | help
http://perforce.freebsd.org/chv.cgi?CH=123399

Change 123399 by rpaulo@rpaulo_epsilon on 2007/07/12 19:18:01

	For some reason, moused confuses sysmouse after attaching to the
	HID version of the MacBook Bluetooth device.
	For now, blacklist the product id of the Bluetooth controller
	(in HID mode) inside ums(4).

Affected files ...

.. //depot/projects/soc2007/rpaulo-macbook/dev/usb/ums.c#13 edit
.. //depot/projects/soc2007/rpaulo-macbook/dev/usb/usb_quirks.c#7 edit
.. //depot/projects/soc2007/rpaulo-macbook/dev/usb/usb_quirks.h#8 edit
.. //depot/projects/soc2007/rpaulo-macbook/dev/usb/usbdevs#16 edit

Differences ...

==== //depot/projects/soc2007/rpaulo-macbook/dev/usb/ums.c#13 (text+ko) ====

@@ -198,6 +198,9 @@
 	if (err)
 		return (UMATCH_NONE);
 
+	if (usbd_get_quirks(uaa->device)->uq_flags & UQ_MS_IGNORE)
+		return (UMATCH_NONE);
+
 	if (id->bInterfaceClass == UICLASS_HID &&
 	    id->bInterfaceSubClass == UISUBCLASS_BOOT &&
 	    id->bInterfaceProtocol == UIPROTO_MOUSE)

==== //depot/projects/soc2007/rpaulo-macbook/dev/usb/usb_quirks.c#7 (text+ko) ====

@@ -111,6 +111,10 @@
  /* Devices that need special handling of the Fn key */
  { USB_VENDOR_APPLE, USB_PRODUCT_APPLE_INTKBTP,
 	ANY, { UQ_KBD_FNKEY } },
+
+ { USB_VENDOR_APPLE, USB_PRODUCT_APPLE_BLUETOOTH_HID,
+	ANY, { UQ_MS_IGNORE } },
+
  { 0, 0, 0, { 0 } }
 };
 

==== //depot/projects/soc2007/rpaulo-macbook/dev/usb/usb_quirks.h#8 (text+ko) ====

@@ -58,6 +58,7 @@
 #define	UQ_MS_BAD_CLASS 0x00020000 /* doesn't identify properly */
 #define	UQ_MS_LEADING_BYTE 0x40000 /* mouse sends an unknown leading byte. */
 #define UQ_KBD_FNKEY	0x00080000 /* device needs special handling for the Fn key */
+#define UQ_MS_IGNORE	0x00100000 /* device should be ignored by ums */
 };
 
 extern const struct usbd_quirks usbd_no_quirk;

==== //depot/projects/soc2007/rpaulo-macbook/dev/usb/usbdevs#16 (text+ko) ====

@@ -823,6 +823,7 @@
 
 /* Apple Computer products */
 product APPLE OPTMOUSE		0x0302	Optical mouse
+product APPLE BLUETOOTH_HID	0x1000	Bluetooth (HID mode)
 product APPLE SPEAKERS		0x1101	Speakers
 product APPLE IPOD		0x1201	iPod
 product APPLE IPOD2G		0x1202	iPod 2G



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200707121918.l6CJIFkI094946>