Hi,
On Wed, Mar 28, 2018 at 10:29:10AM +0800, Mark Brown wrote:
On Wed, Mar 28, 2018 at 12:22:37AM +0200, Sebastian Reichel wrote:
On Tue, Mar 27, 2018 at 08:14:41PM +0800, Mark Brown wrote:
No, this is exactly the sort of use case with multiple DAIs that the graph card is intended to enable over the old simple-card.
+----------+ +-------------+ | OMAP4 | | CPCAP | | | | | | [McBSP2] | <-----> | [HiFi DAI] | | | | | | [McBSP3] | <--+--> | [Voice DAI] | | | | | | +----------+ | +-------------+ | +----------+ | +-------------+ | MDM6600 | | | WL1285 | | | | | | | [DAI] | <--+--> | [DAI] | | | | | +----------+ +-------------+
Legend: OMAP4 = SoC running Linux CPCAP = Audio codec MDM6600 = Baseband WL1285 = Bluetooth
Re-reading the audio-graph-card binding document I still don't see how the network (OMAP.McBSP3, CPCAP.Voice, MDM6600, WL1285) is supposed to look like. It seems to expect point-to-point DAI connections.
Ugh, a TDM mux?
Yes, at least that's how I understood Motorola's code.
That's really unusual and not particularly supported yet, you'd need to extend the graph card to do it. It's where things should end up for a generic card though.
Motorola's driver provided the following modes:
OMAP4 <-> CPCAP (voice recording) MDM6600 <-> CPCAP (voice call, CPU not involved) OMAP4 <-> WL1285 (bluetooth HFP/HSP) MDM6600 <-> WL1285 (bluetooth voice call)
In case of the last two variants, the bus clock is provided by CPCAP, so it needs to be enabled for any audio stream. I suppose the codec <-> codec as part of TDM is out of scope for the graph card and we need a Droid 4 specific card driver?
-- Sebastian