On Fri, 3 Dec 2010, Markus Niebel wrote: > Hello, > > thank you for your answer. I think there is a problem, but I did not describe > it correctly. See my comments > > > On Thu, 2 Dec 2010, Markus Niebel wrote: > > > > > Hello, > > > > > > we're working with a special cameraboard (CCD + Analog Frontend IC). Using > > > the > > > soc_camera stack on the i.MX35 (mx3_camera) the following problem arises: > > > > > > VIDIOC_STREAMON calls soc_camera_streamon which calls videobuf_streamon - > > > when > > > iterating the buffers in the queue the function mx3_videobuf_queue is > > > called > > > for every buffer. This sends the buffers to the omage DMA (IDMAC) using > > > the > > > tx_submit method. The function ipu_init_channel_buffer (DMA driver > > > ipu_core) > > > gets only one buffer from the scatterlist, this leads to a single buffer > > > capture. > > What I wanted to say was, that tx_submit (in case of ipu_core > idmac_tx_submit) calls ipu_init_channel_buffer if channel status is < > IPU_CHANNEL_READY. Since only one buffer is submitted (mx3_videobuf_queue is > called in a loop for every single buffer in the videobuf_queue) in the > IPU_CHA_DB_MODE_SEL register double buffering will not be enabled for the > channel. When I put a debug message in ipu_init_channel_buffer I saw that > phyaddr_1 is set to NULL. Correct, but then, when the second buffer is queued, ipu_update_channel_buffer() shall be called and then IPU_CHA_DB_MODE_SEL shall be set. Isn't this happening? Thanks Guennadi --- Guennadi Liakhovetski, Ph.D. Freelance Open-Source Software Developer http://www.open-technology.de/ -- To unsubscribe from this list: send the line "unsubscribe linux-media" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html