summaryrefslogtreecommitdiff
path: root/sound
diff options
context:
space:
mode:
authorFrank C Guenther <bugzilla.frnkcg@spamgourmet.com>2015-02-17 22:13:32 +0100
committerSasha Levin <sasha.levin@oracle.com>2015-06-09 14:31:48 -0400
commite3a3694d2340e778dbfee07246332a776ba6f100 (patch)
tree90f72bbdf5ba1ee0c86927e0edc65e4fc6170fa8 /sound
parentb978d2f62a4c2385b2991a9c73eb70943706bb45 (diff)
ALSA: usb: Fix support for Denon DA-300USB DAC (ID 154e:1003)
[ Upstream commit 3cd1ce0420ce89937bef9096d5bdb13fbdf0f8b0 ] Fix problem where playback of Denon DA-300USB DAC sometimes does not start and leads to error messages like "clock source 41 is not valid, cannot use". Solution: Treat this device the same as other Denon/Marantz devices in sound/usb/quirks.c. Tested with both PCM and DSD formats. Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=93261 Signed-off-by: Frank C Guenther <bugzilla.frnkcg@spamgourmet.com> Cc: <stable@vger.kernel.org> Signed-off-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Sasha Levin <sasha.levin@oracle.com>
Diffstat (limited to 'sound')
-rw-r--r--sound/usb/quirks.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/sound/usb/quirks.c b/sound/usb/quirks.c
index 5940bd50fca8..f0022169fd8d 100644
--- a/sound/usb/quirks.c
+++ b/sound/usb/quirks.c
@@ -1118,6 +1118,7 @@ int snd_usb_select_mode_quirk(struct snd_usb_substream *subs,
int err;
switch (subs->stream->chip->usb_id) {
+ case USB_ID(0x154e, 0x1003): /* Denon DA-300USB */
case USB_ID(0x154e, 0x3005): /* Marantz HD-DAC1 */
case USB_ID(0x154e, 0x3006): /* Marantz SA-14S1 */
@@ -1197,6 +1198,7 @@ void snd_usb_ctl_msg_quirk(struct usb_device *dev, unsigned int pipe,
(requesttype & USB_TYPE_MASK) == USB_TYPE_CLASS) {
switch (le16_to_cpu(dev->descriptor.idProduct)) {
+ case 0x1003: /* Denon DA300-USB */
case 0x3005: /* Marantz HD-DAC1 */
case 0x3006: /* Marantz SA-14S1 */
mdelay(20);
@@ -1258,6 +1260,7 @@ u64 snd_usb_interface_dsd_format_quirks(struct snd_usb_audio *chip,
/* Denon/Marantz devices with USB DAC functionality */
switch (chip->usb_id) {
+ case USB_ID(0x154e, 0x1003): /* Denon DA300-USB */
case USB_ID(0x154e, 0x3005): /* Marantz HD-DAC1 */
case USB_ID(0x154e, 0x3006): /* Marantz SA-14S1 */
if (fp->altsetting == 2)