linux/sound/soc/sh
Kuninori Morimoto 72adc61f46 ASoC: rsnd: 1st DMAC dma-names cares subnode
Renesas R-Car sound (= rsnd) needs 2 DMAC which are called as
Audio DMAC (= 1st DMAC) and Audio DMAC peri peri (2nd DMAC).
And rsnd had assumed that 1st / 2nd DMACs are implemented as DMAEngine.
But, in result of DMA ML discussion, 2nd DMAC was concluded that it is
not a general purpose DMAC (2nd DMAC is for Device to Device inside
sound system). Additionally, current DMAEngine can't support Device to
Device, and we don't have correct DT bindings for it at this point.
So the easiest solution for it is that move it from DMAEngine to rsnd
driver.

dma-names on DT was implemented as no difference between 1st / 2nd
DMAC's, since rsnd had assumed that both DMACs are implemented as
DMAEngine. That style was "src_dst". But now, 2nd DMAC was implemented
as non DMAEngine, and it doesn't need dma-names anymore. So, this
dma-names rule is no longer needed.

And additionally, dma-names was assumed that it has all
(= SSI/SSIU/SRC/DVC) nodes under sound node.

In upstream code, no SoC/platform is supporting DMA for rsnd driver yet.
This means there is no compatible issue if this patch changes
dma-names's rule of DT.

This patch assumes dma-names for 1st DMAC are tx/rx base, and listed
in each SSI/SRC/DVC subnode
ex)
	rcar_sound,dvc {
		dvc0: dvc@0 {
			dmas = <&audma0 0xbc>;
			dma-names = "tx";
		};
	...

	rcar_sound,src {
		src0: src@0 {
			...
			dmas = <&audma0 0x85>, <&audma1 0x9a>;
			dma-names = "rx", "tx";
		};
	...

	rcar_sound,ssi {
		ssi0: ssi@0 {
			...
			dmas = <&audma0 0x01>, <&audma1 0x02>, <&audma0 0x15>, <&audma1 0x16>;
			dma-names = "rx", "tx", "rxu", "txu";
		};
	...

Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
2015-03-07 15:04:30 +00:00
..
rcar ASoC: rsnd: 1st DMAC dma-names cares subnode 2015-03-07 15:04:30 +00:00
dma-sh7760.c ASoC: sh: Remove unnecessary snd_pcm_lib_preallocate_free_for_all() 2015-01-05 21:30:05 +00:00
fsi.c Merge remote-tracking branches 'asoc/topic/rx51', 'asoc/topic/samsung', 'asoc/topic/sh', 'asoc/topic/simple' and 'asoc/topic/sta32x' into asoc-next 2015-02-04 20:57:18 +00:00
hac.c Driver core patches for 3.19-rc1 2014-12-14 16:10:09 -08:00
Kconfig ASoC: rsnd: use regmap_mmio instead of original regmap bus 2014-07-29 13:07:00 +01:00
Makefile ASoC: add Renesas R-Car core feature 2013-07-28 19:34:09 +01:00
migor.c ASoC: migor: Use static DAI format setup 2015-01-06 17:34:32 +00:00
sh7760-ac97.c ASoC: sh: Add .owner to struct snd_soc_card 2011-12-23 11:32:07 +00:00
siu_dai.c ASoC: sh: drop owner assignment from platform_drivers 2014-10-20 16:22:13 +02:00
siu_pcm.c ASoC: sh: Remove unnecessary snd_pcm_lib_preallocate_free_for_all() 2015-01-05 21:30:05 +00:00
siu.h ASoC: Do not include soc-dai.h 2010-11-22 14:04:53 +00:00
ssi.c ASoC: sh: drop owner assignment from platform_drivers 2014-10-20 16:22:13 +02:00