On Fri, Apr 10, 2015 at 04:14:07PM +0800, Koro Chen wrote:
+Each external interface (called "IO" in this driver) is presented as a +DAI to ASoC. An IO must be connected via the interconnect to a memif. +The connection paths are configured through the device tree.
Why are these connection paths configured via device tree? I would expect that either there would be runtime configurability of these things (particularly if loopback configurations within the hardware are possible) or we'd just allocate memory interfaces to DAIs automatically as DAIs come into use.
+- mem-interface-playback:
- mem-interface-capture: property of memif, format is: <memif irq use_sram>;
memif: which memif to be used
(defined in include/dt-bindings/sound/mtk-afe.h)
irq: which irq to be used
(defined in include/dt-bindings/sound/mtk-afe.h)
use_sram: 1 is yes, 0 is no
Again, this looks like stuff we should be able to figure out at runtime - the use of SRAM in particular looks like something we might want to change depending on use case. Assuming it adds buffering then for a VoIP application we might not want to use SRAM to minimize latency but during music playback we might want to enable SRAM to minimize power consumption.