we are working on a custom camera driver for the Allied Vision Alvium MIPI CSI-2 camera on the Toradex Apalis iMX8QM.
RGB and YUV formats are working fine, however, we experience issues with raw formats such as RAW8.
It seems that the pixel data in the buffer is shifted by 2 bits, so effectively 2 bits are lost for every pixel. To avoid the loss of data, it is possible to configure the ISI to use 2 bytes per pixel, but the data will be shifted by 2 bits nonetheless.
The raw formats are necessary for streaming with Bayer formats and Mono formats such as V4L2_PIX_FMT_SBGGR8 or V4L2_PIX_FMT_GREY.
Is this a known problem and are there any solutions or workarounds available?
Thank you in advance!
To summarize the outcome and add to the doc error, RAW16 would be 16-bit aligned, all other supported RAWxx formats are left aligned to bit 14 with 0 padding where required.
The RM indicates RAW formats are right / LSB aligned. The RM will be updated, this will not be added to the errata as it is behaving according to the specification.
Also read the 15.2 in reference manual to Raw8.