ALSA: usb-audio: Fix dB level of Bose Revolve+ SoundLink

Bose Revolve+ SoundLink (0a57:40fa) advertises invalid dB level for
the speaker volume.  This patch provides the correction in the mixer
map quirk table entry.

Note that this requires the prerequisite change to add min_mute flag
to the dB map table.

BugLink: https://bugzilla.suse.com/show_bug.cgi?id=1192375
Link: https://lore.kernel.org/r/20211116065415.11159-4-tiwai@suse.de
Signed-off-by: Takashi Iwai <tiwai@suse.de>
This commit is contained in:
Takashi Iwai 2021-11-16 07:54:15 +01:00
Родитель 85b741c1cb
Коммит 02eb1d098e
1 изменённых файлов: 12 добавлений и 0 удалений

Просмотреть файл

@ -337,6 +337,13 @@ static const struct usbmix_name_map bose_companion5_map[] = {
{ 0 } /* terminator */
};
/* Bose Revolve+ SoundLink, correction of dB maps */
static const struct usbmix_dB_map bose_soundlink_dB = {-8283, -0, true};
static const struct usbmix_name_map bose_soundlink_map[] = {
{ 2, NULL, .dB = &bose_soundlink_dB },
{ 0 } /* terminator */
};
/* Sennheiser Communications Headset [PC 8], the dB value is reported as -6 negative maximum */
static const struct usbmix_dB_map sennheiser_pc8_dB = {-9500, 0};
static const struct usbmix_name_map sennheiser_pc8_map[] = {
@ -522,6 +529,11 @@ static const struct usbmix_ctl_map usbmix_ctl_maps[] = {
.id = USB_ID(0x05a7, 0x1020),
.map = bose_companion5_map,
},
{
/* Bose Revolve+ SoundLink */
.id = USB_ID(0x05a7, 0x40fa),
.map = bose_soundlink_map,
},
{
/* Corsair Virtuoso SE (wired mode) */
.id = USB_ID(0x1b1c, 0x0a3d),