tegra: sound: Add Audio Hub driver.

The Tegra30+ (including 1x4) chipset has an integrated "audio hub" component
that can setup all audio peripherals connected to it.  To provide audio
playback, we must configure and activate at least the XBAR (map for audio data
delivery path), APBIF (DMA/FIFO agent) and one I2S device on AHUB.

The new TegraAudioHub takes references to XBAR, APBIF, and an I2S (all are audio
hub components) to create a link from FIFO channel0 (APBIF) -> XBAR -> I2S
so we can use it as a simple FIFO (via APBIF) provider in I2S driver.

BUG=none
BRANCH=none
TEST=emerge-nyan depthcharge

Change-Id: I3ca9f6c24e46dced90aea9a68e993a8189dfab47
Signed-off-by: Hung-Te Lin <hungte@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/176520
Reviewed-by: Gabe Black <gabeblack@chromium.org>
4 files changed