[alsa-devel] [PATCH - Fix Fast Track Ultra series: 44.1/88.1 kHz 1/Fix playback/capture issues and related chrashes at 44100 Hz and 88200 Hz for M-Audio Fast Track Ultra series.

Felix Homann fexpop at web.de
Wed Jul 7 15:19:51 CEST 2010


Am 07.07.2010 14:44, schrieb Clemens Ladisch:
> The descriptors already list these rates, so in theory, the existing
> code that sets UAC_EP_CS_ATTR_SAMPLE_RATE should already have enabled
> this.  Didn't it?  In other words, what is the difference in the
> explicitly specified audioformat?

I can only tell you the difference to the behaviour of latest git Alsa 
before this patch:

44100 and 88200 Hz had already been enabled. But the device could not 
properly be used at these sampling rates. Everything would sound 
distorted. After a while of running the device at these sample rates, my 
systems had a tendency to crash/freeze.

> (I have the suspicion that we don't actually need a AUDIO_FIXED_ENDPOINT
> quirk for these devices.)
>
>    

Something must be in this AUDIO_FIXED_ENDPOINT quirk, since the device 
now works properly and stable @44.1/88.2 kHz. I don't know the exact 
reason, since I really don't understand all this stuff. I just have this 
device and try to fix it's behaviour.

>> * apparently, fixes some crashes, too
>>      
> When do these crashes happen?
>    

See above: System crashes occured when using the device at 44.1/88.2 kHz.

> If you don't have the exclusive copyright for the code in this patch,
> there needs to be a Signed-off-by line from him, too.  OTOH, a table
> like this probably isn't copyrightable at all.
>    

If the patch is copyrightable then its copyright belongs to you: The 
patch I send some time ago to enable basic support for these devices was 
an updated version of *your* patch send some time ago to a mailing list. 
The patch dhubsith posted was explicitly based on existing code in 
quirks-table.h and the existing quirk.

Take a look at the entry for the Digidesign Mbox (credited to you): It's 
essentially the same.

>> -	USB_DEVICE(0x0763, 0x2080),
>> +		USB_DEVICE(0x0763, 0x2081),
>> ...
>>      
> This replaces the ID of the Ultra 8 ID with that of the Ultra 8R ...
>    

Ooops. I've messed it up... (I've just got the 8R version so I didn't 
notice...)

>>   	USB_DEVICE(0x0763, 0x2081),
>> -	.driver_info = ...
>> +		.driver_info = ...
>>      
> ... and this just changes the other 8R entry.  So now the 8 doesn't
> have an entry.
>
>    

Actually both quirk blocks shoud be the same except for the USB_DEVICE 
lines:

USB_DEVICE(0x0763, 0x2080) <- Fast Track Ultra
USB_DEVICE(0x0763, 0x2081) <- Fast Track Ultra 8R

(Actually there's no "Fast Track Ultra 8")


Sorry for having messed the patch up and sending it too soon. Shall I 
send a new patch, or would you consider manually editing it yourself 
before eventually putting it into git?

Kind regards,

Felix


More information about the Alsa-devel mailing list