I’m on developing my own carrier board for veye camera via fpdlink.
Dmesg shows the I2C mux, FpdLink Serializer/Deserializer but it does not shows any contents
on the Camera.
I think that the veyecam.o built-in module does not involved in.
On my Carrier Target, the module folder /lib/modules has 3 sub folders.
/lib/modules/4.15.0-202-generic, 4.9.299+, 4.9.299-tegra
The message on the install of sudo apt-get install v4l*
I have found the message that
at depmod… DKMS : install completed.
Module build for kernel 4.9.299+ was skipped since the kernel headers…
but according to the file modules.builltin of 4.9.299+ and others,
my camera driver veyecam.ko is located only in the folder that v4l2 DKMS has omitted to build.
So, I guess that my camera driver has never been included on the process of v4l2 installation
What should I do for my driver be involved to the real built-in drivers list?
Due to the kernel version that the TX2 runs in the latest JetPack, the given kernel headers aren’t available from apt. The latest version available are 4.18.*: apt search linux-headers-4*
I don’t know why my camera driver is located in /lib/modules/4.9.299+ and which one makes this folder and put the driver in it?
Can I avoid the 4.9.299+ folder?
I have misinformation on the veyecam driver when kernel init.
I have seen wrong information the the camera driver may be involved when V4l2 * installation but it is on the case when the camera drivers is just modules and not built-in drivers.
When my camera driver is involved as built in , it is not related to v4l2 installation and it should show the driver probing messege or… but my carrier board does not shows anythings.
So it may be from the mistake of menuconfig checking problem or Kconfigs.
the attached photo shows the existance of veyecam driver and deserializer ds90ub954…
and I have checked the dts files from the camera vender , i2c address part for i2c mux(pca954x), serializer, deserialize (ds90ub954) and veyecam is same except randomly given phandler.
Quickly looking over the dmesg the issue might be with your deserializer driver:
[ 1.220375] tegra-i2c 3180000.i2c: no acknowledge from address 0x30
[ 1.220654] i2c-ds90ub954 32-0030: Cannot read register 0x00 (-121)!
[ 1.220657] i2c-ds90ub954 32-0030: ds90ub954_probe: error initializing ds90ub954
[ 1.220791] i2c-ds90ub954: probe of 32-0030 failed with error -121
After this, since the deserializer driver wasn’t initialized correctly neither the camera nor the serializer would be loaded at all.
You might want to look into checking why reading from a register isn’t working. This can be either due to a misconfiguration of the i2c-mux or the deserializer might need a GPIO to be enabled so that it is powered on.