Re: [PATCH v3 4/6] mmc: uniphier-sd: add UniPhier SD/eMMC controller driver

From: Ulf Hansson
Date: Thu Aug 23 2018 - 06:43:44 EST


[...]

> +static void uniphier_sd_external_dma_request(struct tmio_mmc_host *host,
> + struct tmio_mmc_data *pdata)
> +{
> + struct uniphier_sd_priv *priv = uniphier_sd_priv(host);
> + struct dma_chan *chan;
> +
> + chan = dma_request_chan(mmc_dev(host->mmc), "rx-tx");
> + if (IS_ERR(chan)) {
> + dev_warn(mmc_dev(host->mmc),
> + "failed to request DMA channel. falling back to PIO\n");
> + return; /* just use PIO even for -EPROBE_DEFER */
> + }
> +
> + /* this driver uses a single channel for both RX an TX */
> + priv->chan = chan;
> + host->chan_rx = chan;
> + host->chan_tx = chan;
> +
> + tasklet_init(&host->dma_issue, uniphier_sd_external_dma_issue,
> + (unsigned long)host);

Isn't it time to get rid of tasklets for tmio?

No worries, I don't require that to be changed prior $subject patch,
however using threaded IRQs is a justified modernization for the tmio
variants.

[...]

Kind regards
Uffe