Platform: ROCKCHIP
OS: Android 6.0
Kernel: 3.10.92
上一篇小结了UVC协议, 大概理解之后再看driver相对会轻松些.
uvc_init -> uvc_driver.c
usb_register -> //注册到usb coreuvc_probe -> //摄像头插入,枚举成功后被调用
uvc_parse_control -> //解析除了四大类描述符之外的所有描述符,四大类描述符在usb枚举的时候已经解析过了.
uvc_parse_vendor_control //解析vendor-specific控制描述符,这里貌似只有Logitech厂商的.
uvc_parse_standard_control -> //包括VS, 所有的entities,比如IT,OT,PU,SU等, Unit和Terminal会添加到uvc_device的entities链表.
uvc_parse_streaming -> //先解析VC HEADER,即Class-Specific VC Interface Descriptor
//, 里面会包含VC的总长度,当前版本,以及有几个VS, 然后循环调用uvc_parse_streaming解析VS.