22 Sep, 2016

1 commit

  • As warned by linuxdoc[1] tool, using:

    $ for i in $(git grep kernel-doc Documentation/media/kapi/|cut -d: -f4); do kernel-lintdoc --sloppy $i; done

    include/media/v4l2-dev.h:118 :WARN: function name from comment differs: v4l2_prio_close v4l2_prio_check
    include/media/v4l2-mc.h:56 [kernel-doc WARN] : enum name from comment differs: if_vid_dec_index if_vid_dec_pad_index
    include/media/v4l2-mc.h:71 [kernel-doc WARN] : enum name from comment differs: if_aud_dec_index if_aud_dec_pad_index
    include/media/v4l2-mem2mem.h:396 [kernel-doc WARN] : function name from comment differs: v4l2_m2m_num_src_bufs_ready v4l2_m2m_num_dst_bufs_ready
    drivers/media/dvb-core/dvb_math.h:28 [kernel-doc WARN] : function name from comment differs: cintlog2 intlog2
    include/media/v4l2-subdev.h:215 [kernel-doc WARN] : struct name from comment differs: s_radio v4l2_subdev_tuner_ops
    include/media/v4l2-subdev.h:890 [kernel-doc WARN] : function name from comment differs: v4l2_set_subdevdata v4l2_set_subdev_hostdata
    include/media/v4l2-subdev.h:901 [kernel-doc WARN] : function name from comment differs: v4l2_get_subdevdata v4l2_get_subdev_hostdata
    drivers/media/dvb-core/dvb_ringbuffer.h:196 [kernel-doc WARN] : function name from comment differs: dvb_ringbuffer_writeuser dvb_ringbuffer_write_user
    include/media/videobuf2-core.h:399 [kernel-doc WARN] : struct name from comment differs: vb2_ops vb2_buf_ops
    include/media/media-entity.h:132 [kernel-doc ERROR] : duplicate parameter definition 'source'
    include/media/media-entity.h:477 [kernel-doc WARN] : function name from comment differs: media_entity_enum_test media_entity_enum_test_and_set
    include/media/media-entity.h:535 [kernel-doc WARN] : function name from comment differs: gobj_to_entity gobj_to_pad
    include/media/media-entity.h:544 [kernel-doc WARN] : function name from comment differs: gobj_to_entity gobj_to_link
    include/media/media-entity.h:553 [kernel-doc WARN] : function name from comment differs: gobj_to_entity gobj_to_intf
    include/media/media-entity.h:562 [kernel-doc WARN] : function name from comment differs: gobj_to_entity intf_to_devnode
    include/media/rc-core.h:234 [kernel-doc WARN] : function name from comment differs: rc_open rc_close
    include/media/v4l2-ctrls.h:397 [kernel-doc WARN] : missing initial short description of 'v4l2_ctrl_handler_init'
    include/media/v4l2-dev.h:118 [kernel-doc WARN] : function name from comment differs: v4l2_prio_close v4l2_prio_check
    include/media/v4l2-event.h:225 [kernel-doc WARN] : missing initial short description of 'v4l2_src_change_event_subscribe'

    [1] https://return42.github.io/linuxdoc/linux.html

    The above are real issues at the documentation. On several cases,
    caused by cut-and-paste.

    Fix them.

    Signed-off-by: Mauro Carvalho Chehab

    Mauro Carvalho Chehab
     

09 Sep, 2016

4 commits


01 Oct, 2015

2 commits

  • 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 {

    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 {

    unsigned int index;
    unsigned int type;
    unsigned int memory;
    unsigned int num_planes;
    struct vb2_plane planes[VIDEO_MAX_PLANES];

    };

    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
    Signed-off-by: Geunyoung Kim
    Acked-by: Seung-Woo Kim
    Acked-by: Inki Dae
    Signed-off-by: Hans Verkuil
    Signed-off-by: Mauro Carvalho Chehab

    Junghak Sung
     
  • Make videobuf2-v4l2 as a wrapper of videobuf2-core for v4l2-use.
    And replace videobuf2-core.h with videobuf2-v4l2.h.
    This renaming change should be accompanied by the modifications
    of all device drivers that include videobuf2-core.h.
    It can be done with just running this shell script.

    replace()
    {
    str1=$1
    str2=$2
    dir=$3
    for file in $(find $dir -name *.h -o -name *.c -o -name Makefile)
    do
    echo $file
    sed "s/$str1/$str2/g" $file > $file.out
    mv $file.out $file
    done
    }

    replace "videobuf2-core" "videobuf2-v4l2" "include/media/"
    replace "videobuf2-core" "videobuf2-v4l2" "drivers/media/"
    replace "videobuf2-core" "videobuf2-v4l2" "drivers/usb/gadget/"
    replace "videobuf2-core" "videobuf2-v4l2" "drivers/staging/media/"

    Signed-off-by: Junghak Sung
    Signed-off-by: Geunyoung Kim
    Acked-by: Seung-Woo Kim
    Acked-by: Inki Dae
    Signed-off-by: Hans Verkuil
    Signed-off-by: Mauro Carvalho Chehab

    Junghak Sung
     

22 Aug, 2015

1 commit

  • Warning(.//include/media/v4l2-mem2mem.h:50): No description found for parameter 'lock'
    Warning(.//include/media/v4l2-mem2mem.h:50): No description found for parameter 'unlock'
    Warning(.//include/media/v4l2-mem2mem.h:167): No description found for parameter 'm2m_ctx'
    Warning(.//include/media/v4l2-mem2mem.h:177): No description found for parameter 'm2m_ctx'
    Warning(.//include/media/v4l2-mem2mem.h:188): No description found for parameter 'm2m_ctx'
    Warning(.//include/media/v4l2-mem2mem.h:197): No description found for parameter 'm2m_ctx'
    Warning(.//include/media/v4l2-mem2mem.h:206): No description found for parameter 'm2m_ctx'
    Warning(.//include/media/v4l2-mem2mem.h:215): No description found for parameter 'm2m_ctx'
    Warning(.//include/media/v4l2-mem2mem.h:226): No description found for parameter 'm2m_ctx'
    Warning(.//include/media/v4l2-mem2mem.h:235): No description found for parameter 'm2m_ctx'

    Signed-off-by: Mauro Carvalho Chehab
    Acked-by: Jonathan Corbet

    Mauro Carvalho Chehab
     

10 Jun, 2015

1 commit


22 Jul, 2014

1 commit


05 Dec, 2013

1 commit

  • This patch adds ioctl helpers to the V4L2 mem-to-mem API, so we can avoid
    several ioctl handlers in the mem-to-mem video node drivers that are simply
    a pass-through to the v4l2_m2m_* calls. These helpers will only be useful
    for drivers that use same mutex for both OUTPUT and CAPTURE queue, which
    is the case for all currently in tree v4l2 m2m drivers. In order to use
    the helpers the drivers are required to use struct v4l2_fh.

    Signed-off-by: Sylwester Nawrocki
    Signed-off-by: Kyungmin Park
    Acked-by: Hans Verkuil
    Signed-off-by: Mauro Carvalho Chehab

    Sylwester Nawrocki
     

26 Jul, 2013

1 commit

  • On mem2mem decoders with a hardware bitstream ringbuffer, to drain the
    buffer at the end of the stream, remaining frames might need to be decoded
    from the bitstream buffer without additional input buffers being provided.
    To achieve this, allow a queue to be marked as buffered by the driver, and
    allow scheduling of device_runs when buffered ready queues are empty.
    This also allows a driver to copy input buffers into their bitstream
    ringbuffer and immediately mark them as done to be dequeued.
    The motivation for this patch is hardware assisted h.264 reordering support
    in the coda driver. For high profile streams, the coda can hold back
    out-of-order frames, causing a few mem2mem device runs in the beginning, that
    don't produce any decompressed buffer at the v4l2 capture side. At the same
    time, the last few frames can be decoded from the bitstream with mem2mem device
    runs that don't need a new input buffer at the v4l2 output side. The decoder
    command ioctl can be used to put the decoder into the ringbuffer draining
    end-of-stream mode.

    Signed-off-by: Philipp Zabel
    Acked-by: Sylwester Nawrocki
    Signed-off-by: Kamil Debski
    Signed-off-by: Mauro Carvalho Chehab

    Philipp Zabel
     

04 Jun, 2013

1 commit


19 Dec, 2012

1 commit


26 Nov, 2012

1 commit


18 Sep, 2012

1 commit


22 Mar, 2011

2 commits


19 May, 2010

1 commit

  • A mem-to-mem device is a device that uses memory buffers passed by
    userspace applications for both their source and destination data. This
    is different from existing drivers, which utilize memory buffers for either
    input or output, but not both.

    In terms of V4L2 such a device would be both of OUTPUT and CAPTURE type.

    Examples of such devices would be: image 'resizers', 'rotators',
    'colorspace converters', etc.

    This patch adds a separate Kconfig sub-menu for mem-to-mem devices as well.

    Signed-off-by: Pawel Osciak
    Signed-off-by: Marek Szyprowski
    Signed-off-by: Kyungmin Park
    Reviewed-by: Vaibhav Hiremath
    Tested-by: Vaibhav Hiremath
    Signed-off-by: Mauro Carvalho Chehab

    Pawel Osciak