AR0144 on TX2, device not showing up

Hi there,

I am working on connecting an “li-ar0144-mipi” camera to an “li-tx1-cb-6cam” carrier board for a TX2.

I referenced the following forum post: https://devtalk.nvidia.com/default/topic/1043072/jetson-tx2/ar0144-on-tx2-fence-timeouts-mipi-crc-/post/5295041/#5295041

I used the patch files, and I was able to build the driver module with the kernel as well as update the device tree. Running modprobe ar0144 returns nothing (which is good I believe). I also can find “ar0144” directories in /proc/device-tree. However, the device does not show up under “/dev/video*”.

The full syslog is attached, but please see the relevant part below:

Jun 11 18:08:39 tegra-ubuntu argus_daemon[1225]: NvPclHwGetModuleList: WARNING: Could not map module to ISP config string
Jun 11 18:08:39 tegra-ubuntu rsyslogd-2007: action 'action 9' suspended, next retry is Tue Jun 11 18:09:09 2019 [v8.16.0 try http://www.rsyslog.com/e/2007 ]
Jun 11 18:08:39 tegra-ubuntu argus_daemon[1225]: NvPclHwGetModuleList: No module data found
Jun 11 18:08:39 tegra-ubuntu argus_daemon[1225]: NvPclHwGetModuleList: WARNING: Could not map module to ISP config string
Jun 11 18:08:39 tegra-ubuntu argus_daemon[1225]: NvPclHwGetModuleList: No module data found
Jun 11 18:08:39 tegra-ubuntu argus_daemon[1225]: NvPclHwGetModuleList: WARNING: Could not map module to ISP config string
Jun 11 18:08:39 tegra-ubuntu argus_daemon[1225]: NvPclHwGetModuleList: No module data found
Jun 11 18:08:40 tegra-ubuntu argus_daemon[1225]: OFParserGetVirtualDevice: NVIDIA Camera virtual enumerator not found in proc device-tree
Jun 11 18:08:40 tegra-ubuntu argus_daemon[1225]: LoadOverridesFile: looking for override file [/Calib/camera_override.isp] 1/16LoadOverridesFile: looking for override file [/data/nvcam/settings/camera_overrides.isp] 2/16LoadOverridesFile: looking for override file [/opt/nvidia/nvcam/settings/camera_overrides.isp] 3/16LoadOverridesFile: looking for override file [/var/nvidia/nvcam/settings/camera_overrides.isp] 4/16LoadOverridesFile: looking for override file [/data/nvcam/camera_overrides.isp] 5/16LoadOverridesFile: looking for override file [/data/nvcam/settings/ar0144_bottomleft_liar0144.isp] 6/16LoadOverridesFile: looking for override file [/opt/nvidia/nvcam/settings/ar0144_bottomleft_liar0144.isp] 7/16LoadOverridesFile: looking for override file [/var/nvidia/nvcam/settings/ar0144_bottomleft_liar0144.isp] 8/16---- imager: No override file found. ----
Jun 11 18:08:40 tegra-ubuntu argus_daemon[1225]: (NvOdmDevice) Error ModuleNotPresent: V4L2Device not available (in dvs/git/dirty/git-master_linux/camera-partner/imager/src/V4L2Device.cpp, function findDevice(), line 245)
Jun 11 18:08:40 tegra-ubuntu argus_daemon[1225]: (NvOdmDevice) Error ModuleNotPresent:  (propagating from dvs/git/dirty/git-master_linux/camera-partner/imager/src/V4L2Device.cpp, function initialize(), line 55)
Jun 11 18:08:40 tegra-ubuntu argus_daemon[1225]: (NvOdmDevice) Error ModuleNotPresent:  (propagating from dvs/git/dirty/git-master_linux/camera-partner/imager/src/devices/V4L2SensorViCsi.cpp, function initialize(), line 103)
Jun 11 18:08:40 tegra-ubuntu argus_daemon[1225]: NvPclDriverInitializeData: Unable to initialize driver v4l2_sensor
Jun 11 18:08:40 tegra-ubuntu argus_daemon[1225]: NvPclInitializeDrivers: error: Failed to init camera sub module v4l2_sensor

I have also attached the decompiled device tree.

Best,
Vai

new_dts.txt (293 KB)

hello vviswan2,

it seems you would like to implement a loadable kernel module.
please also share more details about your environments. for example, which JetPack release you’re working with.
thanks

Hi JerryChang,

I am using 28.2.1. I have patched the kernel and device tree with the patches attached (taken from [url]https://devtalk.nvidia.com/default/topic/1043072/jetson-tx2/ar0144-on-tx2-fence-timeouts-mipi-crc-/post/5295041/#5295041[/url]).

thanks

hello vviswan2,

could you please also check kernel message while insert kernel module.
you should check the kernel driver had probed successfully, then system will register the device node.
thanks

If you look in the syslog file it is never probing for the driver. What would make the kernel probe for the video device? It does look like we compiled the driver into the kernel.

Hi vviswan2,

We have only TX1 driver for AR0144-MIPI + LI-TX1-CB-6CAM camera at this moment. It’s based on old BSP R24.2.1.

We also have R28.2.1 TX2 driver patches for our AR0144-MIPI + LI-JTX1-MIPI-ADPT-6CAM board. You can take it as a reference.

Hi SimonZhu,

I modified the patch for the AR0144-MIPI + LI-JTX1-MIPI-ADPT-6CAM board. According to the patch name, I believe that the patch is for 28.2.0, not 28.2.1.

I have tried applying the patch, flashing the device tree, and updating kernel. However, I do not see the cameras under “/dev/video*”. Furthermore, the kernel does not probe the cameras.

I can “modprobe” the AR0144 module correctly and I also see the ar0144 under /sys/firmware/devicetree/base/i2c@3180000/tca9548@77/i2c@*.

How can I debug this issue?

Thanks,

Hi vviswan2,

The 28.2.0 driver can work with BSP R28.2.1. This driver is for Nvidia Jetson TX2 Developer kit. Have you try it on TX2 Developer kit first? If still no video0 ~ 5, please make sure you copy the Image to /boot and flash the dtb file to TX2 (based on the guide).
We plan to build the AR0144-LI-TX1-CB-6CAM TX2 driver in Q3 2019.

Hi SimonZhu,

Thanks for the response. I will try it on the developer kit. However, how do I connect the MIPI AR0144?

I have copied the Image to /boot and I flashed the modified “tegra186-quill-p3310-1000-a00-00-base.dtb” as per the instructions.

Thanks

Hi vviswan2,

We have an adapter board to connect the AR0144-MIPI to Jetson TX2 Developer kit.

Hi SimonZhu,

I have TX2 running on LI-TX1-CB-3 carrier board and need to get AR0144 mipi camera works on it. Do you have any future work on it or there is any guide to make it work?

Thanks

Hi mucahit_arduc,

We may build it in Q2 2020 based on latest BSP. You can provide your Email address to support@leopardimaging.com. We will put your Email address in our list and let you know once we have the driver ready.

Hi SimonZhu,

Thank you. I will send mail to that address.