linux/drivers/media/platform/amphion
Ming Qian 77ce8e4d6d media: amphion: Support dmabuf and v4l2 buffer without binding
When using VB2_DMABUF, the relationship between dma-buf and v4l2 buffer
may not one-to-one, a single dma-buf may be queued via different
v4l2 buffers, and different dma-bufs may be queued via the same
v4l2 buffer, so it's not appropriate to use the v4l2 buffer index
as the frame store id.

We can generate a frame store id according to the dma address.
Then for a given dma-buf, the id is fixed.

Driver now manages the frame store and vb2-buffer states independently.

When a dmabuf is queued via another v4l2 buffer before the buffer is
released by firmware, need to pend it until firmware release it.

Signed-off-by: Ming Qian <ming.qian@oss.nxp.com>
Reviewed-by: Nicolas Dufresne <nicolas.dufresne@collabora.com>
Signed-off-by: Nicolas Dufresne <nicolas.dufresne@collabora.com>
Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
2025-07-12 08:34:48 +02:00
..
Kconfig
Makefile
vdec.c media: amphion: Support dmabuf and v4l2 buffer without binding 2025-07-12 08:34:48 +02:00
venc.c media: amphion: Guard memory allocation to catch failures 2024-10-12 16:28:24 +02:00
vpu.h media: amphion: Support dmabuf and v4l2 buffer without binding 2025-07-12 08:34:48 +02:00
vpu_cmds.c
vpu_cmds.h
vpu_codec.h
vpu_color.c media: amphion: Remove unused functions 2025-06-17 10:35:17 +02:00
vpu_core.c media: amphion: Slightly simplify vpu_core_register() 2025-04-24 15:21:35 +02:00
vpu_core.h
vpu_dbg.c media: amphion: Support dmabuf and v4l2 buffer without binding 2025-07-12 08:34:48 +02:00
vpu_defs.h media: amphion: Add H264 and HEVC profile and level control 2025-06-20 12:39:54 +02:00
vpu_drv.c media: amphion: Fix pm_runtime_set_suspended() with runtime pm enabled 2024-11-07 09:05:57 +01:00
vpu_helpers.c media: amphion: Add H264 and HEVC profile and level control 2025-06-20 12:39:54 +02:00
vpu_helpers.h media: amphion: Add H264 and HEVC profile and level control 2025-06-20 12:39:54 +02:00
vpu_imx8q.c
vpu_imx8q.h
vpu_malone.c media: amphion: Add H264 and HEVC profile and level control 2025-06-20 12:39:54 +02:00
vpu_malone.h
vpu_mbox.c media: amphion: Remove unused functions 2025-06-17 10:35:17 +02:00
vpu_mbox.h media: amphion: Remove unused functions 2025-06-17 10:35:17 +02:00
vpu_msgs.c
vpu_msgs.h
vpu_rpc.c
vpu_rpc.h
vpu_v4l2.c media: amphion: Support dmabuf and v4l2 buffer without binding 2025-07-12 08:34:48 +02:00
vpu_v4l2.h
vpu_windsor.c
vpu_windsor.h