diff options
Diffstat (limited to 'drivers/media/usb/uvc/uvc_driver.c')
| -rw-r--r-- | drivers/media/usb/uvc/uvc_driver.c | 42 | 
1 files changed, 40 insertions, 2 deletions
diff --git a/drivers/media/usb/uvc/uvc_driver.c b/drivers/media/usb/uvc/uvc_driver.c index 81695d48c13..ad47c5cb539 100644 --- a/drivers/media/usb/uvc/uvc_driver.c +++ b/drivers/media/usb/uvc/uvc_driver.c @@ -108,11 +108,31 @@ static struct uvc_format_desc uvc_fmts[] = {  		.fcc		= V4L2_PIX_FMT_Y16,  	},  	{ -		.name		= "RGB Bayer", +		.name		= "BGGR Bayer (BY8 )",  		.guid		= UVC_GUID_FORMAT_BY8,  		.fcc		= V4L2_PIX_FMT_SBGGR8,  	},  	{ +		.name		= "BGGR Bayer (BA81)", +		.guid		= UVC_GUID_FORMAT_BA81, +		.fcc		= V4L2_PIX_FMT_SBGGR8, +	}, +	{ +		.name		= "GBRG Bayer (GBRG)", +		.guid		= UVC_GUID_FORMAT_GBRG, +		.fcc		= V4L2_PIX_FMT_SGBRG8, +	}, +	{ +		.name		= "GRBG Bayer (GRBG)", +		.guid		= UVC_GUID_FORMAT_GRBG, +		.fcc		= V4L2_PIX_FMT_SGRBG8, +	}, +	{ +		.name		= "RGGB Bayer (RGGB)", +		.guid		= UVC_GUID_FORMAT_RGGB, +		.fcc		= V4L2_PIX_FMT_SRGGB8, +	}, +	{  		.name		= "RGB565",  		.guid		= UVC_GUID_FORMAT_RGBP,  		.fcc		= V4L2_PIX_FMT_RGB565, @@ -925,7 +945,7 @@ static int uvc_parse_standard_control(struct uvc_device *dev,  	case UVC_VC_HEADER:  		n = buflen >= 12 ? buffer[11] : 0; -		if (buflen < 12 || buflen < 12 + n) { +		if (buflen < 12 + n) {  			uvc_trace(UVC_TRACE_DESCR, "device %d videocontrol "  				"interface %d HEADER error\n", udev->devnum,  				alts->desc.bInterfaceNumber); @@ -2090,6 +2110,15 @@ static struct usb_device_id uvc_ids[] = {  	  .bInterfaceSubClass	= 1,  	  .bInterfaceProtocol	= 0,  	  .driver_info		= UVC_QUIRK_PROBE_MINMAX }, +	/* Microsoft Lifecam NX-3000 */ +	{ .match_flags		= USB_DEVICE_ID_MATCH_DEVICE +				| USB_DEVICE_ID_MATCH_INT_INFO, +	  .idVendor		= 0x045e, +	  .idProduct		= 0x0721, +	  .bInterfaceClass	= USB_CLASS_VIDEO, +	  .bInterfaceSubClass	= 1, +	  .bInterfaceProtocol	= 0, +	  .driver_info		= UVC_QUIRK_PROBE_DEF },  	/* Microsoft Lifecam VX-7000 */  	{ .match_flags		= USB_DEVICE_ID_MATCH_DEVICE  				| USB_DEVICE_ID_MATCH_INT_INFO, @@ -2174,6 +2203,15 @@ static struct usb_device_id uvc_ids[] = {  	  .bInterfaceSubClass	= 1,  	  .bInterfaceProtocol	= 0,  	  .driver_info 		= UVC_QUIRK_PROBE_DEF }, +	/* Dell SP2008WFP Monitor */ +	{ .match_flags		= USB_DEVICE_ID_MATCH_DEVICE +				| USB_DEVICE_ID_MATCH_INT_INFO, +	  .idVendor		= 0x05a9, +	  .idProduct		= 0x2641, +	  .bInterfaceClass	= USB_CLASS_VIDEO, +	  .bInterfaceSubClass	= 1, +	  .bInterfaceProtocol	= 0, +	  .driver_info 		= UVC_QUIRK_PROBE_DEF },  	/* Dell Alienware X51 */  	{ .match_flags		= USB_DEVICE_ID_MATCH_DEVICE  				| USB_DEVICE_ID_MATCH_INT_INFO,  | 
