Home Home > GIT Browse > SLE12-SP4
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTakashi Iwai <tiwai@suse.de>2019-07-16 15:19:51 +0200
committerTakashi Iwai <tiwai@suse.de>2019-07-16 15:19:51 +0200
commit31d111acbd59879979ad315087b8d44f4d1ffa22 (patch)
tree2ee1a77ca17f9c8bbc2fc06b51f2accca07ba0c6
parent2fff3db70e495be199c8bb83657fccc051a606f1 (diff)
ALSA: usb-audio: Cleanup DSD whitelist (bsc#1051510).
-rw-r--r--patches.drivers/ALSA-usb-audio-Cleanup-DSD-whitelist.patch74
-rw-r--r--series.conf1
2 files changed, 75 insertions, 0 deletions
diff --git a/patches.drivers/ALSA-usb-audio-Cleanup-DSD-whitelist.patch b/patches.drivers/ALSA-usb-audio-Cleanup-DSD-whitelist.patch
new file mode 100644
index 0000000000..51b45de55b
--- /dev/null
+++ b/patches.drivers/ALSA-usb-audio-Cleanup-DSD-whitelist.patch
@@ -0,0 +1,74 @@
+From 202e69e645545e8dcec5e239658125276a7a315a Mon Sep 17 00:00:00 2001
+From: Jussi Laako <jussi@sonarnerd.net>
+Date: Tue, 29 Jan 2019 00:47:01 +0200
+Subject: [PATCH] ALSA: usb-audio: Cleanup DSD whitelist
+Git-commit: 202e69e645545e8dcec5e239658125276a7a315a
+Patch-mainline: v5.1-rc1
+References: bsc#1051510
+
+XMOS/Thesycon family of USB Audio Class firmware flags DSD altsetting
+separate from the PCM ones. Thus the DSD altsetting can be auto-detected
+based on the flag and doesn't need maintaining specific altsetting
+whitelist.
+
+In addition, static VID:PID-to-altsetting whitelisting causes problems
+when firmware update changes the altsetting, or same VID:PID is reused
+for another device that has different kind of firmware.
+
+This patch removes existing explicit whitelist mappings for XMOS VID
+(0x20b1) and Thesycon VID (0x152a).
+
+Also corrects placement of Hegel HD12 and NuPrime DAC-10 to keep list
+sorted based on VID.
+
+Signed-off-by: Jussi Laako <jussi@sonarnerd.net>
+Signed-off-by: Takashi Iwai <tiwai@suse.de>
+
+---
+ sound/usb/quirks.c | 18 ++----------------
+ 1 file changed, 2 insertions(+), 16 deletions(-)
+
+diff --git a/sound/usb/quirks.c b/sound/usb/quirks.c
+index bb8372833fc2..ef67d19117c4 100644
+--- a/sound/usb/quirks.c
++++ b/sound/usb/quirks.c
+@@ -1479,10 +1479,6 @@ u64 snd_usb_interface_dsd_format_quirks(struct snd_usb_audio *chip,
+ /* XMOS based USB DACs */
+ switch (chip->usb_id) {
+ case USB_ID(0x1511, 0x0037): /* AURALiC VEGA */
+- case USB_ID(0x20b1, 0x0002): /* Wyred 4 Sound DAC-2 DSD */
+- case USB_ID(0x20b1, 0x2004): /* Matrix Audio X-SPDIF 2 */
+- case USB_ID(0x20b1, 0x2008): /* Matrix Audio X-Sabre */
+- case USB_ID(0x20b1, 0x300a): /* Matrix Audio Mini-i Pro */
+ case USB_ID(0x22d9, 0x0416): /* OPPO HA-1 */
+ case USB_ID(0x22d9, 0x0436): /* OPPO Sonica */
+ case USB_ID(0x22d9, 0x0461): /* OPPO UDP-205 */
+@@ -1492,23 +1488,13 @@ u64 snd_usb_interface_dsd_format_quirks(struct snd_usb_audio *chip,
+ return SNDRV_PCM_FMTBIT_DSD_U32_BE;
+ break;
+
+- case USB_ID(0x10cb, 0x0103): /* The Bit Opus #3; with fp->dsd_raw */
+- case USB_ID(0x152a, 0x85de): /* SMSL D1 DAC */
+- case USB_ID(0x16d0, 0x09dd): /* Encore mDSD */
+ case USB_ID(0x0d8c, 0x0316): /* Hegel HD12 DSD */
++ case USB_ID(0x10cb, 0x0103): /* The Bit Opus #3; with fp->dsd_raw */
+ case USB_ID(0x16b0, 0x06b2): /* NuPrime DAC-10 */
++ case USB_ID(0x16d0, 0x09dd): /* Encore mDSD */
+ case USB_ID(0x16d0, 0x0733): /* Furutech ADL Stratos */
+ case USB_ID(0x16d0, 0x09db): /* NuPrime Audio DAC-9 */
+ case USB_ID(0x1db5, 0x0003): /* Bryston BDA3 */
+- case USB_ID(0x20b1, 0x000a): /* Gustard DAC-X20U */
+- case USB_ID(0x20b1, 0x2005): /* Denafrips Ares DAC */
+- case USB_ID(0x20b1, 0x2009): /* DIYINHK DSD DXD 384kHz USB to I2S/DSD */
+- case USB_ID(0x20b1, 0x2023): /* JLsounds I2SoverUSB */
+- case USB_ID(0x20b1, 0x3021): /* Eastern El. MiniMax Tube DAC Supreme */
+- case USB_ID(0x20b1, 0x3023): /* Aune X1S 32BIT/384 DSD DAC */
+- case USB_ID(0x20b1, 0x302d): /* Unison Research Unico CD Due */
+- case USB_ID(0x20b1, 0x307b): /* CH Precision C1 DAC */
+- case USB_ID(0x20b1, 0x3086): /* Singxer F-1 converter board */
+ case USB_ID(0x22d9, 0x0426): /* OPPO HA-2 */
+ case USB_ID(0x22e1, 0xca01): /* HDTA Serenade DSD */
+ case USB_ID(0x249c, 0x9326): /* M2Tech Young MkIII */
+--
+2.16.4
+
diff --git a/series.conf b/series.conf
index a0a2cf70ff..f2e21216fe 100644
--- a/series.conf
+++ b/series.conf
@@ -21536,6 +21536,7 @@
patches.drivers/ACPI-video-Refactor-and-fix-dmi_is_desktop.patch
patches.drivers/ACPI-video-Extend-chassis-type-detection-with-a-Lunc.patch
patches.fixes/device-property-Fix-the-length-used-in-PROPERTY_ENTR.patch
+ patches.drivers/ALSA-usb-audio-Cleanup-DSD-whitelist.patch
patches.drivers/ALSA-hda-Record-the-current-power-state-before-suspe.patch
patches.drivers/ALSA-hda-Use-standard-device-registration-for-beep.patch
patches.drivers/ASoC-imx-sgtl5000-put-of-nodes-if-finding-codec-fail.patch