uml*_*ute 14
您可以通过传递一些参数来更改许多内核模块的行为.
您可以使用以下modinfo
命令获取所有可用模块参数的列表:
# modinfo uvcvideo
Run Code Online (Sandbox Code Playgroud)
表明存在可以使用的"怪癖"参数.看看你发布的常见问题,似乎quirks
真的是一个位域,所以如果你想要启用多个怪癖,你必须添加数字.
首先卸载驱动程序(显然你这样做时不能使用它):
# rmmod uvcvideo
Run Code Online (Sandbox Code Playgroud)
然后用quirks
参数重新加载它.假设你想要启用两者UVC_QUIRK_FIX_BANDWIDTH
(具有十六进制值0x80
,128
十进制值)和UVC_QUIRK_RESTRICT_FRAME_RATE
(0x200
因此512
)你将使用一个怪癖值640
(即128+512
resp.0x200|0x80
):
# modprobe uvcvideo quirks=640
Run Code Online (Sandbox Code Playgroud)
为了使 umläute 的答案在重启后继续存在,我创建了/etc/modprobe.d/uvcvideo.conf
包含内容的文件
options uvcvideo quirks=0x80
Run Code Online (Sandbox Code Playgroud)
要让模块重新加载uvcvideo.conf
,卸载和加载模块:
rmmod uvcvideo
modprobe uvcvideo
Run Code Online (Sandbox Code Playgroud)
有趣的是,采用echo
以组quirks
(即同时uvcvideo
加载)没有工作,即使UVC驱动程序FAQ使用echo
修改trace
的参数uvcvideo
。
注意:在我的案例中(在 Ubuntu 14.04 上),UVC_QUIRK_FIX_BANDWIDTH 为机器视觉应用程序为每个 USB 主机控制器启用了许多 Microsoft LifeCam Cinema 网络摄像头。LifeCam Cinema 保留了大约 48% 的 USB 2.0 带宽(根据 Windows 上的设备管理器),因此没有怪癖,每个主机控制器最多可以运行两个 LifeCam。(对于几个主控制器芯片,我什至仅限于一个 LifeCam 而没有这个怪癖。)
归档时间: |
|
查看次数: |
9347 次 |
最近记录: |