Hi,
we’re in the process of porting our 6 camera TX1 3.10.96 kernel driver to the TX2.
The driver itself was easy to port, just fix a few video4linux-related structures compile errors.
We changed to device tree in following ways:
- removed the camera-plugin-manager and the camera-modules dtsi files form tegra186-quill-p3310-1000-a00-00-base.dts and included our own dtsi file.
- we edited our dtsi file according to the camera-e3322-a00.dtsi, adding the vi@15700000, nvcsi@150c0000 and “num_csi_lanes = <12>;[…]” blocks accordingly.
Compiling and installing the kernel, we find /dev/video[0-5] devices like intended.
When trying to capture a picture with yafta (yavta /dev/video[0…5] -c5 -n1 -s1920x1080 -fSRGGB10 -Fov#.raw), we get two different errors:
- /dev/video[0…1] (using i2c-1 and CSI A/B): The screen flashes white each time a picture is taken. dmesg shows following error:
[ 126.287892] arm-smmu 12000000.iommu: Unhandled context fault: iova=0x00000000, fsynr=0x90011, cb=18, sid=4(0x4 - VI), pgd=0, pud=0, pmd=0, pte=0
[ 127.232040] tegra-vi4 15700000.vi: PXL_SOF syncpt timeout! err = -11
the captured images contain 4/5 black, then some distorted image data.
- /dev/video[2…5] Nothing flashes, we get the error:
[ 100.904056] tegra_mipi_cal 3990000.mipical: Mipi cal timeout,val:7661, lanes:400000
[ 100.911946] tegra_mipi_cal 3990000.mipical: MIPI_CAL_CTRL 0x04 0x2a000010
[ 100.920249] tegra_mipi_cal 3990000.mipical: CIL_MIPI_CAL_STATUS 0x0c 0x00007661
[ 100.928561] tegra_mipi_cal 3990000.mipical: CIL_MIPI_CAL_STATUS_2 0x10 0x00000000
[ 100.936843] tegra_mipi_cal 3990000.mipical: CILA_MIPI_CAL_CONFIG 0x18 0x00000000
[ 100.945149] tegra_mipi_cal 3990000.mipical: CILB_MIPI_CAL_CONFIG 0x1c 0x00000000
[ 100.953429] tegra_mipi_cal 3990000.mipical: CILC_MIPI_CAL_CONFIG 0x20 0x00200000
[ 100.961733] tegra_mipi_cal 3990000.mipical: CILD_MIPI_CAL_CONFIG 0x24 0x00000000
[ 100.970012] tegra_mipi_cal 3990000.mipical: CILE_MIPI_CAL_CONFIG 0x28 0x00000000
[ 100.978294] tegra_mipi_cal 3990000.mipical: CILF_MIPI_CAL_CONFIG 0x2c 0x00000000
[ 100.986555] tegra_mipi_cal 3990000.mipical: DSIA_MIPI_CAL_CONFIG 0x3c 0x00000000
[ 100.994837] tegra_mipi_cal 3990000.mipical: DSIB_MIPI_CAL_CONFIG 0x40 0x00000000
[ 101.003102] tegra_mipi_cal 3990000.mipical: DSIC_MIPI_CAL_CONFIG 0x44 0x00000000
[ 101.011387] tegra_mipi_cal 3990000.mipical: DSID_MIPI_CAL_CONFIG 0x48 0x00000000
[ 101.019650] tegra_mipi_cal 3990000.mipical: MIPI_BIAS_PAD_CFG0 0x5c 0x00000000
[ 101.027932] tegra_mipi_cal 3990000.mipical: MIPI_BIAS_PAD_CFG1 0x60 0x00000000
[ 101.036195] tegra_mipi_cal 3990000.mipical: MIPI_BIAS_PAD_CFG2 0x64 0x00000000
[ 101.044479] tegra_mipi_cal 3990000.mipical: DSIA_MIPI_CAL_CONFIG_2 0x68 0x00000000
[ 101.052740] tegra_mipi_cal 3990000.mipical: DSIB_MIPI_CAL_CONFIG_2 0x6c 0x00000000
[ 101.061022] tegra_mipi_cal 3990000.mipical: DSIC_MIPI_CAL_CONFIG_2 0x74 0x00000000
[ 101.069283] tegra_mipi_cal 3990000.mipical: DSID_MIPI_CAL_CONFIG_2 0x78 0x00000000
[ 102.076079] tegra-vi4 15700000.vi: PXL_SOF syncpt timeout! err = -11
[ 103.080073] tegra-vi4 15700000.vi: PXL_SOF syncpt timeout! err = -11
The captured images are completely black.
Since we didn’t change the drivers code, I guess the mistake has to be in the device tree, or the new kernel needs some adjustments. Did this error occur to anyone else yet?
And is there a release date for the updated documentation? Because the 27.1 documentation still contains the “Sensor Driver Programming Guide” for the TX1 structure.
Best regards!