Hi, On Wed, May 17, 2017 at 4:47 PM, Yoshihiro Shimoda <yoshihiro.shimoda.uh@xxxxxxxxxxx> wrote: >> >> drivers/mmc/host/tmio_mmc_pio.c | 7 ++++--- >> 1 file changed, 4 insertions(+), 3 deletions(-) >> >> diff --git a/drivers/mmc/host/tmio_mmc_pio.c b/drivers/mmc/host/tmio_mmc_pio.c >> index 7ef24ec620b542..526e52719f81b9 100644 >> --- a/drivers/mmc/host/tmio_mmc_pio.c >> +++ b/drivers/mmc/host/tmio_mmc_pio.c >> @@ -140,12 +140,10 @@ static void tmio_mmc_enable_sdio_irq(struct mmc_host *mmc, int enable) >> >> host->sdio_irq_mask = TMIO_SDIO_MASK_ALL & >> ~TMIO_SDIO_STAT_IOIRQ; >> - sd_ctrl_write16(host, CTL_TRANSACTION_CTL, 0x0001); >> sd_ctrl_write16(host, CTL_SDIO_IRQ_MASK, host->sdio_irq_mask); >> } else if (!enable && host->sdio_irq_enabled) { >> host->sdio_irq_mask = TMIO_SDIO_MASK_ALL; >> sd_ctrl_write16(host, CTL_SDIO_IRQ_MASK, host->sdio_irq_mask); >> - sd_ctrl_write16(host, CTL_TRANSACTION_CTL, 0x0000); >> >> host->sdio_irq_enabled = false; >> pm_runtime_mark_last_busy(mmc_dev(mmc)); >> @@ -1203,7 +1201,7 @@ int tmio_mmc_host_probe(struct tmio_mmc_host *_host, >> if (pdata->flags & TMIO_MMC_SDIO_IRQ) { >> _host->sdio_irq_mask = TMIO_SDIO_MASK_ALL; >> sd_ctrl_write16(_host, CTL_SDIO_IRQ_MASK, _host->sdio_irq_mask); >> - sd_ctrl_write16(_host, CTL_TRANSACTION_CTL, 0x0000); >> + sd_ctrl_write16(_host, CTL_TRANSACTION_CTL, 0x0001); >> } > > I'm afraid but I would like to confirm about this 6 month ago's patch :) > > This patch enables CTL_TRANSACTION_CTL to 0x0001 in tmio_mmc_host_probe(). > But, I have a concern we have to disable/enable the register in suspend/resume() > because registers setting is possible to be cleared after resume. > What do you think? That's a good catch. I suppose we need that. I didn't check it for suspend/resume at thattime. My bad. Thanks, -- yashi