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

From: Masahiro Yamada
Date: Thu Aug 23 2018 - 21:51:16 EST


2018-08-23 19:43 GMT+09:00 Ulf Hansson <ulf.hansson@xxxxxxxxxx>:
> [...]
>
>> +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.


Yeah, I also thought this.

But, the irq handler is in the TMIO common code,
so it would affect Renesas code.

tmio-mmc has lots to be improved.
Tasklet is not the only problem.


Before investing more effort,
I want working code base for my platform.


Anyway, thanks for applying this!



> [...]
>
> Kind regards
> Uffe



--
Best Regards
Masahiro Yamada