mmc: sdio: Fix sdio_disable_wide to properly handle 8 bit bus width.
Change-Id: I2e712f5d8f6ff8da9fdabe8cf30e378c560e067f Signed-off-by: Murali Palnati <palnatim@codeaurora.org>
This commit is contained in:
committed by
Stephen Boyd
parent
0e223a10b5
commit
fcaeb8c98a
@@ -274,10 +274,10 @@ static int sdio_disable_wide(struct mmc_card *card)
|
|||||||
if (ret)
|
if (ret)
|
||||||
return ret;
|
return ret;
|
||||||
|
|
||||||
if (!(ctrl & SDIO_BUS_WIDTH_4BIT))
|
if (!(ctrl & (SDIO_BUS_WIDTH_4BIT | SDIO_BUS_WIDTH_8BIT)))
|
||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
ctrl &= ~SDIO_BUS_WIDTH_4BIT;
|
ctrl &= ~(SDIO_BUS_WIDTH_4BIT | SDIO_BUS_WIDTH_8BIT);
|
||||||
ctrl |= SDIO_BUS_ASYNC_INT;
|
ctrl |= SDIO_BUS_ASYNC_INT;
|
||||||
|
|
||||||
ret = mmc_io_rw_direct(card, 1, 0, SDIO_CCCR_IF, ctrl, NULL);
|
ret = mmc_io_rw_direct(card, 1, 0, SDIO_CCCR_IF, ctrl, NULL);
|
||||||
|
|||||||
@@ -100,6 +100,7 @@
|
|||||||
|
|
||||||
#define SDIO_BUS_WIDTH_1BIT 0x00
|
#define SDIO_BUS_WIDTH_1BIT 0x00
|
||||||
#define SDIO_BUS_WIDTH_4BIT 0x02
|
#define SDIO_BUS_WIDTH_4BIT 0x02
|
||||||
|
#define SDIO_BUS_WIDTH_8BIT 0x03
|
||||||
#define SDIO_BUS_ECSI 0x20 /* Enable continuous SPI interrupt */
|
#define SDIO_BUS_ECSI 0x20 /* Enable continuous SPI interrupt */
|
||||||
#define SDIO_BUS_SCSI 0x40 /* Support continuous SPI interrupt */
|
#define SDIO_BUS_SCSI 0x40 /* Support continuous SPI interrupt */
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user