hc
2024-01-03 2f7c68cb55ecb7331f2381deb497c27155f32faf
kernel/sound/soc/fsl/fsl_asrc_dma.c
....@@ -207,14 +207,19 @@
207207 be_chan = soc_component_to_pcm(component_be)->chan[substream->stream];
208208 tmp_chan = be_chan;
209209 }
210
- if (!tmp_chan)
211
- tmp_chan = dma_request_slave_channel(dev_be, tx ? "tx" : "rx");
210
+ if (!tmp_chan) {
211
+ tmp_chan = dma_request_chan(dev_be, tx ? "tx" : "rx");
212
+ if (IS_ERR(tmp_chan)) {
213
+ dev_err(dev, "failed to request DMA channel for Back-End\n");
214
+ return -EINVAL;
215
+ }
216
+ }
212217
213218 /*
214219 * An EDMA DEV_TO_DEV channel is fixed and bound with DMA event of each
215220 * peripheral, unlike SDMA channel that is allocated dynamically. So no
216221 * need to configure dma_request and dma_request2, but get dma_chan of
217
- * Back-End device directly via dma_request_slave_channel.
222
+ * Back-End device directly via dma_request_chan.
218223 */
219224 if (!asrc->use_edma) {
220225 /* Get DMA request of Back-End */