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

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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



[Index of Archives]     [Linux Samsung SOC]     [Linux Wireless]     [Linux Kernel]     [ATH6KL]     [Linux Bluetooth]     [Linux Netdev]     [Kernel Newbies]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Samba]     [Device Mapper]

  Powered by Linux