I spent two days hacking on USB and USB audio in particular and pushed the result out to sources about a week ago. usb/usbaudio can now drive the following audio devices (and probably more, but I haven't tested them). Below is the output from running usb/usbaudio -V: Xitel AN1: Audio output unit 1 Audio Feature Unit 2 for Playback mute control on master channel bass control on master channel treble control on master channel volume control on channel 1 volume control on channel 2 Interface 1, alt 1: mono, 8 bits, frequency variable between 4990 and 55010 Interface 1, alt 2: stereo, 8 bits, frequency variable between 4990 and 55010 Interface 1, alt 3: mono, 16 bits, frequency variable between 4990 and 55010 Interface 1, alt 4: stereo, 16 bits, frequency variable between 4990 and 55010 Interface 1, alt 5: mono, 20 bits, frequency variable between 4990 and 55010 Interface 1, alt 6: stereo, 20 bits, frequency variable between 4990 and 55010 Buttons on endpoint 3 Playback on endpoint 4 Playback speed control, min 4990, max 55010, step 1, value 44100 Playback mute control, value 0 Playback volume control, min -15616, max 0, step 256, values[1] -5376 [2] -5376 Playback bass control, min 0, max 96, step 8, value 0 Playback treble control, min 0, max 24, step 8, value 0 Playback channels control, min 1, max 2, value 2 Playback resolution control, min 8, max 20, value 16 Philips USB speakers, model DSS 370/17: Audio output unit 1 Audio Feature Unit 2 for Playback mute control on master channel bass control on master channel treble control on master channel bassboost control on master channel volume control on channel 1 volume control on channel 2 Interface 1, alt 1: mono, 8 bits, frequency variable between 4990 and 55010 Interface 1, alt 2: stereo, 8 bits, frequency variable between 4990 and 55010 Interface 1, alt 3: mono, 16 bits, frequency variable between 4990 and 55010 Interface 1, alt 4: stereo, 16 bits, frequency variable between 4990 and 55010 Interface 1, alt 5: mono, 20 bits, frequency variable between 4990 and 55010 Interface 1, alt 6: stereo, 20 bits, frequency variable between 4990 and 55010 Buttons on endpoint 3 Playback on endpoint 4 Playback speed control, min 4990, max 55010, step 1, value 44100 Playback mute control, value 0 Playback volume control, min -15616, max 0, step 256, values[1] -10752 [2] -10752 Playback bass control, min 0, max 96, step 8, value 0 Playback treble control, min 0, max 24, step 8, value 0 Playback bassboost control, value 0 Playback channels control, min 1, max 2, value 2 Playback resolution control, min 8, max 20, value 16 Edirol UA-3: Audio output unit 1 Device can record from Line connector Audio input unit 13 Device can play to USB Streaming Audio Selector Unit 11 Audio Feature Unit 9 for Playback mute control on master channel volume control on channel 1 volume control on channel 2 Interface 1, alt 1: mono, 16 bits, discrete frequencies are: 44100 Interface 1, alt 2: stereo, 16 bits, discrete frequencies are: 44100 Interface 2, alt 1: mono, 16 bits, discrete frequencies are: 32000 44100 48000 Interface 2, alt 2: stereo, 16 bits, discrete frequencies are: 32000 44100 48000 Buttons on endpoint 1 Playback on endpoint 2 Record on endpoint 3 Playback speed control, min 44100, max 44100, value 44100 Playback mute control, value 0 Playback volume control, min -5888, max 2048, step 256, values[1] -2048 [2] -2048 Playback channels control, min 1, max 2, value 2 Playback resolution control, min 16, max 16, value 16 Record speed control, min 32000, max 48000, value 44100 Record channels control, min 1, max 2, value 2 Record resolution control, min 16, max 16, value 16 Edirol UA-1X (haven't tested recording, but I believe it'll work): Audio output unit 1 Audio Feature Unit 3 for Playback mute control on master channel volume control on channel 1 volume control on channel 2 Device can record from Audio input unit 5 Device can play to USB Streaming Interface 1, alt 1: stereo, 16 bits, discrete frequencies are: 32000 44100 48000 Interface 1, alt 2: mono, 16 bits, discrete frequencies are: 32000 44100 48000 Interface 1, alt 3: stereo, 8 bits, discrete frequencies are: 32000 44100 48000 Interface 1, alt 4: mono, 8 bits, discrete frequencies are: 32000 44100 48000 Interface 1, alt 5: stereo, 8 bits, discrete frequencies are: 32000 44100 48000 Interface 1, alt 6: mono, 8 bits, discrete frequencies are: 32000 44100 48000 Interface 2, alt 1: stereo, 16 bits, discrete frequencies are: 48000 Interface 2, alt 2: mono, 16 bits, discrete frequencies are: 48000 Interface 2, alt 3: stereo, 16 bits, discrete frequencies are: 44100 Interface 2, alt 4: mono, 16 bits, discrete frequencies are: 44100 Interface 2, alt 5: stereo, 16 bits, discrete frequencies are: 32000 Interface 2, alt 6: mono, 16 bits, discrete frequencies are: 32000 Interface 2, alt 7: stereo, 16 bits, discrete frequencies are: 22050 Interface 2, alt 8: mono, 16 bits, discrete frequencies are: 22050 Interface 2, alt 9: stereo, 16 bits, discrete frequencies are: 16000 Interface 2, alt 10: mono, 16 bits, discrete frequencies are: 16000 Interface 2, alt 11: stereo, 8 bits, discrete frequencies are: 16000 Interface 2, alt 12: mono, 8 bits, discrete frequencies are: 16000 Interface 2, alt 13: stereo, 8 bits, discrete frequencies are: 8000 Interface 2, alt 14: mono, 8 bits, discrete frequencies are: 8000 Interface 2, alt 15: stereo, 16 bits, discrete frequencies are: 11025 Playback on endpoint 2 Record on endpoint 4 Playback speed control, min 32000, max 48000, value 44100 Playback mute control, value 0 Playback volume control, min -32768, max 0, step 256, values[1] 0 [2] 0 Playback channels control, min 1, max 2, value 2 Playback resolution control, min 8, max 16, value 16 Record speed control, min 44100, max 44100, value 44100 Record channels control, min 1, max 2, value 2 Record resolution control, min 8, max 16, value 16 Xitel Pro HiFi-Link (Although I could set and read back the volume, it didn't seem to affect the playback. Strange): Audio output unit 1 Audio Feature Unit 9 for Playback mute control on master channel volume control on channel 1 volume control on channel 2 Interface 1, alt 1: stereo, 16 bits, discrete frequencies are: 48000 Playback on endpoint 1 Buttons on endpoint 3 Warning, can't configure playout for 44100 Hz, configuring for 48000 Hz instead Playback speed control, min 48000, max 48000, value 48000 Playback mute control, value 0 Playback volume control, min -12256, max -16, step 48, values[1] -16 [2] -16 Playback channels control, min 2, max 2, value 2 Playback resolution control, min 16, max 16, value 16 And here's one that doesn't work yet; volume needs to be controlled through the mixer and I haven't had time to write mixer code yet. Volunteers should read www.usb.org/developers/devclass_docs/audio10.pdf It describes how to control a mixer. A warning, look at the attachment to see what you're up against. Creative SB0270 Audio output unit 1 Device can record from Device can record from Line connector Device can record from Audio input unit 7 Device can play to USB Streaming Audio Selector Unit 8 Audio Feature Unit 9, not known what for mute control on master channel volume control on channel 1 volume control on channel 2 Audio Feature Unit 10 for Record mute control on master channel volume control on master channel agc control on master channel Audio Feature Unit 11 for Record Second feature unit (10, 11) on record mute control on master channel volume control on channel 1 volume control on channel 2 Audio Feature Unit 12 for Record Second feature unit (11, 12) on record mute control on master channel Audio Feature Unit 13 for Record Second feature unit (12, 13) on record mute control on master channel volume control on master channel Audio Feature Unit 14 for Record Second feature unit (13, 14) on record mute control on master channel volume control on channel 1 volume control on channel 2 Audio Mixer Unit 15 Interface 1, alt 1: stereo, 16 bits, discrete frequencies are: 48000 Interface 2, alt 1: stereo, 16 bits, discrete frequencies are: 48000 44100 Playback on endpoint 1 Record on endpoint 2 Warning, can't configure playout for 44100 Hz, configuring for 48000 Hz instead Playback speed control, min 48000, max 48000, value 48000 Playback channels control, min 2, max 2, value 2 Playback resolution control, min 16, max 16, value 16 Record speed control, value -2147483648 Record mute control, value 1 Record volume control, min 0, max 12240, step 48, values[1] 9168 [2] 9168 Record agc control Record channels control, min 2, max 2, value 2 Record resolution control, min 16, max 16, value 16 usb/usbaudio: Can't set record speed