aboutsummaryrefslogtreecommitdiff
path: root/drivers/mmc/mmc.c
diff options
context:
space:
mode:
authorAlexander Kochetkov <al.kochet@gmail.com>2018-02-20 14:35:55 +0300
committerJaehoon Chung <jh80.chung@samsung.com>2018-02-23 15:57:41 +0900
commit76584e33988fc9f6c80199e04ca6e249baf7289a (patch)
treef3b455d4882973f45dccbfef8f8424dbc3a036a6 /drivers/mmc/mmc.c
parent8a856db238072dbee370cb0f01648fe0462fe677 (diff)
downloadu-boot-76584e33988fc9f6c80199e04ca6e249baf7289a.zip
u-boot-76584e33988fc9f6c80199e04ca6e249baf7289a.tar.gz
u-boot-76584e33988fc9f6c80199e04ca6e249baf7289a.tar.bz2
mmc: fix off-by-one bug in mmc_startup_v4()
MMC card with EXT_CSD_REV value 9 will trigger off-by-one bug while accessing mmc_versions array. The patch fix that. Signed-off-by: Alexander Kochetkov <al.kochet@gmail.com>
Diffstat (limited to 'drivers/mmc/mmc.c')
-rw-r--r--drivers/mmc/mmc.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/mmc/mmc.c b/drivers/mmc/mmc.c
index 31f65f6..c930893 100644
--- a/drivers/mmc/mmc.c
+++ b/drivers/mmc/mmc.c
@@ -1969,7 +1969,7 @@ static int mmc_startup_v4(struct mmc *mmc)
return -ENOMEM;
memcpy(mmc->ext_csd, ext_csd, MMC_MAX_BLOCK_LEN);
- if (ext_csd[EXT_CSD_REV] > ARRAY_SIZE(mmc_versions))
+ if (ext_csd[EXT_CSD_REV] >= ARRAY_SIZE(mmc_versions))
return -EINVAL;
mmc->version = mmc_versions[ext_csd[EXT_CSD_REV]];