[U-Boot] [PATCH] fsl_esdhc: Fix esdhc disabled problem on some platforms
Anton Vorontsov
avorontsov at mvista.com
Tue Dec 28 16:54:27 CET 2010
On Tue, Dec 28, 2010 at 02:40:30PM +0800, Chenhui Zhao wrote:
> Some platform's esdhc pins don't share with other function.
> The eSDHC shouldn't be disabled, even if "esdhc" isn't defined
> in hwconfig env variable.
>
> Use CONFIG_FSL_ESDHC_PIN_MUX to fix this problem.
>
> The problem was introduced by this commit:
I would not say 'the problem was introduced'. ;-) Back in 2009
all platforms w/ eSDHC were using muxed eSDHC pins, so disabling
eSDHC was a sane choice.
Anyway, the patch looks mostly OK. One comment below though.
> commit b33433a63fe08c9e723ea15a7c7c7143bf527c6d
> Author: Anton Vorontsov <avorontsov at ru.mvista.com>
> Date: Wed Jun 10 00:25:29 2009 +0400
>
> fsl_esdhc: Add device tree fixups
>
> Signed-off-by: Chenhui Zhao <b26998 at freescale.com>
> Signed-off-by: Li Yang <leoli at freescale.com>
> ---
> drivers/mmc/fsl_esdhc.c | 2 ++
> include/configs/MPC837XEMDS.h | 1 +
> include/configs/MPC837XERDB.h | 1 +
> include/configs/MPC8569MDS.h | 1 +
> 4 files changed, 5 insertions(+), 0 deletions(-)
>
> diff --git a/drivers/mmc/fsl_esdhc.c b/drivers/mmc/fsl_esdhc.c
> index cd78714..4c8caa9 100644
> --- a/drivers/mmc/fsl_esdhc.c
> +++ b/drivers/mmc/fsl_esdhc.c
> @@ -527,10 +527,12 @@ void fdt_fixup_esdhc(void *blob, bd_t *bd)
> const char *compat = "fsl,esdhc";
> const char *status = "okay";
>
> +#ifdef CONFIG_FSL_ESDHC_PIN_MUX
> if (!hwconfig("esdhc")) {
> status = "disabled";
> goto out;
Wouldn't gcc complain about unused "out" label?
> }
> +#endif
>
> do_fixup_by_compat_u32(blob, compat, "clock-frequency",
> gd->sdhc_clk, 1);
Thanks,
--
Anton Vorontsov
Email: cbouatmailru at gmail.com
More information about the U-Boot
mailing list