On Tue, Jan 17, 2012 at 9:15 PM, Stefano Babic <sba...@denx.de> wrote:
> Commit 314284b1567f1ce29c19060641e7f213146f7ab8 has
> changed board_mmc_getcd() function prototype, while
> mx6qarm2 has still the old one.
>
> Signed-off-by: Stefano Babic <sba...@denx.de>
> CC: Jason Liu <jason....@linaro.org>
> Acked-by: Dirk Behme <dirk.be...@de.bosch.com>
>
> ---
>  board/freescale/mx6qarm2/mx6qarm2.c |    9 +++++----
>  1 files changed, 5 insertions(+), 4 deletions(-)
>
> diff --git a/board/freescale/mx6qarm2/mx6qarm2.c 
> b/board/freescale/mx6qarm2/mx6qarm2.c
> index 9894245..9724c16 100644
> --- a/board/freescale/mx6qarm2/mx6qarm2.c
> +++ b/board/freescale/mx6qarm2/mx6qarm2.c
> @@ -120,17 +120,18 @@ struct fsl_esdhc_cfg usdhc_cfg[2] = {
>        {USDHC4_BASE_ADDR, 1},
>  };
>
> -int board_mmc_getcd(u8 *cd, struct mmc *mmc)
> +int board_mmc_getcd(struct mmc *mmc)
>  {
>        struct fsl_esdhc_cfg *cfg = (struct fsl_esdhc_cfg *)mmc->priv;
> +       int ret;
>
>        if (cfg->esdhc_base == USDHC3_BASE_ADDR) {
>                gpio_direction_input(171); /*GPIO6_11*/
> -               *cd = gpio_get_value(171);
> +               ret = !gpio_get_value(171);
>        } else /* Don't have the CD GPIO pin on board */
> -               *cd = 0;
> +               ret = 0;
                              ^^^^^^1
Apparently, this is wrong for the else statement, since there is no CD
for the SD4 on the board,
so, we have to tell MMC system that the card is always there,
otherwise, we can't use the MMC
plug-in that slot. After change to new prototype, we also need convert
the ret value for the SD4,
and return 1 not 0 to MMC.

>
> -       return 0;
> +       return ret;
>  }
>
>  int board_mmc_init(bd_t *bis)
> --
> 1.7.5.4
>
_______________________________________________
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot

Reply via email to