summaryrefslogtreecommitdiffstats
path: root/kernel/sound/usb/mixer_maps.c
diff options
context:
space:
mode:
Diffstat (limited to 'kernel/sound/usb/mixer_maps.c')
-rw-r--r--kernel/sound/usb/mixer_maps.c14
1 files changed, 14 insertions, 0 deletions
diff --git a/kernel/sound/usb/mixer_maps.c b/kernel/sound/usb/mixer_maps.c
index ddca65473..1f8fb0d90 100644
--- a/kernel/sound/usb/mixer_maps.c
+++ b/kernel/sound/usb/mixer_maps.c
@@ -349,6 +349,16 @@ static struct usbmix_name_map bose_companion5_map[] = {
};
/*
+ * Dell usb dock with ALC4020 codec had a firmware problem where it got
+ * screwed up when zero volume is passed; just skip it as a workaround
+ */
+static const struct usbmix_name_map dell_alc4020_map[] = {
+ { 16, NULL },
+ { 19, NULL },
+ { 0 }
+};
+
+/*
* Control map entries
*/
@@ -431,6 +441,10 @@ static struct usbmix_ctl_map usbmix_ctl_maps[] = {
.map = aureon_51_2_map,
},
{
+ .id = USB_ID(0x0bda, 0x4014),
+ .map = dell_alc4020_map,
+ },
+ {
.id = USB_ID(0x0dba, 0x1000),
.map = mbox1_map,
},