On Wed 6 June 2012 05:46:34 Laurent Pinchart wrote: > Hi Rebecca, > > On Monday 04 June 2012 12:34:23 Rebecca Schultz Zavin wrote: > > I have a system where the data is planar, but the kernel drivers > > expect to get one allocation with offsets for the planes. I can't > > figure out how to do that with the current dma_buf implementation. I > > thought I could pass the same dma_buf several times and use the > > data_offset field of the v4l2_plane struct but it looks like that's > > only for output. Am I missing something? Is this supported? > > data_offset is indeed for video output only at the moment, and doesn't seem to > be used by any driver in mainline for now. Actually, data_offset may be set by capture drivers. For output buffers it is set by userspace, for capture buffers it is set by the driver. This data_offset typically contains meta data. > I can't really see a reason why data_offset couldn't be used for video capture > devices as well. > > Sanity checks are currently missing. For output devices we should check that > data_offset + bytesused < length in the vb2 core. For input devices the check > will have to be performed by drivers. Taking data_offset into account > automatically would also be useful. I think most of that should be possible to > implement in the allocators. See this proposal of how to solve this: http://www.spinics.net/lists/linux-media/msg40376.html Regards, Hans -- 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