Hi,
On Thursday 25 March 2010 04:33:54 ext Candelaria Villarreal, Jorge wrote:
Hi,
I am trying to add support for a digital mixer. The digital mixer is connected like the following example:
Path 1 -------\ Path 2 --------\ MIXER ------> DAC----> ... Path 3 --------/ Path 4 -------/
However, I think ALSA does not support this configuration, as the DAC should be the first element in a route. I tried adding the DAC to the route first, and connected its output to the mixer inputs, like this:
{"Mixer", "Multimedia Ext Switch", "HSDAC Left"}, {"Mixer", "Multimedia Ext Switch", "HSDAC Right"}, {"Mixer", "Voice Switch", "HSDAC Left"}, {"Mixer", "Voice Switch", "HSDAC Right"}, {"Mixer", "Multimedia Uplink Switch", "HSDAC Left"}, {"Mixer", "Multimedia Uplink Switch", "HSDAC Right"}, {"Mixer", "Multimedia Switch", "HSDAC Left"}, {"Mixer", "Multimedia Switch", "HSDAC Right"},
But this does not seem to work. Can anyone give me some tips? Any comment would be appreciated.
Hmm, how these paths are connected, and where? What I mean is I suppose you have one path, which is connected to the main CPU, than I suspect you have a connection to a modem (voice?), than you have possibility to connect some other components via digital link?
What I did with the TWL4030 codec, is that I have moved the actual DAC power control from the DAPM_DAC to different widget (the DAPM_DAC is kind of a fake one). This was needed to support the digital loopback functionality.
So if you reorder the DAPM widgets (making sure that the switch order still OK), than I think you can treat one of the paths as normal playback path (fake DAPM_DAC -> mixer (have the DAC power bit handled here) -> ...). Than you might consider of adding the rest of the paths as DAPM_INPUT, and connect them to the mixer (which after the fake DAC). So you kind of have digital loopback from those to the analog domain.
Thanks, Jorge