Filter driver for UVC Class
-
2012년 4월 24일 화요일 오전 11:18
I am thinking of developing a UVC device with CY7C68013. But I cannot add UVC headers using that since it has 8051 core. I was thinking of developing a filter driver before UVC driver, which will add the UVC headers for the Payload data.
1) Does anyone know whether it is feasible? What are its implications in terms of speed and performance? How much complex it would be? I am not very familiar with drivers. I am only a beginner in this. Any help would be greatly appreciated.
2) What about the certification for the filter driver? Is it needed ?
3) If I certify, then will other UVC devices (not made of CY7C68013) get bound to filter driver by default, which should not be so ?
Thanks in advance.
모든 응답
-
2012년 4월 26일 목요일 오전 4:48
Jaigurudev udupi wrote:>>I am thinking of developing a UVC device with CY7C68013. But I cannot add>UVC headers using that since it has 8051 core.Right. That's the key problem. The 8051 (at 3 MIPS) can handle theprobe/commit sequence, but it can't touch the pixel stream.You are going to need some kind of FPGA or CPLD in there to feed pixels into the FIFOs using slave mode. It would be nice to figure out how to addthe header using the FPGA.What sensor would you use?>I was thinking of developing a filter driver before UVC driver, which>will add the UVC headers for the Payload data.>>1) Does anyone know whether it is feasible?Sure, it's feasible. It's a bit of a pain, because the size of the packetshas to change to make room for the header. That means rewriting theisochronous URB results.>What are its implications in terms of speed and performance?You're adding one more copy. Today's CPUs do memory copies pretty darnedquickly.>How much complex it would be? I am not very familiar with drivers. I am>only a beginner in this. Any help would be greatly appreciated.This is probably not a good place to start. Have you done any reading ofthe USB Video Class specs? You will be dealing with UVC USB packets, soyou will have to have a very thorough understanding of UVC. Further, youwill be rewriting isochronous USB requests to add the headers (assuming youdon't have an FPGA do it), so you have to be very familiar with URBs.Filter drivers are easier now (with KMDF) than they ever were before, butyou still need to understand USB and UVC very, very well.>2) What about the certification for the filter driver? Is it needed ?That's up to you. Certification is NEVER needed. If you don't care thatyour users see a dialog asking "Do you trust this publisher?", then youdon't need to submit to WHQL.You cannot get the Windows logo for a USB video camera unless that cameraworks with usbvideo.sys by itself. You could get a WHQL signature as anunclassified device, but the value of that is up to you.>3) If I certify, then will other UVC devices (not made of CY7C68013)>get bound to filter driver by default, which should not be so ?No. You would create a driver package with an INF and your filter driver.The INF identifies your specific device by USB VID and PID.Note that you are REQUIRED to change the VID and PID before shipping yourdevice. You sign an agreement when you buy FX2 chips that says you willnot ship with the Cypress identifiers.--Tim Roberts, timr@probo.comProvidenza & Boekelheide, Inc.
Tim Roberts, VC++ MVP Providenza & Boekelheide, Inc.- 답변으로 표시됨 Doron Holan [MSFT]Microsoft Community Contributor, Owner 2012년 4월 26일 목요일 오전 6:23

