I’m looking to create a custom driver for a device which transmits RAW12 information over 4 CSI lanes into the TX2.
Following the instructions in Tegra_Linux_Driver_Package_Documents_R27.1, under sensor driver programming guide:
For the device tree configuration, only bayer bggr patterns are listed.
Would RG12 work if I were to enter that, and is it supported?
Also, the paths in the documentation don’t seem to quite line up w/ the stock file system. After installing the kernel sources, is the right path to the camera platforms dtsi in:
/hardware/nvidia/platform/t18x/common/kernel-dts/t18x-common-platforms/tegra186-camera.dtsi?
@xtracrispy
The RAW12 is support you can reference to the …/kernel/kernel-4.4/drivers/media/i2c/imx185.c
The document will update soon for next release.
12 bit Pixel data gets shifted 2 bits to the left and the 2 most significant pixels of the incoming csi pixel is mirrored to the lower ones.
I’ll try explaining in a different approach to my own thread as I guess this is more clear:
00AA AAAA AAAA AAXX
A is the 12 bit pixel value
X seem to be mirrored pixels and have the same value as the 2 most significant bits of A.
I expect something like this
0000 AAAA AAAA AAAA
or this which is also acceptable (and very similar to the way the iMX.6 of us does)
AAAA AAAA AAAA 0000
In the device tree belonging to the imx185 I’ve found this: