主题中讨论的其他部件: Alp.
工具/软件:Linux
您好,
我相信我 需要有关DS90UB964-Q1四路摄像机集线器CSI-2输出的Linux内核驱动程序的帮助。 如果有任何适用于DS90UB964-Q1的Linux设备驱动程序,或有关编写驱动程序的文档, 请直接告诉我,因为我找不到它们。
不过,我的问题可能在其他地方。 因此,我将提供有关我的项目的更多信息:
项目规格:
在 嵌入式设备上使用多个摄像机输入(本例中为4个)运行机器视觉软件(基于OpenCV)
(一旦/dev/video*( 在Linux中)中提供了摄像机设备的句柄,OpenCV即可访问摄像机)
因此,目的是通过/dev/video*使摄像机设备可用。
材料:
嵌入式设备:
NVIDIA TX1.
操作系统:
Linux4Tegra (L4T)版本24.2 ................................................................1.
四路摄像头集线器:
DS90UB964-Q1
摄像机:
4x OV1.0635万串行同轴电缆
连接:
DS90UB964-Q1 (以下称为UB964)通过(TX1) J21 GPIO扩展接头 (用于I2C连接) 和(TX1) J22摄像头连接器(用于MIPI-CSI2连接)连接到Nvidia TX1。 OV1.0635万通过同轴电缆连接到UB964板。 在TX1 (L4T R 24.2 .1)上的Linux操作系统上完成开发。
测试的方法:
首先,通过使用Linux 程序i2c-tools检查用户空间中的可见性,确认了i2c连接。 以下i2cdetect命令:
i2cdetect-y-r 0
已显示位于(7位) i2c地址0x30的UB964。 这在Windows中进行了双重检查,通过使用(总相) Aardvark I2C至USB连接器和德州仪器(TI)模拟启动板程序连接到I2C。 使用这两种方法显示的寄存器将根据DS90UB964-Q1四路FPD链路III解串器集线器pdf中的预期默认值进行检查。 在电气方面,检查了示波器上的连接(连接到UB964上的SDA和SCL, 如有必要,可以找到所用的引脚编号),并向此i2c地址写入命令,从而在 示波器上产生预期的时钟和数据波形。
由此看来,我们通过TX1上的Linux连接到UB964 I2C总线。 接下来,我们要 测试与OV1.0635万 (通过UB964连接)的连接。 因此,下一步是将UB964设置 为将OV1.0635万作为I2C 总线的别名(在TX1用户空间中可见)。 DS90UB96X-Q1EVM用户指南pdf (第22页)显示了用于锁定端口,在I2C上设置CSI参数和别名接收器的ALP python示例脚本。 此示例在Linux中使用相同的寄存器和值,但使用由i2cset命令组成的shell脚本进行设置,例如:
i2cset -y -r 0 0x30 0x10 0x81
此i2cset命令示例引用地址0x30 (UB964),寄存器0x10,值0x81上的i2cbus 0 (在TX1上)。 如有必要,可以提供此处使用的所有i2cset命令的副本。
运行这些命令(作为shell脚本(.sh))后,在i2c总线上找到了两个额外的i2c地址(每个连接的摄像机)。 这两个新的i2c地址都是通过i2ctet命令(读取i2cbus地址的寄存器)“ping”的,两个新地址(每个摄像机)中的一个在示波器上显示预期数据/时钟响应(连接 到OV1.0635万串行同轴电缆上的SDA/SCL线路) 而另一个寄存器在示波器上没有显示任何内容。
此时,我相信我的下一步是开始研究如何从UB964到TX1获取CSI 2数据。 根据我在Nvidia论坛和Linux上读到的内容,我认为我需要获得设备驱动程序,以便TX1内核空间可以识别 设备树中的i2c连接(通过其在TX1 i2c总线上的i2c地址), 并且(使用dtsi文件中的"compatible"参数)将此文件链接到包含 传入帧信息(高度,宽度,时钟等)的驱动程序文件(.c), *应该*允许 Video4Linux2 (V4L2)框架在/dev/video*下创建一个节点,通过该节点可以读取摄像机帧。 我对这一过程的假设可能不正确。
我尝试生成设备驱动程序文件并使用这些设备驱动程序重新编译Linux内核,但没有结果。 我不确定 TI处理器SDK (http://www.ti.com/lsds/ti/tools-software/processor_sw.page?DCMP=epd-gen&HQS=processorsdk )中有关UB964的任何内容是否有用。
我还计划在Nvidia TX1论坛上发帖,因为我相信我可能需要TI和Nvidia帮助才能使此主板正常工作。
感谢您的抽出时间,
此致,
彼得。