启用动态调试使我的相机驱动程序表现得更好

时间:2016-02-12 00:25:27

标签: linux-kernel linux-device-driver embedded-linux device-driver

我正在为具有内置ISP的ARM设备上的8位并行图像传感器原型设计驱动程序。当我寻求关于如何解决我遇到的这个特殊问题的一般指导时,我会遗漏细节。

简单地说,当我用dyndbg=+pt标志加载ISP驱动程序(不是我的原型相机驱动程序)时,相机驱动程序通常会抓取图像(大约10次尝试中的8次)。如果我删除该标志,并加载没有任何选项的ISP驱动程序,我的相机驱动程序很少完成其工作(约100次尝试中的1)。系统卡住,说设备已经超时。

我怀疑用调试标志加载驱动程序会以某种方式改变时序,从而在ISP和图像传感器之间产生更稳定的交互。我大部分时间花在调试嵌入式电路板的电气方面,并且很少钻研深层软件堆栈,如ISP或Video4Linux。因此,我的推测可能完全没有了。

因此,我们非常感谢一些指针。内核是3.18。

1 个答案:

答案 0 :(得分:2)

您没有提供很多细节供我们在这里使用,但如果启用调试使您的设备正常工作,我怀疑调试输出会引入延迟,这是您的设备正常工作所必需的。我仔细阅读了您的设备数据表,看看是否有任何时间要求,您可能不会尊重。