Hi Laurent and all, I'm currently working on a V4L driver for Ricoh webcams. I write to you because there is some apparent device support overlap that should be resolved.
To give a brief description of this type of hardware, all known webcams of this sort are built in to laptops, including a handful of models from Sony and HP, and they are built around an 8051 microcontroller. Some of these devices report video class interface descriptors. Older devices report some sort of interface descriptor claiming to be image class, but are nothing of the sort, and they even managed to create at least two distinct non-UVC devices that report the same 05ca:1870 device ID. The Ricoh webcams that claim to support UVC indeed behave as true UVC devices, and even work with uvcvideo, but with two caveats: 1. A microcode image must be uploaded the first time the device is used since the machine has been powered on. 2. Some picture controls are not described in the UVC interface descriptors, and in fact these picture controls are set using the same commands as non-UVC Ricoh webcams. I have implemented complete support for three Ricoh UVC devices in my driver, using a minimal UVC implementation. These include: 05ca:1810 - HP Pavilion Webcam 05ca:1835 - Sony VGP-VCC5 05ca:1836 - Sony VGP-VCC4 Getting to the point, a system with both uvcvideo and r5u870 installed will be a source of confusion. Both uvcvideo and r5u870 will try to attach to the above devices -- uvcvideo because of the video class interface, r5u870 because of the device ID. If the webcam does not have microcode, uvcvideo will fail and r5u870 will succeed. If the webcam does have microcode, such as after unloading r5u870 and loading uvcvideo, or after a warm boot, uvcvideo will succeed. This is very inconsistent. Either uvcvideo should fully support these three devices and future Ricoh UVC devices, or it should blacklist them. Adding support to uvcvideo should not be terribly difficult and I'm willing to propose a patch -- but if we go this route, I will grill other aspects of uvcvideo to ensure that my users don't lose any application support. Aside, the Windows drivers for these devices are apparently implemented as a pair of filter drivers around usbvideo.sys. The lower filter contains the microcode and handles the upload process, and also handles the non-UVC picture control requests. Thanks. -Sam Revitch _______________________________________________ Linux-uvc-devel mailing list [email protected] https://lists.berlios.de/mailman/listinfo/linux-uvc-devel
