All of lore.kernel.org
 help / color / mirror / Atom feed
* [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
* [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
* [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

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  4:51 [PATCH] ALSA: usb-audio: Add DSD support for Comtrue USB Audio device noble.yang
2025-07-31  5:39 ` Takashi Iwai
2025-07-31  5:50   ` noble.yang
2025-07-31  5:51     ` 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 11:06 noble228
2025-07-31 15:01 ` Takashi Iwai

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.