Index: uvc_ctrl.c
===================================================================
--- uvc_ctrl.c	(revision 132)
+++ uvc_ctrl.c	(working copy)
@@ -164,6 +164,24 @@
 		.flags		= UVC_CONTROL_SET_CUR | UVC_CONTROL_GET_RANGE
 				| UVC_CONTROL_RESTORE,
 	},
+	{
+		.entity		= UVC_GUID_LOGITECH_VIDEO,
+		.selector	= LXU_COLOR_PROCESSING_DISABLE_CONTROL,
+		.index		= LXU_COLOR_PROCESSING_DISABLE_CONTROL - 1,
+		.size		= 1,
+		.flags		= UVC_CONTROL_SET_CUR | UVC_CONTROL_GET_MIN
+				| UVC_CONTROL_GET_MAX | UVC_CONTROL_GET_RES
+				| UVC_CONTROL_GET_DEF,
+	},
+	{
+		.entity		= UVC_GUID_LOGITECH_VIDEO,
+		.selector	= LXU_RAW_DATA_BIT_PER_PIXEL_CONTROL,
+		.index		= LXU_RAW_DATA_BIT_PER_PIXEL_CONTROL - 1,
+		.size		= 1,
+		.flags		= UVC_CONTROL_SET_CUR | UVC_CONTROL_GET_MIN
+				| UVC_CONTROL_GET_MAX | UVC_CONTROL_GET_RES
+				| UVC_CONTROL_GET_DEF,
+	},
 };
 
 static struct uvc_menu_info power_line_frequency_controls[] = {
@@ -335,6 +353,26 @@
 		.v4l2_type	= V4L2_CTRL_TYPE_BOOLEAN,
 		.data_type	= UVC_CTRL_DATA_TYPE_BOOLEAN,
 	},
+	{
+		.id		= V4L2_CID_DISABLE_COLOR_PROCESSING,
+		.name		= "Disable Color Processing",
+		.entity		= UVC_GUID_LOGITECH_VIDEO,
+		.selector	= LXU_COLOR_PROCESSING_DISABLE_CONTROL,
+		.size		= 8,
+		.offset		= 0,
+		.v4l2_type	= V4L2_CTRL_TYPE_BOOLEAN,
+		.data_type	= UVC_CTRL_DATA_TYPE_BOOLEAN,
+	},
+	{
+		.id		= V4L2_CID_RAW_DATA_BITS_PER_PIXEL,
+		.name		= "Raw data: Bits per pixel",
+		.entity		= UVC_GUID_LOGITECH_VIDEO,
+		.selector	= LXU_RAW_DATA_BIT_PER_PIXEL_CONTROL,
+		.size		= 8,
+		.offset		= 0,
+		.v4l2_type	= V4L2_CTRL_TYPE_INTEGER,
+		.data_type	= UVC_CTRL_DATA_TYPE_UNSIGNED,
+	},
 };
 
 /* ------------------------------------------------------------------------
Index: uvc_driver.c
===================================================================
--- uvc_driver.c	(revision 132)
+++ uvc_driver.c	(working copy)
@@ -785,6 +785,9 @@
 		else
 			sprintf(unit->name, "Extension %u", buffer[3]);
 
+		uvc_trace(UVC_TRACE_DESCR, "Found Logitech extension unit: " UVC_GUID_FORMAT "\n",
+			UVC_GUID_ARGS(unit->extension.guidExtensionCode));
+
 		list_add_tail(&unit->list, &dev->entities);
 		handled = 1;
 		break;
@@ -1079,6 +1082,9 @@
 			else
 				sprintf(unit->name, "Extension %u", buffer[3]);
 
+			uvc_trace(UVC_TRACE_DESCR, "Found extension unit: " UVC_GUID_FORMAT "\n",
+				UVC_GUID_ARGS(unit->extension.guidExtensionCode));
+
 			list_add_tail(&unit->list, &dev->entities);
 			break;
 
Index: uvcvideo.h
===================================================================
--- uvcvideo.h	(revision 132)
+++ uvcvideo.h	(working copy)
@@ -30,7 +30,10 @@
 #define V4L2_CID_WHITE_BALANCE_TEMPERATURE_AUTO	(V4L2_CID_PRIVATE_BASE+12)
 #define V4L2_CID_WHITE_BALANCE_TEMPERATURE	(V4L2_CID_PRIVATE_BASE+13)
 
-#define V4L2_CID_PRIVATE_LAST			V4L2_CID_WHITE_BALANCE_TEMPERATURE
+#define V4L2_CID_DISABLE_COLOR_PROCESSING	(V4L2_CID_PRIVATE_BASE+14)
+#define V4L2_CID_RAW_DATA_BITS_PER_PIXEL	(V4L2_CID_PRIVATE_BASE+15)
+ 
+#define V4L2_CID_PRIVATE_LAST			V4L2_CID_RAW_DATA_BITS_PER_PIXEL
 
 /*
  * Dynamic controls
@@ -209,6 +212,9 @@
 #define LXU_MOTOR_PANTILT_RESET_CONTROL			0x02
 #define LXU_MOTOR_FOCUS_MOTOR_CONTROL			0x03
 
+#define LXU_COLOR_PROCESSING_DISABLE_CONTROL		0x05
+#define LXU_RAW_DATA_BIT_PER_PIXEL_CONTROL		0x08
+
 /* VideoStreaming interface controls */
 #define VS_CONTROL_UNDEFINED            0x00
 #define VS_PROBE_CONTROL                0x01
