diff options
| author | Kouei Abe <[email protected]> | 2017-05-13 15:51:15 +0200 |
|---|---|---|
| committer | Jaehoon Chung <[email protected]> | 2017-06-09 20:25:16 +0900 |
| commit | 3ebc62c987f000f33aa69231e24719547790264a (patch) | |
| tree | 51680c19a72a4b5ec1bbac7965bc72ea30412d06 | |
| parent | 156d64fa55e9914b144c5e83f2a9e13d1223a4d3 (diff) | |
mmc: sh_sdhi: Set SD_INFOx interrupt mask before command starting
When setting interrupt mask after command starting, an unintended
interrupt status sometimes occurs.
Signed-off-by: Kouei Abe <[email protected]>
Signed-off-by: Hiroyuki Yokoyama <[email protected]>
Cc: Hiroyuki Yokoyama <[email protected]>
Cc: Nobuhiro Iwamatsu <[email protected]>
Cc: Jaehoon Chung <[email protected]>
Reviewed-by: Nobuhiro Iwamatsu <[email protected]>
Reviewed-by: Jaehoon Chung <[email protected]>
| -rw-r--r-- | drivers/mmc/sh_sdhi.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/mmc/sh_sdhi.c b/drivers/mmc/sh_sdhi.c index 25224e2e1db..7f0b4c2603d 100644 --- a/drivers/mmc/sh_sdhi.c +++ b/drivers/mmc/sh_sdhi.c @@ -546,8 +546,6 @@ static int sh_sdhi_start_cmd(struct sh_sdhi_host *host, break; } - sh_sdhi_writew(host, SDHI_CMD, (unsigned short)(opc & CMD_MASK)); - host->wait_int = 0; sh_sdhi_writew(host, SDHI_INFO1_MASK, ~INFO1M_RESP_END & sh_sdhi_readw(host, SDHI_INFO1_MASK)); @@ -557,6 +555,8 @@ static int sh_sdhi_start_cmd(struct sh_sdhi_host *host, INFO2M_RESP_TIMEOUT | INFO2M_ILA) & sh_sdhi_readw(host, SDHI_INFO2_MASK)); + sh_sdhi_writew(host, SDHI_CMD, (unsigned short)(opc & CMD_MASK)); + time = sh_sdhi_wait_interrupt_flag(host); if (!time) return sh_sdhi_error_manage(host); |
