[media] media: videobuf2: Restructure vb2_buffer

Remove v4l2 stuff - v4l2_buf, v4l2_plane - from struct vb2_buffer.

Add new member variables - bytesused, length, offset, userptr, fd,
data_offset - to struct vb2_plane in order to cover all information
of v4l2_plane.
struct vb2_plane {
        <snip>
        unsigned int            bytesused;
        unsigned int            length;
        union {
                unsigned int    offset;
                unsigned long   userptr;
                int             fd;
        } m;
        unsigned int            data_offset;
}

Replace v4l2_buf with new member variables - index, type, memory - which
are common fields for buffer management.
struct vb2_buffer {
        <snip>
        unsigned int            index;
        unsigned int            type;
        unsigned int            memory;
        unsigned int            num_planes;
        struct vb2_plane        planes[VIDEO_MAX_PLANES];
        <snip>
};

v4l2 specific fields - flags, field, timestamp, timecode,
sequence - are moved to vb2_v4l2_buffer in videobuf2-v4l2.c
struct vb2_v4l2_buffer {
        struct vb2_buffer       vb2_buf;

        __u32                   flags;
        __u32                   field;
        struct timeval          timestamp;
        struct v4l2_timecode    timecode;
        __u32                   sequence;
};

Signed-off-by: Junghak Sung <jh1009.sung@samsung.com>
Signed-off-by: Geunyoung Kim <nenggun.kim@samsung.com>
Acked-by: Seung-Woo Kim <sw0312.kim@samsung.com>
Acked-by: Inki Dae <inki.dae@samsung.com>
Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
This commit is contained in:
Junghak Sung
2015-09-22 10:30:30 -03:00
committed by Mauro Carvalho Chehab
parent c139990e84
commit 2d7007153f
137 changed files with 1647 additions and 1263 deletions

View File

@@ -202,27 +202,28 @@ DECLARE_EVENT_CLASS(vb2_event_class,
),
TP_fast_assign(
struct vb2_v4l2_buffer *vbuf = to_vb2_v4l2_buffer(vb);
__entry->minor = q->owner ? q->owner->vdev->minor : -1;
__entry->queued_count = q->queued_count;
__entry->owned_by_drv_count =
atomic_read(&q->owned_by_drv_count);
__entry->index = vb->v4l2_buf.index;
__entry->type = vb->v4l2_buf.type;
__entry->bytesused = vb->v4l2_planes[0].bytesused;
__entry->flags = vb->v4l2_buf.flags;
__entry->field = vb->v4l2_buf.field;
__entry->timestamp = timeval_to_ns(&vb->v4l2_buf.timestamp);
__entry->timecode_type = vb->v4l2_buf.timecode.type;
__entry->timecode_flags = vb->v4l2_buf.timecode.flags;
__entry->timecode_frames = vb->v4l2_buf.timecode.frames;
__entry->timecode_seconds = vb->v4l2_buf.timecode.seconds;
__entry->timecode_minutes = vb->v4l2_buf.timecode.minutes;
__entry->timecode_hours = vb->v4l2_buf.timecode.hours;
__entry->timecode_userbits0 = vb->v4l2_buf.timecode.userbits[0];
__entry->timecode_userbits1 = vb->v4l2_buf.timecode.userbits[1];
__entry->timecode_userbits2 = vb->v4l2_buf.timecode.userbits[2];
__entry->timecode_userbits3 = vb->v4l2_buf.timecode.userbits[3];
__entry->sequence = vb->v4l2_buf.sequence;
__entry->index = vb->index;
__entry->type = vb->type;
__entry->bytesused = vb->planes[0].bytesused;
__entry->flags = vbuf->flags;
__entry->field = vbuf->field;
__entry->timestamp = timeval_to_ns(&vbuf->timestamp);
__entry->timecode_type = vbuf->timecode.type;
__entry->timecode_flags = vbuf->timecode.flags;
__entry->timecode_frames = vbuf->timecode.frames;
__entry->timecode_seconds = vbuf->timecode.seconds;
__entry->timecode_minutes = vbuf->timecode.minutes;
__entry->timecode_hours = vbuf->timecode.hours;
__entry->timecode_userbits0 = vbuf->timecode.userbits[0];
__entry->timecode_userbits1 = vbuf->timecode.userbits[1];
__entry->timecode_userbits2 = vbuf->timecode.userbits[2];
__entry->timecode_userbits3 = vbuf->timecode.userbits[3];
__entry->sequence = vbuf->sequence;
),
TP_printk("minor = %d, queued = %u, owned_by_drv = %d, index = %u, "