From: Geoffrey D. Bennett Date: Tue, 12 Mar 2024 18:35:30 +0000 (+1030) Subject: ALSA: scarlett2: Add support for config items with size = 32 X-Git-Tag: io_uring-6.10-20240523~78^2~72 X-Git-Url: https://git.kernel.dk/?a=commitdiff_plain;h=b1b3b258242c4e7c70b8da09904a8c5e2aadaa3a;p=linux-block.git ALSA: scarlett2: Add support for config items with size = 32 Update scarlett2_usb_get_config() to support 32-bit values which are needed by the upcoming Vocaster support. Signed-off-by: Geoffrey D. Bennett Signed-off-by: Takashi Iwai Message-ID: --- diff --git a/sound/usb/mixer_scarlett2.c b/sound/usb/mixer_scarlett2.c index 8d08f71bd4d6..f2bbf90680f8 100644 --- a/sound/usb/mixer_scarlett2.c +++ b/sound/usb/mixer_scarlett2.c @@ -436,7 +436,7 @@ enum { }; /* Location, size, and activation command number for the configuration - * parameters. Size is in bits and may be 1, 8, or 16. + * parameters. Size is in bits and may be 1, 8, 16, or 32. * * Vocaster and 4th Gen devices have a parameter buffer to set certain * configuration parameters. When pbuf is set, rather than writing to @@ -2102,6 +2102,11 @@ static int scarlett2_usb_get_config( for (i = 0; i < count; i++, buf_16++) *buf_16 = le16_to_cpu(*(__le16 *)buf_16); + } else if (size == 4) { + u32 *buf_32 = buf; + + for (i = 0; i < count; i++, buf_32++) + *buf_32 = le32_to_cpu(*(__le32 *)buf_32); } return 0; }