Hi all,
I'm trying to capture RAW12 data using the MIPI interface with an iMX6. I'm able to properly capture, however, the data is stored in memory as it comes from the CSI2-interface so after capturing every buffer, the data needs to be re-ordered which adds load to the ARM.
Taking a look at the RM, I can see the the data is stored in memory by the IPU Gasket as follows:
Then that data is captured by the CSI as it is (with no special re-ordering). The IDMAC is currently configured to capture generic data (as recommended) and I've tried configuring for 8, 12 and 16 bpp with the same results (the data is just moved to memory).
My question is: Is there a way in HW of getting the pixels properly stored in memory? This is P1[11:0], P2[11:0], P3[11:0], P4[11:0], .... instead of P1[11:4], P2[11:4], P1[3:0], P2[3:0], P3[11:4], P4[11:4}, ...
Any help will be appreciated.
Regards,
Edison
Hi Edison,
I use a sensor output RAW12 format, I can't capture the image correctly, the image rolling . I set pixel_fmt to IPU_PIX_FMT_GENERIC_16 , I can capture RAW10 correctly. How can I modify driver to capture RAW12? Thank you!
Hi Edison
IPU supports packing/ unpacking with programmable position and width of color components,
described sect.37.4.2.3 FCW & FCR - Format converter write and read
i.MX6DQ Reference Manual
http://www.nxp.com/docs/en/reference-manual/IMX6DQRM.pdf
for MIPI captured data there is no special HW reordering support.
Best regards
igor
-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------