* [PATCH] ALSA: usb-audio: Add DSD support for Comtrue USB Audio device
@ 2025-07-31 4:51 noble.yang
2025-07-31 5:39 ` Takashi Iwai
0 siblings, 1 reply; 8+ messages in thread
From: noble.yang @ 2025-07-31 4:51 UTC (permalink / raw)
To: tiwai, perex, hulianqin, lina+kernel, cyan.vtb, dan.carpenter,
bsevens
Cc: linux-sound, linux-kernel
[-- Attachment #1.1: Type: text/plain, Size: 969 bytes --]
The vendor Comtrue Inc. (0x2fc6) produces USB audio chipsets like
the CT7601 which are capable of Native DSD playback.
This patch adds QUIRK_FLAG_DSD_RAW for Comtrue (VID 0x2fc6), which enables
native DSD playback (DSD_U32_LE) on their USB Audio device. This has been
verified under Ubuntu 25.04 with JRiver.
Best Regards !
===========================
Noble Yang
Cell : +886-955-347822
晨臻股份有限公司
Comtrue Inc.
www.comtrue-inc.com <http://www.comtrue-inc.com/>
新地址 : 新竹縣竹北市縣政十街10號2F之1
2F.-1, No. 10, Xianzheng 10th St., Zhubei City, Hsinchu County 302, Taiwan
(R.O.C.)
The information included in this email is privileged and confidential and
just for the exclusive use of the addressee.
For people other than the addressee the use, disclosure and reproduction is
strictly prohibited.
If this message has been received in error, please contact the sender and
delete all copies.
[-- Attachment #1.2: Type: text/html, Size: 5927 bytes --]
[-- Attachment #2: 0001-ALSA-usb-audio-Add-DSD-support-for-Comtrue-USB-Audio.patch --]
[-- Type: application/octet-stream, Size: 919 bytes --]
From 1b9dde1ef9987efcaf5d9bc9a932ac0ec3bbd8c5 Mon Sep 17 00:00:00 2001
From: "noble.yang" <noble.yang@comtrue-inc.com>
Date: Thu, 31 Jul 2025 12:11:11 +0800
Subject: [PATCH] ALSA: usb-audio: Add DSD support for Comtrue USB Audio device
Signed-off-by: noble.yang <noble.yang@comtrue-inc.com>
---
sound/usb/quirks.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/sound/usb/quirks.c b/sound/usb/quirks.c
index bd24f3a78ea9..cbb66125f839 100644
--- a/sound/usb/quirks.c
+++ b/sound/usb/quirks.c
@@ -2408,6 +2408,8 @@ static const struct usb_audio_quirk_flags_table quirk_flags_table[] = {
QUIRK_FLAG_DSD_RAW),
VENDOR_FLG(0x2d87, /* Cayin device */
QUIRK_FLAG_DSD_RAW),
+ VENDOR_FLG(0x2fc6, /* Comture-inc devices */
+ QUIRK_FLAG_DSD_RAW),
VENDOR_FLG(0x3336, /* HEM devices */
QUIRK_FLAG_DSD_RAW),
VENDOR_FLG(0x3353, /* Khadas devices */
--
2.48.1
[-- Attachment #3: cat proc asound card.txt --]
[-- Type: text/plain, Size: 2803 bytes --]
cat /proc/asound/card*/stream0
Comtrue-inc Comtrue-inc UAC2 Device EVM-GB at usb-0000:00:14.0-5, high speed : USB Audio
Playback:
Status: Stop
Interface 1
Altset 1
Format: S16_LE
Channels: 2
Endpoint: 0x01 (1 OUT) (ASYNC)
Rates: 44100, 48000, 88200, 96000, 176400, 192000, 352800, 384000, 705600, 768000
Data packet interval: 125 us
Bits: 16
Channel map: FL FR
Sync Endpoint: 0x81 (1 IN)
Sync EP Interface: 1
Sync EP Altset: 1
Implicit Feedback Mode: No
Interface 1
Altset 2
Format: S24_3LE
Channels: 2
Endpoint: 0x01 (1 OUT) (ASYNC)
Rates: 44100, 48000, 88200, 96000, 176400, 192000, 352800, 384000, 705600, 768000
Data packet interval: 125 us
Bits: 24
Channel map: FL FR
Sync Endpoint: 0x81 (1 IN)
Sync EP Interface: 1
Sync EP Altset: 2
Implicit Feedback Mode: No
Interface 1
Altset 3
Format: S32_LE
Channels: 2
Endpoint: 0x01 (1 OUT) (ASYNC)
Rates: 44100, 48000, 88200, 96000, 176400, 192000, 352800, 384000, 705600, 768000
Data packet interval: 125 us
Bits: 32
Channel map: FL FR
Sync Endpoint: 0x81 (1 IN)
Sync EP Interface: 1
Sync EP Altset: 3
Implicit Feedback Mode: No
Interface 1
Altset 4
Format: SPECIAL DSD_U32_BE
Channels: 2
Endpoint: 0x01 (1 OUT) (ASYNC)
Rates: 44100, 48000, 88200, 96000, 176400, 192000, 352800, 384000, 705600, 768000
Data packet interval: 125 us
Bits: 32
DSD raw: DOP=0, bitrev=0
Channel map: FL FR
Sync Endpoint: 0x81 (1 IN)
Sync EP Interface: 1
Sync EP Altset: 4
Implicit Feedback Mode: No
Capture:
Status: Stop
Interface 2
Altset 1
Format: S16_LE
Channels: 2
Endpoint: 0x82 (2 IN) (ASYNC)
Rates: 44100, 48000, 88200, 96000, 176400, 192000, 352800, 384000, 705600, 768000
Data packet interval: 125 us
Bits: 16
Channel map: FL FR
Interface 2
Altset 2
Format: S24_3LE
Channels: 2
Endpoint: 0x82 (2 IN) (ASYNC)
Rates: 44100, 48000, 88200, 96000, 176400, 192000, 352800, 384000, 705600, 768000
Data packet interval: 125 us
Bits: 24
Channel map: FL FR
Interface 2
Altset 3
Format: S32_LE
Channels: 2
Endpoint: 0x82 (2 IN) (ASYNC)
Rates: 44100, 48000, 88200, 96000, 176400, 192000, 352800, 384000, 705600, 768000
Data packet interval: 125 us
Bits: 32
Channel map: FL FR
Interface 2
Altset 4
Format: SPECIAL DSD_U32_BE
Channels: 2
Endpoint: 0x82 (2 IN) (ASYNC)
Rates: 44100, 48000, 88200, 96000, 176400, 192000, 352800, 384000, 705600, 768000
Data packet interval: 125 us
Bits: 32
DSD raw: DOP=0, bitrev=0
Channel map: FL FR
^ permalink raw reply related [flat|nested] 8+ messages in thread
* Re: [PATCH] ALSA: usb-audio: Add DSD support for Comtrue USB Audio device
2025-07-31 4:51 noble.yang
@ 2025-07-31 5:39 ` Takashi Iwai
2025-07-31 5:50 ` noble.yang
0 siblings, 1 reply; 8+ messages in thread
From: Takashi Iwai @ 2025-07-31 5:39 UTC (permalink / raw)
To: noble.yang
Cc: tiwai, perex, hulianqin, lina+kernel, cyan.vtb, dan.carpenter,
bsevens, linux-sound, linux-kernel
On Thu, 31 Jul 2025 06:51:37 +0200,
<noble.yang@comtrue-inc.com> wrote:
>
>
> The vendor Comtrue Inc. (0x2fc6) produces USB audio chipsets like
>
> the CT7601 which are capable of Native DSD playback.
>
> This patch adds QUIRK_FLAG_DSD_RAW for Comtrue (VID 0x2fc6), which enables
>
> native DSD playback (DSD_U32_LE) on their USB Audio device. This has been
>
> verified under Ubuntu 25.04 with JRiver.
>
> Best Regards !
I see no patch in the mail. Could you try to send via git-send-email?
thanks,
Takashi
>
> ===========================
>
> Noble Yang
>
> Cell : +886-955-347822
>
> 晨臻股份有限公司
>
> Comtrue Inc.
>
> www.comtrue-inc.com
>
> 新地址 : 新竹縣竹北市縣政十街10號2F之1
>
> 2F.-1, No. 10, Xianzheng 10th St., Zhubei City, Hsinchu County 302, Taiwan
> (R.O.C.)
>
> The information included in this email is privileged and confidential and just
> for the exclusive use of the addressee.
>
> For people other than the addressee the use, disclosure and reproduction is
> strictly prohibited.
>
> If this message has been received in error, please contact the sender and
> delete all copies.
>
>
> cat /proc/asound/card*/stream0
> Comtrue-inc Comtrue-inc UAC2 Device EVM-GB at usb-0000:00:14.0-5, high speed : USB Audio
>
> Playback:
> Status: Stop
> Interface 1
> Altset 1
> Format: S16_LE
> Channels: 2
> Endpoint: 0x01 (1 OUT) (ASYNC)
> Rates: 44100, 48000, 88200, 96000, 176400, 192000, 352800, 384000, 705600, 768000
> Data packet interval: 125 us
> Bits: 16
> Channel map: FL FR
> Sync Endpoint: 0x81 (1 IN)
> Sync EP Interface: 1
> Sync EP Altset: 1
> Implicit Feedback Mode: No
> Interface 1
> Altset 2
> Format: S24_3LE
> Channels: 2
> Endpoint: 0x01 (1 OUT) (ASYNC)
> Rates: 44100, 48000, 88200, 96000, 176400, 192000, 352800, 384000, 705600, 768000
> Data packet interval: 125 us
> Bits: 24
> Channel map: FL FR
> Sync Endpoint: 0x81 (1 IN)
> Sync EP Interface: 1
> Sync EP Altset: 2
> Implicit Feedback Mode: No
> Interface 1
> Altset 3
> Format: S32_LE
> Channels: 2
> Endpoint: 0x01 (1 OUT) (ASYNC)
> Rates: 44100, 48000, 88200, 96000, 176400, 192000, 352800, 384000, 705600, 768000
> Data packet interval: 125 us
> Bits: 32
> Channel map: FL FR
> Sync Endpoint: 0x81 (1 IN)
> Sync EP Interface: 1
> Sync EP Altset: 3
> Implicit Feedback Mode: No
> Interface 1
> Altset 4
> Format: SPECIAL DSD_U32_BE
> Channels: 2
> Endpoint: 0x01 (1 OUT) (ASYNC)
> Rates: 44100, 48000, 88200, 96000, 176400, 192000, 352800, 384000, 705600, 768000
> Data packet interval: 125 us
> Bits: 32
> DSD raw: DOP=0, bitrev=0
> Channel map: FL FR
> Sync Endpoint: 0x81 (1 IN)
> Sync EP Interface: 1
> Sync EP Altset: 4
> Implicit Feedback Mode: No
>
> Capture:
> Status: Stop
> Interface 2
> Altset 1
> Format: S16_LE
> Channels: 2
> Endpoint: 0x82 (2 IN) (ASYNC)
> Rates: 44100, 48000, 88200, 96000, 176400, 192000, 352800, 384000, 705600, 768000
> Data packet interval: 125 us
> Bits: 16
> Channel map: FL FR
> Interface 2
> Altset 2
> Format: S24_3LE
> Channels: 2
> Endpoint: 0x82 (2 IN) (ASYNC)
> Rates: 44100, 48000, 88200, 96000, 176400, 192000, 352800, 384000, 705600, 768000
> Data packet interval: 125 us
> Bits: 24
> Channel map: FL FR
> Interface 2
> Altset 3
> Format: S32_LE
> Channels: 2
> Endpoint: 0x82 (2 IN) (ASYNC)
> Rates: 44100, 48000, 88200, 96000, 176400, 192000, 352800, 384000, 705600, 768000
> Data packet interval: 125 us
> Bits: 32
> Channel map: FL FR
> Interface 2
> Altset 4
> Format: SPECIAL DSD_U32_BE
> Channels: 2
> Endpoint: 0x82 (2 IN) (ASYNC)
> Rates: 44100, 48000, 88200, 96000, 176400, 192000, 352800, 384000, 705600, 768000
> Data packet interval: 125 us
> Bits: 32
> DSD raw: DOP=0, bitrev=0
> Channel map: FL FR
>
^ permalink raw reply [flat|nested] 8+ messages in thread
* RE: [PATCH] ALSA: usb-audio: Add DSD support for Comtrue USB Audio device
2025-07-31 5:39 ` Takashi Iwai
@ 2025-07-31 5:50 ` noble.yang
2025-07-31 5:51 ` Takashi Iwai
0 siblings, 1 reply; 8+ messages in thread
From: noble.yang @ 2025-07-31 5:50 UTC (permalink / raw)
To: 'Takashi Iwai'
Cc: tiwai, perex, hulianqin, lina+kernel, cyan.vtb, dan.carpenter,
bsevens, linux-sound, linux-kernel
[-- Attachment #1: Type: text/plain, Size: 4746 bytes --]
Hello Takashi
Please try download it as below link
https://reurl.cc/8951Ro
Thanks
Noble
-----Original Message-----
From: Takashi Iwai <tiwai@suse.de>
Sent: Thursday, July 31, 2025 1:40 PM
To: noble.yang@comtrue-inc.com
Cc: tiwai@suse.com; perex@perex.cz; hulianqin@vivo.com;
lina+kernel@asahilina.net; cyan.vtb@gmail.com; dan.carpenter@linaro.org;
bsevens@google.com; linux-sound@vger.kernel.org;
linux-kernel@vger.kernel.org
Subject: Re: [PATCH] ALSA: usb-audio: Add DSD support for Comtrue USB Audio
device
On Thu, 31 Jul 2025 06:51:37 +0200,
<noble.yang@comtrue-inc.com> wrote:
>
>
> The vendor Comtrue Inc. (0x2fc6) produces USB audio chipsets like
>
> the CT7601 which are capable of Native DSD playback.
>
> This patch adds QUIRK_FLAG_DSD_RAW for Comtrue (VID 0x2fc6), which
> enables
>
> native DSD playback (DSD_U32_LE) on their USB Audio device. This has
> been
>
> verified under Ubuntu 25.04 with JRiver.
>
> Best Regards !
I see no patch in the mail. Could you try to send via git-send-email?
thanks,
Takashi
>
> ===========================
>
> Noble Yang
>
> Cell : +886-955-347822
>
> 晨臻股份有限公司
>
> Comtrue Inc.
>
> www.comtrue-inc.com
>
> 新地址 : 新竹縣竹北市縣政十街10號2F之1
>
> 2F.-1, No. 10, Xianzheng 10th St., Zhubei City, Hsinchu County 302,
> Taiwan
> (R.O.C.)
>
> The information included in this email is privileged and confidential
> and just for the exclusive use of the addressee.
>
> For people other than the addressee the use, disclosure and
> reproduction is strictly prohibited.
>
> If this message has been received in error, please contact the sender
> and delete all copies.
>
>
> cat /proc/asound/card*/stream0
> Comtrue-inc Comtrue-inc UAC2 Device EVM-GB at usb-0000:00:14.0-5, high
> speed : USB Audio
>
> Playback:
> Status: Stop
> Interface 1
> Altset 1
> Format: S16_LE
> Channels: 2
> Endpoint: 0x01 (1 OUT) (ASYNC)
> Rates: 44100, 48000, 88200, 96000, 176400, 192000, 352800, 384000,
705600, 768000
> Data packet interval: 125 us
> Bits: 16
> Channel map: FL FR
> Sync Endpoint: 0x81 (1 IN)
> Sync EP Interface: 1
> Sync EP Altset: 1
> Implicit Feedback Mode: No
> Interface 1
> Altset 2
> Format: S24_3LE
> Channels: 2
> Endpoint: 0x01 (1 OUT) (ASYNC)
> Rates: 44100, 48000, 88200, 96000, 176400, 192000, 352800, 384000,
705600, 768000
> Data packet interval: 125 us
> Bits: 24
> Channel map: FL FR
> Sync Endpoint: 0x81 (1 IN)
> Sync EP Interface: 1
> Sync EP Altset: 2
> Implicit Feedback Mode: No
> Interface 1
> Altset 3
> Format: S32_LE
> Channels: 2
> Endpoint: 0x01 (1 OUT) (ASYNC)
> Rates: 44100, 48000, 88200, 96000, 176400, 192000, 352800, 384000,
705600, 768000
> Data packet interval: 125 us
> Bits: 32
> Channel map: FL FR
> Sync Endpoint: 0x81 (1 IN)
> Sync EP Interface: 1
> Sync EP Altset: 3
> Implicit Feedback Mode: No
> Interface 1
> Altset 4
> Format: SPECIAL DSD_U32_BE
> Channels: 2
> Endpoint: 0x01 (1 OUT) (ASYNC)
> Rates: 44100, 48000, 88200, 96000, 176400, 192000, 352800, 384000,
705600, 768000
> Data packet interval: 125 us
> Bits: 32
> DSD raw: DOP=0, bitrev=0
> Channel map: FL FR
> Sync Endpoint: 0x81 (1 IN)
> Sync EP Interface: 1
> Sync EP Altset: 4
> Implicit Feedback Mode: No
>
> Capture:
> Status: Stop
> Interface 2
> Altset 1
> Format: S16_LE
> Channels: 2
> Endpoint: 0x82 (2 IN) (ASYNC)
> Rates: 44100, 48000, 88200, 96000, 176400, 192000, 352800, 384000,
705600, 768000
> Data packet interval: 125 us
> Bits: 16
> Channel map: FL FR
> Interface 2
> Altset 2
> Format: S24_3LE
> Channels: 2
> Endpoint: 0x82 (2 IN) (ASYNC)
> Rates: 44100, 48000, 88200, 96000, 176400, 192000, 352800, 384000,
705600, 768000
> Data packet interval: 125 us
> Bits: 24
> Channel map: FL FR
> Interface 2
> Altset 3
> Format: S32_LE
> Channels: 2
> Endpoint: 0x82 (2 IN) (ASYNC)
> Rates: 44100, 48000, 88200, 96000, 176400, 192000, 352800, 384000,
705600, 768000
> Data packet interval: 125 us
> Bits: 32
> Channel map: FL FR
> Interface 2
> Altset 4
> Format: SPECIAL DSD_U32_BE
> Channels: 2
> Endpoint: 0x82 (2 IN) (ASYNC)
> Rates: 44100, 48000, 88200, 96000, 176400, 192000, 352800, 384000,
705600, 768000
> Data packet interval: 125 us
> Bits: 32
> DSD raw: DOP=0, bitrev=0
> Channel map: FL FR
>
[-- Attachment #2: 0001-ALSA-usb-audio-Add-DSD-support-for-Comtrue-USB-Audio.patch --]
[-- Type: application/octet-stream, Size: 919 bytes --]
From 1b9dde1ef9987efcaf5d9bc9a932ac0ec3bbd8c5 Mon Sep 17 00:00:00 2001
From: "noble.yang" <noble.yang@comtrue-inc.com>
Date: Thu, 31 Jul 2025 12:11:11 +0800
Subject: [PATCH] ALSA: usb-audio: Add DSD support for Comtrue USB Audio device
Signed-off-by: noble.yang <noble.yang@comtrue-inc.com>
---
sound/usb/quirks.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/sound/usb/quirks.c b/sound/usb/quirks.c
index bd24f3a78ea9..cbb66125f839 100644
--- a/sound/usb/quirks.c
+++ b/sound/usb/quirks.c
@@ -2408,6 +2408,8 @@ static const struct usb_audio_quirk_flags_table quirk_flags_table[] = {
QUIRK_FLAG_DSD_RAW),
VENDOR_FLG(0x2d87, /* Cayin device */
QUIRK_FLAG_DSD_RAW),
+ VENDOR_FLG(0x2fc6, /* Comture-inc devices */
+ QUIRK_FLAG_DSD_RAW),
VENDOR_FLG(0x3336, /* HEM devices */
QUIRK_FLAG_DSD_RAW),
VENDOR_FLG(0x3353, /* Khadas devices */
--
2.48.1
[-- Attachment #3: cat proc asound card.txt --]
[-- Type: text/plain, Size: 2803 bytes --]
cat /proc/asound/card*/stream0
Comtrue-inc Comtrue-inc UAC2 Device EVM-GB at usb-0000:00:14.0-5, high speed : USB Audio
Playback:
Status: Stop
Interface 1
Altset 1
Format: S16_LE
Channels: 2
Endpoint: 0x01 (1 OUT) (ASYNC)
Rates: 44100, 48000, 88200, 96000, 176400, 192000, 352800, 384000, 705600, 768000
Data packet interval: 125 us
Bits: 16
Channel map: FL FR
Sync Endpoint: 0x81 (1 IN)
Sync EP Interface: 1
Sync EP Altset: 1
Implicit Feedback Mode: No
Interface 1
Altset 2
Format: S24_3LE
Channels: 2
Endpoint: 0x01 (1 OUT) (ASYNC)
Rates: 44100, 48000, 88200, 96000, 176400, 192000, 352800, 384000, 705600, 768000
Data packet interval: 125 us
Bits: 24
Channel map: FL FR
Sync Endpoint: 0x81 (1 IN)
Sync EP Interface: 1
Sync EP Altset: 2
Implicit Feedback Mode: No
Interface 1
Altset 3
Format: S32_LE
Channels: 2
Endpoint: 0x01 (1 OUT) (ASYNC)
Rates: 44100, 48000, 88200, 96000, 176400, 192000, 352800, 384000, 705600, 768000
Data packet interval: 125 us
Bits: 32
Channel map: FL FR
Sync Endpoint: 0x81 (1 IN)
Sync EP Interface: 1
Sync EP Altset: 3
Implicit Feedback Mode: No
Interface 1
Altset 4
Format: SPECIAL DSD_U32_BE
Channels: 2
Endpoint: 0x01 (1 OUT) (ASYNC)
Rates: 44100, 48000, 88200, 96000, 176400, 192000, 352800, 384000, 705600, 768000
Data packet interval: 125 us
Bits: 32
DSD raw: DOP=0, bitrev=0
Channel map: FL FR
Sync Endpoint: 0x81 (1 IN)
Sync EP Interface: 1
Sync EP Altset: 4
Implicit Feedback Mode: No
Capture:
Status: Stop
Interface 2
Altset 1
Format: S16_LE
Channels: 2
Endpoint: 0x82 (2 IN) (ASYNC)
Rates: 44100, 48000, 88200, 96000, 176400, 192000, 352800, 384000, 705600, 768000
Data packet interval: 125 us
Bits: 16
Channel map: FL FR
Interface 2
Altset 2
Format: S24_3LE
Channels: 2
Endpoint: 0x82 (2 IN) (ASYNC)
Rates: 44100, 48000, 88200, 96000, 176400, 192000, 352800, 384000, 705600, 768000
Data packet interval: 125 us
Bits: 24
Channel map: FL FR
Interface 2
Altset 3
Format: S32_LE
Channels: 2
Endpoint: 0x82 (2 IN) (ASYNC)
Rates: 44100, 48000, 88200, 96000, 176400, 192000, 352800, 384000, 705600, 768000
Data packet interval: 125 us
Bits: 32
Channel map: FL FR
Interface 2
Altset 4
Format: SPECIAL DSD_U32_BE
Channels: 2
Endpoint: 0x82 (2 IN) (ASYNC)
Rates: 44100, 48000, 88200, 96000, 176400, 192000, 352800, 384000, 705600, 768000
Data packet interval: 125 us
Bits: 32
DSD raw: DOP=0, bitrev=0
Channel map: FL FR
^ permalink raw reply related [flat|nested] 8+ messages in thread
* Re: [PATCH] ALSA: usb-audio: Add DSD support for Comtrue USB Audio device
2025-07-31 5:50 ` noble.yang
@ 2025-07-31 5:51 ` Takashi Iwai
0 siblings, 0 replies; 8+ messages in thread
From: Takashi Iwai @ 2025-07-31 5:51 UTC (permalink / raw)
To: noble.yang
Cc: 'Takashi Iwai', tiwai, perex, hulianqin, lina+kernel,
cyan.vtb, dan.carpenter, bsevens, linux-sound, linux-kernel
On Thu, 31 Jul 2025 07:50:13 +0200,
<noble.yang@comtrue-inc.com> wrote:
>
> Hello Takashi
>
> Please try download it as below link
> https://reurl.cc/8951Ro
You can't submit like this style. Please try to submit in the proper
format embedded in the email.
thanks,
Takashi
>
> Thanks
> Noble
>
> -----Original Message-----
> From: Takashi Iwai <tiwai@suse.de>
> Sent: Thursday, July 31, 2025 1:40 PM
> To: noble.yang@comtrue-inc.com
> Cc: tiwai@suse.com; perex@perex.cz; hulianqin@vivo.com;
> lina+kernel@asahilina.net; cyan.vtb@gmail.com; dan.carpenter@linaro.org;
> bsevens@google.com; linux-sound@vger.kernel.org;
> linux-kernel@vger.kernel.org
> Subject: Re: [PATCH] ALSA: usb-audio: Add DSD support for Comtrue USB Audio
> device
>
> On Thu, 31 Jul 2025 06:51:37 +0200,
> <noble.yang@comtrue-inc.com> wrote:
> >
> >
> > The vendor Comtrue Inc. (0x2fc6) produces USB audio chipsets like
> >
> > the CT7601 which are capable of Native DSD playback.
> >
> > This patch adds QUIRK_FLAG_DSD_RAW for Comtrue (VID 0x2fc6), which
> > enables
> >
> > native DSD playback (DSD_U32_LE) on their USB Audio device. This has
> > been
> >
> > verified under Ubuntu 25.04 with JRiver.
> >
> > Best Regards !
>
> I see no patch in the mail. Could you try to send via git-send-email?
>
>
> thanks,
>
> Takashi
>
> >
> > ===========================
> >
> > Noble Yang
> >
> > Cell : +886-955-347822
> >
> > 晨臻股份有限公司
> >
> > Comtrue Inc.
> >
> > www.comtrue-inc.com
> >
> > 新地址 : 新竹縣竹北市縣政十街10號2F之1
> >
> > 2F.-1, No. 10, Xianzheng 10th St., Zhubei City, Hsinchu County 302,
> > Taiwan
> > (R.O.C.)
> >
> > The information included in this email is privileged and confidential
> > and just for the exclusive use of the addressee.
> >
> > For people other than the addressee the use, disclosure and
> > reproduction is strictly prohibited.
> >
> > If this message has been received in error, please contact the sender
> > and delete all copies.
> >
> >
> > cat /proc/asound/card*/stream0
> > Comtrue-inc Comtrue-inc UAC2 Device EVM-GB at usb-0000:00:14.0-5, high
> > speed : USB Audio
> >
> > Playback:
> > Status: Stop
> > Interface 1
> > Altset 1
> > Format: S16_LE
> > Channels: 2
> > Endpoint: 0x01 (1 OUT) (ASYNC)
> > Rates: 44100, 48000, 88200, 96000, 176400, 192000, 352800, 384000,
> 705600, 768000
> > Data packet interval: 125 us
> > Bits: 16
> > Channel map: FL FR
> > Sync Endpoint: 0x81 (1 IN)
> > Sync EP Interface: 1
> > Sync EP Altset: 1
> > Implicit Feedback Mode: No
> > Interface 1
> > Altset 2
> > Format: S24_3LE
> > Channels: 2
> > Endpoint: 0x01 (1 OUT) (ASYNC)
> > Rates: 44100, 48000, 88200, 96000, 176400, 192000, 352800, 384000,
> 705600, 768000
> > Data packet interval: 125 us
> > Bits: 24
> > Channel map: FL FR
> > Sync Endpoint: 0x81 (1 IN)
> > Sync EP Interface: 1
> > Sync EP Altset: 2
> > Implicit Feedback Mode: No
> > Interface 1
> > Altset 3
> > Format: S32_LE
> > Channels: 2
> > Endpoint: 0x01 (1 OUT) (ASYNC)
> > Rates: 44100, 48000, 88200, 96000, 176400, 192000, 352800, 384000,
> 705600, 768000
> > Data packet interval: 125 us
> > Bits: 32
> > Channel map: FL FR
> > Sync Endpoint: 0x81 (1 IN)
> > Sync EP Interface: 1
> > Sync EP Altset: 3
> > Implicit Feedback Mode: No
> > Interface 1
> > Altset 4
> > Format: SPECIAL DSD_U32_BE
> > Channels: 2
> > Endpoint: 0x01 (1 OUT) (ASYNC)
> > Rates: 44100, 48000, 88200, 96000, 176400, 192000, 352800, 384000,
> 705600, 768000
> > Data packet interval: 125 us
> > Bits: 32
> > DSD raw: DOP=0, bitrev=0
> > Channel map: FL FR
> > Sync Endpoint: 0x81 (1 IN)
> > Sync EP Interface: 1
> > Sync EP Altset: 4
> > Implicit Feedback Mode: No
> >
> > Capture:
> > Status: Stop
> > Interface 2
> > Altset 1
> > Format: S16_LE
> > Channels: 2
> > Endpoint: 0x82 (2 IN) (ASYNC)
> > Rates: 44100, 48000, 88200, 96000, 176400, 192000, 352800, 384000,
> 705600, 768000
> > Data packet interval: 125 us
> > Bits: 16
> > Channel map: FL FR
> > Interface 2
> > Altset 2
> > Format: S24_3LE
> > Channels: 2
> > Endpoint: 0x82 (2 IN) (ASYNC)
> > Rates: 44100, 48000, 88200, 96000, 176400, 192000, 352800, 384000,
> 705600, 768000
> > Data packet interval: 125 us
> > Bits: 24
> > Channel map: FL FR
> > Interface 2
> > Altset 3
> > Format: S32_LE
> > Channels: 2
> > Endpoint: 0x82 (2 IN) (ASYNC)
> > Rates: 44100, 48000, 88200, 96000, 176400, 192000, 352800, 384000,
> 705600, 768000
> > Data packet interval: 125 us
> > Bits: 32
> > Channel map: FL FR
> > Interface 2
> > Altset 4
> > Format: SPECIAL DSD_U32_BE
> > Channels: 2
> > Endpoint: 0x82 (2 IN) (ASYNC)
> > Rates: 44100, 48000, 88200, 96000, 176400, 192000, 352800, 384000,
> 705600, 768000
> > Data packet interval: 125 us
> > Bits: 32
> > DSD raw: DOP=0, bitrev=0
> > Channel map: FL FR
> >
>
> cat /proc/asound/card*/stream0
> Comtrue-inc Comtrue-inc UAC2 Device EVM-GB at usb-0000:00:14.0-5, high speed : USB Audio
>
> Playback:
> Status: Stop
> Interface 1
> Altset 1
> Format: S16_LE
> Channels: 2
> Endpoint: 0x01 (1 OUT) (ASYNC)
> Rates: 44100, 48000, 88200, 96000, 176400, 192000, 352800, 384000, 705600, 768000
> Data packet interval: 125 us
> Bits: 16
> Channel map: FL FR
> Sync Endpoint: 0x81 (1 IN)
> Sync EP Interface: 1
> Sync EP Altset: 1
> Implicit Feedback Mode: No
> Interface 1
> Altset 2
> Format: S24_3LE
> Channels: 2
> Endpoint: 0x01 (1 OUT) (ASYNC)
> Rates: 44100, 48000, 88200, 96000, 176400, 192000, 352800, 384000, 705600, 768000
> Data packet interval: 125 us
> Bits: 24
> Channel map: FL FR
> Sync Endpoint: 0x81 (1 IN)
> Sync EP Interface: 1
> Sync EP Altset: 2
> Implicit Feedback Mode: No
> Interface 1
> Altset 3
> Format: S32_LE
> Channels: 2
> Endpoint: 0x01 (1 OUT) (ASYNC)
> Rates: 44100, 48000, 88200, 96000, 176400, 192000, 352800, 384000, 705600, 768000
> Data packet interval: 125 us
> Bits: 32
> Channel map: FL FR
> Sync Endpoint: 0x81 (1 IN)
> Sync EP Interface: 1
> Sync EP Altset: 3
> Implicit Feedback Mode: No
> Interface 1
> Altset 4
> Format: SPECIAL DSD_U32_BE
> Channels: 2
> Endpoint: 0x01 (1 OUT) (ASYNC)
> Rates: 44100, 48000, 88200, 96000, 176400, 192000, 352800, 384000, 705600, 768000
> Data packet interval: 125 us
> Bits: 32
> DSD raw: DOP=0, bitrev=0
> Channel map: FL FR
> Sync Endpoint: 0x81 (1 IN)
> Sync EP Interface: 1
> Sync EP Altset: 4
> Implicit Feedback Mode: No
>
> Capture:
> Status: Stop
> Interface 2
> Altset 1
> Format: S16_LE
> Channels: 2
> Endpoint: 0x82 (2 IN) (ASYNC)
> Rates: 44100, 48000, 88200, 96000, 176400, 192000, 352800, 384000, 705600, 768000
> Data packet interval: 125 us
> Bits: 16
> Channel map: FL FR
> Interface 2
> Altset 2
> Format: S24_3LE
> Channels: 2
> Endpoint: 0x82 (2 IN) (ASYNC)
> Rates: 44100, 48000, 88200, 96000, 176400, 192000, 352800, 384000, 705600, 768000
> Data packet interval: 125 us
> Bits: 24
> Channel map: FL FR
> Interface 2
> Altset 3
> Format: S32_LE
> Channels: 2
> Endpoint: 0x82 (2 IN) (ASYNC)
> Rates: 44100, 48000, 88200, 96000, 176400, 192000, 352800, 384000, 705600, 768000
> Data packet interval: 125 us
> Bits: 32
> Channel map: FL FR
> Interface 2
> Altset 4
> Format: SPECIAL DSD_U32_BE
> Channels: 2
> Endpoint: 0x82 (2 IN) (ASYNC)
> Rates: 44100, 48000, 88200, 96000, 176400, 192000, 352800, 384000, 705600, 768000
> Data packet interval: 125 us
> Bits: 32
> DSD raw: DOP=0, bitrev=0
> Channel map: FL FR
>
^ permalink raw reply [flat|nested] 8+ messages in thread
* [PATCH] ALSA: usb-audio: Add DSD support for Comtrue USB Audio device
@ 2025-07-31 8:15 noble228
2025-07-31 9:15 ` Takashi Iwai
0 siblings, 1 reply; 8+ messages in thread
From: noble228 @ 2025-07-31 8:15 UTC (permalink / raw)
To: tiwai
Cc: perex, hulianqin, lina+kernel, cyan.vtb, dan.carpenter, bsevens,
linux-sound, linux-kernel, noble.yang
From: "noble.yang" <noble.yang@comtrue-inc.com>
Signed-off-by: noble.yang <noble.yang@comtrue-inc.com>
---
sound/usb/quirks.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/sound/usb/quirks.c b/sound/usb/quirks.c
index bd24f3a78ea9..cbb66125f839 100644
--- a/sound/usb/quirks.c
+++ b/sound/usb/quirks.c
@@ -2408,6 +2408,8 @@ static const struct usb_audio_quirk_flags_table quirk_flags_table[] = {
QUIRK_FLAG_DSD_RAW),
VENDOR_FLG(0x2d87, /* Cayin device */
QUIRK_FLAG_DSD_RAW),
+ VENDOR_FLG(0x2fc6, /* Comture-inc devices */
+ QUIRK_FLAG_DSD_RAW),
VENDOR_FLG(0x3336, /* HEM devices */
QUIRK_FLAG_DSD_RAW),
VENDOR_FLG(0x3353, /* Khadas devices */
--
2.48.1
^ permalink raw reply related [flat|nested] 8+ messages in thread
* Re: [PATCH] ALSA: usb-audio: Add DSD support for Comtrue USB Audio device
2025-07-31 8:15 noble228
@ 2025-07-31 9:15 ` Takashi Iwai
0 siblings, 0 replies; 8+ messages in thread
From: Takashi Iwai @ 2025-07-31 9:15 UTC (permalink / raw)
To: noble228
Cc: tiwai, perex, hulianqin, lina+kernel, cyan.vtb, dan.carpenter,
bsevens, linux-sound, linux-kernel, noble.yang
On Thu, 31 Jul 2025 10:15:59 +0200,
noble228@gmail.com wrote:
>
> From: "noble.yang" <noble.yang@comtrue-inc.com>
>
Could you fill the patch description? You already wrote enough
information in the original post, and put the text here.
> --- a/sound/usb/quirks.c
> +++ b/sound/usb/quirks.c
> @@ -2408,6 +2408,8 @@ static const struct usb_audio_quirk_flags_table quirk_flags_table[] = {
> QUIRK_FLAG_DSD_RAW),
> VENDOR_FLG(0x2d87, /* Cayin device */
> QUIRK_FLAG_DSD_RAW),
> + VENDOR_FLG(0x2fc6, /* Comture-inc devices */
The indentation doesn't look right. Try to use tabs.
thanks,
Takashi
^ permalink raw reply [flat|nested] 8+ messages in thread
* [PATCH] ALSA: usb-audio: Add DSD support for Comtrue USB Audio device
@ 2025-07-31 11:06 noble228
2025-07-31 15:01 ` Takashi Iwai
0 siblings, 1 reply; 8+ messages in thread
From: noble228 @ 2025-07-31 11:06 UTC (permalink / raw)
To: tiwai
Cc: perex, hulianqin, lina+kernel, cyan.vtb, dan.carpenter, bsevens,
linux-sound, linux-kernel, noble.yang
From: "noble.yang" <noble.yang@comtrue-inc.com>
The vendor Comtrue Inc. (0x2fc6) produces USB audio chipsets like
the CT7601 which are capable of Native DSD playback.
This patch adds QUIRK_FLAG_DSD_RAW for Comtrue (VID 0x2fc6), which enables
native DSD playback (DSD_U32_LE) on their USB Audio device. This has been
verified under Ubuntu 25.04 with JRiver.
Signed-off-by: noble.yang <noble.yang@comtrue-inc.com>
---
sound/usb/quirks.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/sound/usb/quirks.c b/sound/usb/quirks.c
index bd24f3a78ea9..cbb66125f839 100644
--- a/sound/usb/quirks.c
+++ b/sound/usb/quirks.c
@@ -2408,6 +2408,8 @@ static const struct usb_audio_quirk_flags_table quirk_flags_table[] = {
QUIRK_FLAG_DSD_RAW),
VENDOR_FLG(0x2d87, /* Cayin device */
QUIRK_FLAG_DSD_RAW),
+ VENDOR_FLG(0x2fc6, /* Comture-inc devices */
+ QUIRK_FLAG_DSD_RAW),
VENDOR_FLG(0x3336, /* HEM devices */
QUIRK_FLAG_DSD_RAW),
VENDOR_FLG(0x3353, /* Khadas devices */
--
2.48.1
^ permalink raw reply related [flat|nested] 8+ messages in thread
* Re: [PATCH] ALSA: usb-audio: Add DSD support for Comtrue USB Audio device
2025-07-31 11:06 [PATCH] ALSA: usb-audio: Add DSD support for Comtrue USB Audio device noble228
@ 2025-07-31 15:01 ` Takashi Iwai
0 siblings, 0 replies; 8+ messages in thread
From: Takashi Iwai @ 2025-07-31 15:01 UTC (permalink / raw)
To: noble228
Cc: tiwai, perex, hulianqin, lina+kernel, cyan.vtb, dan.carpenter,
bsevens, linux-sound, linux-kernel, noble.yang
On Thu, 31 Jul 2025 13:06:14 +0200,
noble228@gmail.com wrote:
>
> From: "noble.yang" <noble.yang@comtrue-inc.com>
>
> The vendor Comtrue Inc. (0x2fc6) produces USB audio chipsets like
> the CT7601 which are capable of Native DSD playback.
>
> This patch adds QUIRK_FLAG_DSD_RAW for Comtrue (VID 0x2fc6), which enables
> native DSD playback (DSD_U32_LE) on their USB Audio device. This has been
> verified under Ubuntu 25.04 with JRiver.
>
>
> Signed-off-by: noble.yang <noble.yang@comtrue-inc.com>
Thanks, applied now.
There were still a bit of white-space issues and I fixed in my side.
At the next time, please try to run scripts/checkpatch.pl before
submission.
Takashi
^ permalink raw reply [flat|nested] 8+ messages in thread
end of thread, other threads:[~2025-07-31 15:01 UTC | newest]
Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-07-31 11:06 [PATCH] ALSA: usb-audio: Add DSD support for Comtrue USB Audio device noble228
2025-07-31 15:01 ` Takashi Iwai
-- strict thread matches above, loose matches on Subject: below --
2025-07-31 8:15 noble228
2025-07-31 9:15 ` Takashi Iwai
2025-07-31 4:51 noble.yang
2025-07-31 5:39 ` Takashi Iwai
2025-07-31 5:50 ` noble.yang
2025-07-31 5:51 ` Takashi Iwai
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).