C-Media 6206 usb sound garbled when channels > 2 (armv7h)

This forum is for topics specific to the Raspberry Pi and Arch Linux ARM

C-Media 6206 usb sound garbled when channels > 2 (armv7h)

Postby cadilhac » Thu Aug 31, 2017 8:18 am

Hi there everyone;

I've been spending an awful lot of hours on having a C-Media 6206 based USB sound card work on my RPi3.

SYMPTOMS: Using only ALSA, stereo output works, increasing the number of channels gives garbled sound on all outputs. The sound is in some kind of saturation; it is the correct pitch, length, etc. but has some kind of heavy static.

In commands:
Code: Select all
$ aplay -D surround21 /some/wave/file
garbled sound
$ aplay -D surround51 /some/wave/file
garbled sound
$ aplay -D surround71 /some/wave/file
no sound
$ aplay -D default /some/wave/file
no problem

I've also used upmixing in order to not miss anything.

WHY IT SHOULD WORK: It does work on my x86_64 Arch Linux with kernel 4.11.9-1. Same conf.

CONF: None, nix, nada. No asound.conf, asoundrc or the such. I'm using ALSA to have a stripped down conf; the end goal is to use pulseaudio, where the symptoms are the same. The builtin sound card is blacklisted via `modprobe.d`.

LOGS: On both machines, there are some spurious messages when connecting the card, but it works on one of them:
On sane machine:
Code: Select all
usb 1-1.2: new full-speed USB device number 14 using ehci-pci
usb 1-1.2: current rate 30464 is different from the runtime rate 96000
usb 1-1.2: Warning! Unlikely big volume range (=8065), cval->res is probably wrong.
usb 1-1.2: [9] FU [Mic Playback Volume] ch = 2, val = -6144/1921/1
usb 1-1.2: Warning! Unlikely big volume range (=8065), cval->res is probably wrong.
usb 1-1.2: [11] FU [Line Playback Volume] ch = 2, val = -6144/1921/1
usb 1-1.2: Warning! Unlikely big volume range (=6928), cval->res is probably wrong.
usb 1-1.2: [8] FU [Mic Capture Volume] ch = 2, val = -4096/2832/1
usb 1-1.2: Warning! Unlikely big volume range (=6928), cval->res is probably wrong.
usb 1-1.2: [15] FU [Line Capture Volume] ch = 2, val = -4096/2832/1
usb 1-1.2: Warning! Unlikely big volume range (=6928), cval->res is probably wrong.
usb 1-1.2: [2] FU [PCM Capture Volume] ch = 2, val = -4096/2832/1
input: USB Sound Device         as /devices/pci0000:00/0000:00:1d.0/usb1/1-1/1-1.2/1-1.2:1.3/0003:0D8C:0102.0005/input/input29
hid-generic 0003:0D8C:0102.0005: input,hidraw0: USB HID v1.00 Device [USB Sound Device        ] on usb-0000:00:1d.0-1.2/input3


On RPi3:
Code: Select all
usb 1-1.3: new full-speed USB device number 5 using dwc_otg
usb 1-1.3: New USB device found, idVendor=0d8c, idProduct=0102
usb 1-1.3: New USB device strings: Mfr=0, Product=2, SerialNumber=0
usb 1-1.3: Product: USB Sound Device       
usb 1-1.3: current rate 30464 is different from the runtime rate 96000
usb 1-1.3: Warning! Unlikely big volume range (=8065), cval->res is probably wrong.
usb 1-1.3: [9] FU [Mic Playback Volume] ch = 2, val = -6144/1921/1
usb 1-1.3: Warning! Unlikely big volume range (=8065), cval->res is probably wrong.
usb 1-1.3: [11] FU [Line Playback Volume] ch = 2, val = -6144/1921/1
usb 1-1.3: Warning! Unlikely big volume range (=6928), cval->res is probably wrong.
usb 1-1.3: [8] FU [Mic Capture Volume] ch = 2, val = -4096/2832/1
usb 1-1.3: Warning! Unlikely big volume range (=6928), cval->res is probably wrong.
usb 1-1.3: [15] FU [Line Capture Volume] ch = 2, val = -4096/2832/1
usb 1-1.3: Warning! Unlikely big volume range (=6928), cval->res is probably wrong.
usb 1-1.3: [2] FU [PCM Capture Volume] ch = 2, val = -4096/2832/1
input: USB Sound Device         as /devices/platform/soc/3f980000.usb/usb1/1-1/1-1.3/1-1.3:1.3/0003:0D8C:0102.0002/input/input1
hid-generic 0003:0D8C:0102.0002: input,hidraw0: USB HID v1.00 Device [USB Sound Device        ] on usb-3f980000.usb-1.3/input3


VERSIONS: RPi3 is a recently installed Linux 4.9.43-1-ARCH #1 SMP Fri Aug 18 01:10:29 UTC 2017 armv7l GNU/Linux

I do know that that sound card has some quirks installed (see https://github.com/torvalds/linux/blob/ ... ks.c#L1005 ), but there's been no change in that file in the past 6 years. However, it may well be the case that I need a more recent kernel. I'm a tad bit afraid that upgrading to AArch64 would break the bluetooth at this point, but if that's the only option, I'll go that way.

Opinions, help, sarcasm always welcome. Thanks!

Cheers;
M.
cadilhac
 
Posts: 1
Joined: Thu Aug 31, 2017 7:48 am

Return to Raspberry Pi

Who is online

Users browsing this forum: No registered users and 3 guests