[alsa-devel] [PATCH 15/17] ASoC: tegra: add tegra30-i2s driver

Mark Brown broonie at opensource.wolfsonmicro.com
Sat Mar 31 23:34:02 CEST 2012


On Fri, Mar 30, 2012 at 05:07:30PM -0600, Stephen Warren wrote:

> +#ifdef CONFIG_DEBUG_FS
> +static int tegra30_i2s_show(struct seq_file *s, void *unused)
> +{

Abstraction please - this is open coded in several of your drivers.

> +	if (substream->stream == SNDRV_PCM_STREAM_PLAYBACK) {
> +		ret = tegra30_ahub_allocate_tx_fifo(&i2s->txcif,
> +					&i2s->playback_dma_data.addr,
> +					&i2s->playback_dma_data.req_sel);
> +		i2s->playback_dma_data.wrap = 4;
> +		i2s->playback_dma_data.width = 32;
> +		tegra30_ahub_set_rx_cif_source(
> +				TEGRA30_AHUB_RXCIF_I2S0_RX0 + i2s->cif_id,
> +				i2s->txcif);

So.  This is all fairly straightforward, simple and non-invasive for
CPU<->I2S streams but obviously it's locking out any loopbacks within
the AHUB which is a bit sad.

Looking at this it seems like all that's required is to propagate stream
events back up the chain and do the routing, there doesn't seem to be
much other interaction between the AHUB and the interfaces?
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 836 bytes
Desc: Digital signature
Url : http://mailman.alsa-project.org/pipermail/alsa-devel/attachments/20120331/fdf94549/attachment.sig 


More information about the Alsa-devel mailing list