About Kernel Documentation Linux Kernel Contact Linux Resources Linux Blog

Documentation / video4linux / cafe_ccic


Based on kernel version 4.7.2. Page generated on 2016-08-22 22:48 EST.

1	"cafe_ccic" is a driver for the Marvell 88ALP01 "cafe" CMOS camera
2	controller.  This is the controller found in first-generation OLPC systems,
3	and this driver was written with support from the OLPC project.
4	
5	Current status: the core driver works.  It can generate data in YUV422,
6	RGB565, and RGB444 formats.  (Anybody looking at the code will see RGB32 as
7	well, but that is a debugging aid which will be removed shortly).  VGA and
8	QVGA modes work; CIF is there but the colors remain funky.  Only the OV7670
9	sensor is known to work with this controller at this time.
10	
11	To try it out: either of these commands will work:
12	
13	     mplayer tv:// -tv driver=v4l2:width=640:height=480 -nosound
14	     mplayer tv:// -tv driver=v4l2:width=640:height=480:outfmt=bgr16 -nosound
15	
16	The "xawtv" utility also works; gqcam does not, for unknown reasons.
17	
18	There are a few load-time options, most of which can be changed after
19	loading via sysfs as well:
20	
21	 - alloc_bufs_at_load:  Normally, the driver will not allocate any DMA
22	   buffers until the time comes to transfer data.  If this option is set,
23	   then worst-case-sized buffers will be allocated at module load time.
24	   This option nails down the memory for the life of the module, but
25	   perhaps decreases the chances of an allocation failure later on.
26	
27	 - dma_buf_size: The size of DMA buffers to allocate.  Note that this
28	   option is only consulted for load-time allocation; when buffers are
29	   allocated at run time, they will be sized appropriately for the current
30	   camera settings.
31	
32	 - n_dma_bufs: The controller can cycle through either two or three DMA
33	   buffers.  Normally, the driver tries to use three buffers; on faster
34	   systems, however, it will work well with only two.
35	
36	 - min_buffers: The minimum number of streaming I/O buffers that the driver
37	   will consent to work with.  Default is one, but, on slower systems,
38	   better behavior with mplayer can be achieved by setting to a higher
39	   value (like six).
40	
41	 - max_buffers: The maximum number of streaming I/O buffers; default is
42	   ten.  That number was carefully picked out of a hat and should not be
43	   assumed to actually mean much of anything.
44	
45	 - flip: If this boolean parameter is set, the sensor will be instructed to
46	   invert the video image.  Whether it makes sense is determined by how
47	   your particular camera is mounted.
48	
49	Work is ongoing with this driver, stay tuned.
50	
51	jon
52	
53	Jonathan Corbet
54	corbet@lwn.net
Hide Line Numbers


About Kernel Documentation Linux Kernel Contact Linux Resources Linux Blog