We are working on device which needs to receive data which is similar to camera data (Still images type). We have analogues signals to VSYNC, HSYNC and Pixel Clock. Also we have a 8-bit data bus. Currently we are in the process of evaluating the iMX6Q processor for the application. We are using a SABRE-SD for Smart Devices reference board for our testing.
We believe that we can use the CSI-Parallel interface for this task. I believe we need to configure the IPU as follows for the task,
Logical data path: CSI to MEM
Pixel Format: Generic
Clock mode: Gated
Currently we are referring the following documents for the testing,
Question #1: We would like to know what are the main configurations we need to do in order to configure the IPU to do CSI->MEM transfer of 8-bit data.
The other issue that we are seeing with this approach relates to the frame sizes. According to the Section 18.104.22.168 Sensor Image Frame Relations we need to configure the size of the images in internal registers prior to image capture. This is correct for normal images. But in our application we won't know the data size (ie. the image length and width) prior to the data capture. So the image size is entirely upto the clock signals. We need to perform the data capture as follows,
We were wandering whether we can give the image completion interrupt using the End of Line interrupt in CPMEM. There should be an interrupt which says end of image (could not find yet), if there is one I think we should be able to trigger it using software.
Question #2: Could you provide any thoughts on this? Do you all think that this is possible?
Hello Pradeepa Senanayake,
About receiving generic data, you can check the post:
There is an IRQ that is triggered everytime a new frame is received. Check the registers IPUx_INT_STAT_3 and 4. Note that you have to enable them on registers IPUx_INT_CTRL3 and 4.
Even receiving generic data, IPU will still take the width and height into account. You will need to reconfigure IDMAC (CPMEM) everytime this values changes.
CSI->MEM is the only possible path to generic data.