virtio_snd.h: clarify that `controls` depends on VIRTIO_SND_F_CTLS
authorStefano Garzarella <sgarzare@redhat.com>
Thu, 13 Feb 2025 16:18:25 +0000 (17:18 +0100)
committerTakashi Iwai <tiwai@suse.de>
Fri, 14 Feb 2025 11:58:02 +0000 (12:58 +0100)
As defined in the specification, the `controls` field in the configuration
space is only valid/present if VIRTIO_SND_F_CTLS is negotiated.

  From https://docs.oasis-open.org/virtio/virtio/v1.3/virtio-v1.3.html:

  5.14.4 Device Configuration Layout
    ...
    controls
       (driver-read-only) indicates a total number of all available control
       elements if VIRTIO_SND_F_CTLS has been negotiated.

Let's use the same style used in virtio_blk.h to clarify this and to avoid
confusion as happened in QEMU (see link).

Link: https://gitlab.com/qemu-project/qemu/-/issues/2805
Signed-off-by: Stefano Garzarella <sgarzare@redhat.com>
Acked-by: Eugenio Pérez <eperezma@redhat.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Link: https://patch.msgid.link/20250213161825.139952-1-sgarzare@redhat.com
include/uapi/linux/virtio_snd.h

index 5f4100c2cf04cb44494fec115b70095f530b42c2..a4cfb9f6561ab834f0f14b07f242c855bee43a3c 100644 (file)
@@ -25,7 +25,7 @@ struct virtio_snd_config {
        __le32 streams;
        /* # of available channel maps */
        __le32 chmaps;
-       /* # of available control elements */
+       /* # of available control elements (if VIRTIO_SND_F_CTLS) */
        __le32 controls;
 };