Hello!
In i.MX53 Multimedia Applications Processor Reference Manual, Rev. 2,.1, 6/2012 (p. 3105) I see this:
1411 Data width. This field defines the number of bits per color.
CSI0_DATA_WIDTH Values:
0000 4 bits per color
0000 Reserved
0001 8 bits per color
0010 9 bits per color
0010 Reserved
0011 10 bits per color
0100 11 bits per color
0100 Reserved
0101 12 bits per color
0101 Reserved
0110 13 bits per color
0110 Reserved
0111 14 bits per color
0111 Reserved
1000 15 bits per color
1000 Reserved
1001 16 bits per color
But in linux-2.6.35/include/linux/ipu.h this:
/*!
* Enumeration of CSI data bus widths.
*/
enum {
IPU_CSI_DATA_WIDTH_4,
IPU_CSI_DATA_WIDTH_8,
IPU_CSI_DATA_WIDTH_10,
IPU_CSI_DATA_WIDTH_16,
};
How can I configure CSI on work e.g. with 16-bit data if I see two difference values?
Thank you and excuse me my bad english.
The table for the CSI_DATA_WIDTH is put together poorly.
Notice that it starts with 4 data bits defined as 0000 and then immediately follows it with Reserved as 0000. All of the entries that are like this are reserved and not yet supported. I have not figured out why the 4 bit option is in the enumeration though.
Also notice that there is no reserved entry following the 8, 10 and 16. I have not tried it yet, but have been assured by Freescale that if you select 1001b you should get 16 bits of data.
Hope this helps.
Jim