Skip to contentSkip to conversation

uvcvideo: add support for Oculus Rift Sensor

PATCH In review Philipp Zabel 2 participants 3 messages Nov 7, 2016 – Nov 11, 2016

Subsystems (2)
lore
Share & tools
lore
#0 lore raw

PATCH 1/1 uvcvideo: add support for Oculus Rift Sensor

The Rift CV1 Sensor has bInterfaceClass set to vendor specific, so we need an entry in uvc_ids to probe it. Just as the Rift DK2 IR tracker, it misreports the pixel format as YUYV instead of Y8.

The sensor is configured with a low exposure time and high black level by default, so that only bright IR sources can be seen.

---
 drivers/media/usb/uvc/uvc_driver.c | 9 +++++++++
 1 file changed, 9 insertions(+)
drivers/media/usb/uvc/uvc_driver.c +9 -0
index 0eaa9a9..b64bfe4 100644
@@ -2583,6 +2583,15 @@ static struct usb_device_id uvc_ids[] = {
 	  .bInterfaceSubClass	= 1,
 	  .bInterfaceProtocol	= 0,
 	  .driver_info		= UVC_QUIRK_FORCE_Y8 },
+	/* Oculus VR Rift Sensor */
+	{ .match_flags		= USB_DEVICE_ID_MATCH_DEVICE
+				| USB_DEVICE_ID_MATCH_INT_INFO,
+	  .idVendor		= 0x2833,
+	  .idProduct		= 0x0211,
+	  .bInterfaceClass	= USB_CLASS_VENDOR_SPEC,
+	  .bInterfaceSubClass	= 1,
+	  .bInterfaceProtocol	= 0,
+	  .driver_info		= UVC_QUIRK_FORCE_Y8 },
 	/* Leap Motion Controller LM-010 */
 	{ .match_flags		= USB_DEVICE_ID_MATCH_DEVICE
 				| USB_DEVICE_ID_MATCH_INT_INFO,
Signature · 1 line
2.10.2
maintainer Acked-by on v1 1/1
#1 lore raw

Hi Philipp,

Thank you for the patch.

Quoted 8 lines · On Monday 07 Nov 2016 21:15:47 Philipp Zabel wrote:

The Rift CV1 Sensor has bInterfaceClass set to vendor specific, so we need an entry in uvc_ids to probe it. Just as the Rift DK2 IR tracker, it misreports the pixel format as YUYV instead of Y8.

The sensor is configured with a low exposure time and high black level by default, so that only bright IR sources can be seen.

and applied to my tree, after fixing the conflict (see below).

Quoted 12 lines
---
 drivers/media/usb/uvc/uvc_driver.c | 9 +++++++++
 1 file changed, 9 insertions(+)
(quoted diff) +0 -0

b/drivers/media/usb/uvc/uvc_driver.c index 0eaa9a9..b64bfe4 100644

drivers/media/usb/uvc/uvc_driver.c +0 -0
@@ -2583,6 +2583,15 @@ static struct usb_device_id uvc_ids[] = {
 	  .bInterfaceSubClass	= 1,
 	  .bInterfaceProtocol	= 0,
 	  .driver_info		= UVC_QUIRK_FORCE_Y8 },

drivers/media/usb/uvc/uvc_driver.c static struct usb_device_id uvc_ids[] = { · line 2595

Quoted 10 lines
drivers/media/usb/uvc/uvc_driver.c +9 -0
+	/* Oculus VR Rift Sensor */
+	{ .match_flags		= USB_DEVICE_ID_MATCH_DEVICE
+				| USB_DEVICE_ID_MATCH_INT_INFO,
+	  .idVendor		= 0x2833,
+	  .idProduct		= 0x0211,
+	  .bInterfaceClass	= USB_CLASS_VENDOR_SPEC,
+	  .bInterfaceSubClass	= 1,
+	  .bInterfaceProtocol	= 0,
+	  .driver_info		= UVC_QUIRK_FORCE_Y8 },
 	/* Leap Motion Controller LM-010 */

That's not in mainline, where does it come from ?

Quoted 3 lines
drivers/media/usb/uvc/uvc_driver.c +0 -0
 	{ .match_flags		= USB_DEVICE_ID_MATCH_DEVICE
 

| USB_DEVICE_ID_MATCH_INT_INFO,

Signature · 3 lines
Regards,

Laurent Pinchart
#2 lore raw

Hi Laurent,

Quoted 3 lines · Laurent Pinchart

Hi Philipp,

Thank you for the patch.

[...]

Quoted 3 lines

and applied to my tree, after fixing the conflict (see below).

Thank you, sorry for the inconvenience.
I got excited to share this patch with Thibaut and forgot to properly rebase it.

Quoted 3 lines
Quoted 1 line
      /* Leap Motion Controller LM-010 */

That's not in mainline, where does it come from ?

That is also from my local branch of quirky USB cameras.

regards
Philipp