Arnd Bergmann arnd@arndb.de writes:
I don't know exactly how the probing works, but I'd assume that we have the correct device pointers in pxa2xx_ac97_dev_probe() and asoc_ssp_probe(), or maybe in pxa2xx_ac97_*_startup() and pxa_ssp_startup().
Yes, let's try this way, in the former patch
"ASoC: pxa: remove the dmaengine compat need" : +++ b/sound/arm/pxa2xx-pcm-lib.c @@ -126,7 +127,7 @@ int __pxa2xx_pcm_open(struct snd_pcm_substream *substream) return ret;
return snd_dmaengine_pcm_open( - substream, dma_request_slave_channel(rtd->platform->dev, + substream, dma_request_slave_channel(rtd->cpu_dai->dev, dma_params->chan_name)); }
The cpu_dai device should be either pxa27x_ac97 or pxa-ssp-dai.<Id>, and amend the dma slave map accordingly.
Cheers.