Hi,
We have a working custom driver based on ov5693 template, for a (TX2 + JP 3.1) combination. Our video path includes a pre-configured video stream coming from an FPGA, for which the i2c is disabled in the ov5693 driver. Now we are looking to port the driver to newer Jetpack releases.
First we ported the driver to Jetpack 3.3.3 on a TX2i. Following the similar modifications from Jetpack 3.1 on the original source file of Jetpack 3.3.3, and making appropriate device tree changes, we were able to get the video ingested from the FPGA o (TX2i + JP3.3.3) combination.
Lastly, we made similar changes to the original source of Jetpack 4.4.1, to get the video ingested from the FPGA on TX2i. But in this configuration, we are not able to get the video data on the lines.
Hi sluo,
For each of the Jetpack versions, we started with the respective stock L4T sources.
So initially, for Jetpack 3.3.3, we started with original stock v28.4 L4T source, and modified ov5693.c and ov5693_mode_tables.h files, along with addition of YUYV support in sensor_common.c and camera_common.h files. This way we successfully got the video ingested in the Jetpack 3.3.3 based TX2i.
In the similar manner, for Jetpack 4.4.1 we started with original stock v32.4.4 L4T sources, and removed the i2c part from ov5693.c and tried the video ingestion. But in this case, we are not even getting messages in the kernel trace.
Please note that, same carrier board, and video electronics is used for all the tests. The only thing changing is the TX2i SOM with Jetpack versions.
Due to our product constraints, we needed to use TX2i for this migration, and hence we haven’t had a chance to check on TX2.
Also, we thought that as on Jetpack 3.3.3, the video ingestion worked fine even with TX2i, so the TX2 vs TX2i dynamics might not be at play for our current deadlock.
In any case, we’ll check TX2 + JP4.4.1 combination as well, as suggested, but our end goal is to use TX2i.
Thanks
If not, please provide more information including device tree node, v4l2-compliance test output, v4l2-ctl test output and checklist based on the following link. Thanks
Based on the solution of the above-mentioned post, the discontinuous_clk parameter was the root cause. For our case, we have verified the discontinuous_clk parameter, and it is in accordance with the video input.
We have sufficient confidence in the MIPI signal validity, as the same signal works with the other combinations (namely, TX2+JP3.1 and TX2i+JP3.3.3).
Also, the clock is discontinuous, which is what is set in the device tree as well.
Few information only the CILA_ERR_INTR_STATUS 0x00000089 tell it could be the settle time or sensor set as continuous clocks but dts set discontinuous_clk as yes.
Although the clock discontinuous_clk setting worked properly in the previous jetpacks, will confirm this and post the observations in a couple of days.
EDIT:
We reconfirmed the discontiuous clk parameter. Even upon trying both “yes” and “no” as the value, the same error is seen. Also, cil_settletime is set as “0” for our case.
One thing to note is that the “CIL_” prefixed errors are not seen in this one. Only the PXL_SOF sycpt errors are seen. The kernel trace seems exactly the same as the earlier ones.
Hi,
We we were able to get the MIPI video ingested when we used Jetpack 4.5 instead of 4.4.1.
The interesting thing to note is that the same device tree parameters and the modifications to the ov5693 driver worked for Jetpack 4.5, that we were trying for 4.4.1