mirror of
https://github.com/brain-hackers/u-boot-brain
synced 2024-10-01 00:50:43 +09:00
mmc: exynos_dw_mmc: add the error control for checking index
PERIPH_ID_SDMMC4(131) is not continous value with PERIPH_ID_SDMMC0(75). If there is no 'index' property in fdt, then dev_index should be assigned to dev_id(Peripheral ID). At this time, dev_index should be "56". It means Exynos SoC has "56" numbers of DWMMC IP. To prevent this behavior, it needs to check the maximum device index. Signed-off-by: Jaehoon Chung <jh80.chung@samsung.com> Reviewed-by: Simon Glass <sjg@chromium.org> Signed-off-by: Minkyu Kang <mk7.kang@samsung.com>
This commit is contained in:
parent
f565ea59cb
commit
ce757b18fb
@ -160,6 +160,11 @@ static int exynos_dwmci_get_config(const void *blob, int node,
|
||||
if (host->dev_index == host->dev_id)
|
||||
host->dev_index = host->dev_id - PERIPH_ID_SDMMC0;
|
||||
|
||||
if (host->dev_index > 4) {
|
||||
printf("DWMMC%d: Can't get the dev index\n", host->dev_index);
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
/* Get the bus width from the device node */
|
||||
host->buswidth = fdtdec_get_int(blob, node, "samsung,bus-width", 0);
|
||||
if (host->buswidth <= 0) {
|
||||
|
Loading…
Reference in New Issue
Block a user