mirror of
https://github.com/AuxXxilium/linux_dsm_epyc7002.git
synced 2024-12-16 08:16:42 +07:00
mmc: mmci: Use dma_request_chan() instead dma_request_slave_channel()
dma_request_slave_channel() is a wrapper on top of dma_request_chan() eating up the error code. By using dma_request_chan() directly the driver can support deferred probing against DMA. Signed-off-by: Peter Ujfalusi <peter.ujfalusi@ti.com> Link: https://lore.kernel.org/r/20191217112737.31024-1-peter.ujfalusi@ti.com Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
This commit is contained in:
parent
c1fce22522
commit
716d0205fe
@ -715,10 +715,20 @@ int mmci_dmae_setup(struct mmci_host *host)
|
||||
|
||||
host->dma_priv = dmae;
|
||||
|
||||
dmae->rx_channel = dma_request_slave_channel(mmc_dev(host->mmc),
|
||||
"rx");
|
||||
dmae->tx_channel = dma_request_slave_channel(mmc_dev(host->mmc),
|
||||
"tx");
|
||||
dmae->rx_channel = dma_request_chan(mmc_dev(host->mmc), "rx");
|
||||
if (IS_ERR(dmae->rx_channel)) {
|
||||
int ret = PTR_ERR(dmae->rx_channel);
|
||||
dmae->rx_channel = NULL;
|
||||
return ret;
|
||||
}
|
||||
|
||||
dmae->tx_channel = dma_request_chan(mmc_dev(host->mmc), "tx");
|
||||
if (IS_ERR(dmae->tx_channel)) {
|
||||
if (PTR_ERR(dmae->tx_channel) == -EPROBE_DEFER)
|
||||
dev_warn(mmc_dev(host->mmc),
|
||||
"Deferred probe for TX channel ignored\n");
|
||||
dmae->tx_channel = NULL;
|
||||
}
|
||||
|
||||
/*
|
||||
* If only an RX channel is specified, the driver will
|
||||
|
Loading…
Reference in New Issue
Block a user