On 20/10/2023 11:30, Shengjiu Wang wrote: > V4L2_CAP_AUDIO_M2M is similar to V4L2_CAP_VIDEO_M2M flag. > > It is used for audio memory to memory case. > > Signed-off-by: Shengjiu Wang <shengjiu.wang@xxxxxxx> > --- > Documentation/userspace-api/media/v4l/vidioc-querycap.rst | 3 +++ > Documentation/userspace-api/media/videodev2.h.rst.exceptions | 1 + > include/uapi/linux/videodev2.h | 1 + > 3 files changed, 5 insertions(+) > > diff --git a/Documentation/userspace-api/media/v4l/vidioc-querycap.rst b/Documentation/userspace-api/media/v4l/vidioc-querycap.rst > index 6c57b8428356..0b3cefefc86b 100644 > --- a/Documentation/userspace-api/media/v4l/vidioc-querycap.rst > +++ b/Documentation/userspace-api/media/v4l/vidioc-querycap.rst > @@ -259,6 +259,9 @@ specification the ioctl returns an ``EINVAL`` error code. > video topology configuration, including which I/O entity is routed to > the input/output, is configured by userspace via the Media Controller. > See :ref:`media_controller`. > + * - ``V4L2_CAP_AUDIO_M2M`` > + - 0x40000000 > + - The device supports the audio Memory-To-Memory interface. > * - ``V4L2_CAP_DEVICE_CAPS`` > - 0x80000000 > - The driver fills the ``device_caps`` field. This capability can > diff --git a/Documentation/userspace-api/media/videodev2.h.rst.exceptions b/Documentation/userspace-api/media/videodev2.h.rst.exceptions > index 3e58aac4ef0b..da6d0b8e4c2c 100644 > --- a/Documentation/userspace-api/media/videodev2.h.rst.exceptions > +++ b/Documentation/userspace-api/media/videodev2.h.rst.exceptions > @@ -197,6 +197,7 @@ replace define V4L2_CAP_META_OUTPUT device-capabilities > replace define V4L2_CAP_DEVICE_CAPS device-capabilities > replace define V4L2_CAP_TOUCH device-capabilities > replace define V4L2_CAP_IO_MC device-capabilities > +replace define V4L2_CAP_AUDIO_M2M device-capabilities > > # V4L2 pix flags > replace define V4L2_PIX_FMT_PRIV_MAGIC :c:type:`v4l2_pix_format` > diff --git a/include/uapi/linux/videodev2.h b/include/uapi/linux/videodev2.h > index c3d4e490ce7c..d5da76607101 100644 > --- a/include/uapi/linux/videodev2.h > +++ b/include/uapi/linux/videodev2.h > @@ -508,6 +508,7 @@ struct v4l2_capability { > #define V4L2_CAP_TOUCH 0x10000000 /* Is a touch device */ > > #define V4L2_CAP_IO_MC 0x20000000 /* Is input/output controlled by the media controller */ > +#define V4L2_CAP_AUDIO_M2M 0x40000000 /* audio memory to memory */ Let's pick 0x00000008 for this to fill up a hole in the caps. Regards, Hans > > #define V4L2_CAP_DEVICE_CAPS 0x80000000 /* sets device capabilities field */ >