Linux&UVC驱动栈
2024-03-11
198
0
以下内容仅代表个人观点,有很大概率不准确。作业初学者,仅为学习笔记而已,勿全当真。但本人会随着认识而修正本文错误的观点。
Windows系统有驱动层级结构,Linux应该也有。作为初学者,需要多读多学,并对新学的知识进行总结。本人根据自己的理解对Linux系统UVC驱动栈进行绘制图。
- 最底层的是USB物理相机设备。
- USB主机控制器驱动程序是特定的某个芯片的USB主机控制驱动程序,而USBCore是对USB主机控制程序的补充,用于在USB特定芯片和上层USB设备驱动程序建立通讯桥梁。
- 个人认为USBCore发现的新的USB设备,通过获取其基本的USB相关信息,发现是一个UVC设备,会调用UVC驱动程序。
- UVC驱动程序对下进行USB数据通讯,对上对V4L2通用接口回调函数提供接口。
- V4L2处理视频通用的处理(usb_video),对上提供一个字符设备(V4L2内部管理)供应用层打开设备。