]> git.sur5r.net Git - u-boot/commitdiff
mx6qsabresd: Fix card detection for invalid card id case
authorOtavio Salvador <otavio@ossystems.com.br>
Sat, 16 Mar 2013 08:05:06 +0000 (08:05 +0000)
committerStefano Babic <sbabic@denx.de>
Wed, 3 Apr 2013 08:41:28 +0000 (10:41 +0200)
This changes the code so in case an unkown value is passed it will
return as invalid.

Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
board/freescale/mx6qsabresd/mx6qsabresd.c

index 5ebbff3f8c1460854e4017fb93d0019e7f310fef..d3019e9adb68b84412e1093261b5635e5d5c087c 100644 (file)
@@ -145,15 +145,21 @@ struct fsl_esdhc_cfg usdhc_cfg[3] = {
 int board_mmc_getcd(struct mmc *mmc)
 {
        struct fsl_esdhc_cfg *cfg = (struct fsl_esdhc_cfg *)mmc->priv;
+       int ret = 0;
 
        switch (cfg->esdhc_base) {
        case USDHC2_BASE_ADDR:
-               return !gpio_get_value(USDHC2_CD_GPIO);
+               ret = !gpio_get_value(USDHC2_CD_GPIO);
+               break;
        case USDHC3_BASE_ADDR:
-               return !gpio_get_value(USDHC3_CD_GPIO);
-       default:
-               return 1; /* eMMC/uSDHC4 is always present */
+               ret = !gpio_get_value(USDHC3_CD_GPIO);
+               break;
+       case USDHC4_BASE_ADDR:
+               ret = 1; /* eMMC/uSDHC4 is always present */
+               break;
        }
+
+       return ret;
 }
 
 int board_mmc_init(bd_t *bis)