[alsa-devel] [PATCH] ALSA: usb: Work around CM6631 sample rate change bug

Torstein Hegge hegge at resisty.net
Tue Mar 5 22:24:24 CET 2013


On Tue, Mar 05, 2013 at 11:35:35AM +0100, Clemens Ladisch wrote:
> Torstein Hegge wrote:
> > On Tue, Mar 05, 2013 at 08:55:03AM +0100, Clemens Ladisch wrote:
> >> From that driver's .inf file:
> >>
> >> %CMUACWO.DeviceDesc%=CMUACWO,USB\VID_0D8C&PID_0301&MI_00
> >> %CMUACWO.DeviceDesc%=CMUACWO,USB\VID_0D8C&PID_0302&MI_00
> >> %CMUACWO.DeviceDesc%=CMUACWO,USB\VID_0D8C&PID_0304&MI_00
> >> %CMUACWO.DeviceDesc%=CMUACWO,USB\VID_0D8C&PID_0305&MI_00
> >> %CMUACWO.DeviceDesc%=CMUACWO,USB\VID_0D8C&PID_0306&MI_00
> >> %CMUACWO.DeviceDesc%=CMUACWO,USB\VID_0D8C&PID_0309&MI_00
> >> %CMUACWO.DeviceDesc%=CMUACWO,USB\VID_0D8C&PID_0310&MI_00
> >> %CMUACWO.DeviceDesc%=CMUACWO,USB\VID_0D8C&PID_0311&MI_00	;CM6610A
> >> %CMUACWO.DeviceDesc%=CMUACWO,USB\VID_0D8C&PID_0312&MI_00	;CM6620A
> >> %CMUACWO.DeviceDesc%=CMUACWO,USB\VID_0D8C&PID_0313&MI_00	;CM6630A
> >> %CMUACWO.DeviceDesc%=CMUACWO,USB\VID_0D8C&PID_0314&MI_00	;CM6631A
> >> %CMUACWO.DeviceDesc%=CMUACWO,USB\VID_0D8C&PID_0319&MI_00	;CM6631A
> >> %CMUACWO.DeviceDesc%=CMUACWO,USB\VID_0D8C&PID_0315&MI_00	;CM6632A
> >> %CMUACWO.DeviceDesc%=CMUACWO,USB\VID_200C&PID_1030&MI_00
> >> %CMUACWO.DeviceDesc%=CMUACWO,USB\VID_054C&PID_06CF&MI_00
> >
> > I'm not quite sure how to interpret that. I guess most of those are
> > similar devices that doesn't necessarily need this workaround?
> 
> Those are all the IDs that the C-Media driver attaches to.  The
> hardware is always the same; I would be surprised if the firmware
> did not have the same bug.

The ids listed covers CM6610, CM6620 and CM6631, which are distinct
pieces of hardware, or at least they are sold as if they were. It might
be a fair assumption that all current C-Media UAC V2.0 devices have this
issue. However, I'm not able to test with anything other than CM6631.

The complete list then looks like:

switch (chip->usb_id) {
/* C-Media CM6610/CM6620/CM6631 */
case USB_ID(0x054c, 0x06cf): /* Sony */
case USB_ID(0x0b05, 0x17a8): /* Asus Xonar Essence One */
case USB_ID(0x0d8c, 0x0301):
case USB_ID(0x0d8c, 0x0302):
case USB_ID(0x0d8c, 0x0304): /* CM6631 (Schiit) */
case USB_ID(0x0d8c, 0x0305):
case USB_ID(0x0d8c, 0x0306):
case USB_ID(0x0d8c, 0x0309): /* CM6631 */
case USB_ID(0x0d8c, 0x0310):
case USB_ID(0x0d8c, 0x0311): /* CM6610A */
case USB_ID(0x0d8c, 0x0312): /* CM6620A */
case USB_ID(0x0d8c, 0x0313): /* CM6630A */
case USB_ID(0x0d8c, 0x0314): /* CM6631A */
case USB_ID(0x0d8c, 0x0315): /* CM6632A */
case USB_ID(0x0d8c, 0x0319): /* CM6631A */
case USB_ID(0x200c, 0x1030): /* Reloop */
        [...]
}

Torstein


More information about the Alsa-devel mailing list