At Thu, 13 Dec 2012 17:21:55 +1100, Damien Zammit wrote:
Hi I thought I would post an update on this thread. I realise it is quite old but what I have now is relevant.
/*
- Digidesign Mbox 2
- Interface list:
- 0 Firmware
- 1 Control
- 2 Playback (Async)
- 3 IEC958 (Ignore)
- 4 Record (Sync)
- 5 Record (Async) (Ignore)
- 6 MIDI
*/
My previous posts may have demonstrated a lack of understanding of how USB audio devices work, but I believe I have learnt a bit more since last time I posted.
I have determined that there is a combination of altsettings for this device that allows hardcoding of them and still provides duplex support, ie, the fact that it supports multiple endpoints is irrelevant. If you use interfaces 2 and 4 both with #2 altsetting, hardcode the samplerate to 48000Hz (max) and the bit depth at 24 (max) and send some control magic to set it up, it works great!
It also requires a boot quirk to load firmware into the device from an onboard memory chip. I determined the control sequence to do so but it also needs a 3 second delay while the firmware activates and I dont have the knowledge to do a proper in-kernel delay.
In summary there are 3 parts to make this device work:
- Boot quirk - load firmware and wait 3 seconds
- Set up samplerate/bitrate in the device once and force S24_3BE format.
- Select interfaces 2 and 4 both with altsetting 2, and interface 6 for midi.
I can provide working code for all three steps (except the waiting part is dodgey). I can't submit a proper patch.
Why not...?
Takashi