Re: [PATCH 11/15] media: intel/ipu6: input system video capture nodes

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Sakari and Laurent,


On 7/27/23 3:15 PM, bingbu.cao@xxxxxxxxx wrote:
> From: Bingbu Cao <bingbu.cao@xxxxxxxxx>
> 
> Register v4l2 video device and setup the vb2 queue to
> support basic video capture. Video streaming callback
> will trigger the input system driver to construct a
> input system stream configuration for firmware based on
> data type and stream ID and then queue buffers to firmware
> to do capture.
> 
> Signed-off-by: Bingbu Cao <bingbu.cao@xxxxxxxxx>
> ---
>  .../media/pci/intel/ipu6/ipu6-isys-queue.c    |  864 ++++++++++++
>  .../media/pci/intel/ipu6/ipu6-isys-queue.h    |   97 ++
>  .../media/pci/intel/ipu6/ipu6-isys-video.c    | 1237 +++++++++++++++++
>  .../media/pci/intel/ipu6/ipu6-isys-video.h    |  133 ++
>  4 files changed, 2331 insertions(+)
>  create mode 100644 drivers/media/pci/intel/ipu6/ipu6-isys-queue.c
>  create mode 100644 drivers/media/pci/intel/ipu6/ipu6-isys-queue.h
>  create mode 100644 drivers/media/pci/intel/ipu6/ipu6-isys-video.c
>  create mode 100644 drivers/media/pci/intel/ipu6/ipu6-isys-video.h
> 
> diff --git a/drivers/media/pci/intel/ipu6/ipu6-isys-queue.c b/drivers/media/pci/intel/ipu6/ipu6-isys-queue.c
> new file mode 100644
> index 000000000000..c683a1b7c91f
--snip--

> +static const struct vb2_ops ipu6_isys_queue_ops = {
> +	.queue_setup = queue_setup,
> +	.wait_prepare = vb2_ops_wait_prepare,
> +	.wait_finish = vb2_ops_wait_finish,
> +	.buf_prepare = buf_prepare,
> +	.start_streaming = start_streaming,
> +	.stop_streaming = stop_streaming,
> +	.buf_queue = buf_queue,
> +};
> +
> +int ipu6_isys_queue_init(struct ipu6_isys_queue *aq)
> +{
> +	struct ipu6_isys *isys = ipu6_isys_queue_to_video(aq)->isys;
> +	struct ipu6_isys_video *av = ipu6_isys_queue_to_video(aq);
> +	int ret;
> +
> +	/* no support for userptr */
> +	if (!aq->vbq.io_modes)
> +		aq->vbq.io_modes = VB2_MMAP | VB2_DMABUF;


There are some improvement and bug fixing in vb2 USERPTR in the past
months, I remember someone told me the userptr is buggy, I remove the
USERPTR support from current IPU6 ISYS driver. However, there is some
userspace application still need the USERPTR, so I am not sure whether
I should add it back. Do you have any suggestion?


--snip--
-- 
Best regards,
Bingbu Cao




[Index of Archives]     [Linux Input]     [Video for Linux]     [Gstreamer Embedded]     [Mplayer Users]     [Linux USB Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Yosemite Backpacking]

  Powered by Linux