mirror of
https://github.com/torvalds/linux.git
synced 2024-11-27 06:31:52 +00:00
mmc: moxart-mmc: Factor out moxart_use_dma() helper
The same code is in two places and we will add a third place. Break this out into its own function. Signed-off-by: Linus Walleij <linus.walleij@linaro.org> Link: https://lore.kernel.org/r/20240127-mmc-proper-kmap-v2-2-d8e732aa97d1@linaro.org Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
This commit is contained in:
parent
ed01d210fd
commit
bc169ad243
@ -254,6 +254,11 @@ static void moxart_dma_complete(void *param)
|
||||
complete(&host->dma_complete);
|
||||
}
|
||||
|
||||
static bool moxart_use_dma(struct moxart_host *host)
|
||||
{
|
||||
return (host->data_len > host->fifo_width) && host->have_dma;
|
||||
}
|
||||
|
||||
static void moxart_transfer_dma(struct mmc_data *data, struct moxart_host *host)
|
||||
{
|
||||
u32 len, dir_slave;
|
||||
@ -375,7 +380,7 @@ static void moxart_prepare_data(struct moxart_host *host)
|
||||
if (data->flags & MMC_DATA_WRITE)
|
||||
datactrl |= DCR_DATA_WRITE;
|
||||
|
||||
if ((host->data_len > host->fifo_width) && host->have_dma)
|
||||
if (moxart_use_dma(host))
|
||||
datactrl |= DCR_DMA_EN;
|
||||
|
||||
writel(DCR_DATA_FIFO_RESET, host->base + REG_DATA_CONTROL);
|
||||
@ -407,7 +412,7 @@ static void moxart_request(struct mmc_host *mmc, struct mmc_request *mrq)
|
||||
moxart_send_command(host, host->mrq->cmd);
|
||||
|
||||
if (mrq->cmd->data) {
|
||||
if ((host->data_len > host->fifo_width) && host->have_dma) {
|
||||
if (moxart_use_dma(host)) {
|
||||
|
||||
writel(CARD_CHANGE, host->base + REG_INTERRUPT_MASK);
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user