mx25: Fix eSDHC support
The MMC driver appropriate for the i.MX25 is fsl_esdhc, which has nothing to do with mxcmmc. Also, each eSDHC instance has a dedicated clock, so gd->sdhc_clk must be set accordingly. This is good for the case only a single SDHC instance is used (initialization made with fsl_esdhc_mmc_init()). A future patch will fix the multi-instance use case (initialization made directly with fsl_esdhc_initialize()). Signed-off-by: Benoît Thébaudeau <benoit.thebaudeau@advansee.com> Cc: Stefano Babic <sbabic@denx.de> Cc: Eric Bénard <eric@eukrea.com> Cc: Otavio Salvador <otavio@ossystems.com.br>
This commit is contained in:
parent
f7542638c7
commit
6be5800504
|
@ -29,11 +29,10 @@
|
||||||
#include <asm/arch/imx-regs.h>
|
#include <asm/arch/imx-regs.h>
|
||||||
#include <asm/arch/imx25-pinmux.h>
|
#include <asm/arch/imx25-pinmux.h>
|
||||||
#include <asm/arch/clock.h>
|
#include <asm/arch/clock.h>
|
||||||
#ifdef CONFIG_MXC_MMC
|
|
||||||
#include <asm/arch/mxcmmc.h>
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#ifdef CONFIG_FSL_ESDHC
|
#ifdef CONFIG_FSL_ESDHC
|
||||||
|
#include <fsl_esdhc.h>
|
||||||
|
|
||||||
DECLARE_GLOBAL_DATA_PTR;
|
DECLARE_GLOBAL_DATA_PTR;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
@ -229,23 +228,25 @@ int cpu_eth_init(bd_t *bis)
|
||||||
int get_clocks(void)
|
int get_clocks(void)
|
||||||
{
|
{
|
||||||
#ifdef CONFIG_FSL_ESDHC
|
#ifdef CONFIG_FSL_ESDHC
|
||||||
gd->sdhc_clk = mxc_get_clock(MXC_ESDHC_CLK);
|
#if CONFIG_SYS_FSL_ESDHC_ADDR == IMX_MMC_SDHC2_BASE
|
||||||
|
gd->sdhc_clk = mxc_get_clock(MXC_ESDHC2_CLK);
|
||||||
|
#else
|
||||||
|
gd->sdhc_clk = mxc_get_clock(MXC_ESDHC1_CLK);
|
||||||
|
#endif
|
||||||
#endif
|
#endif
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#ifdef CONFIG_FSL_ESDHC
|
||||||
/*
|
/*
|
||||||
* Initializes on-chip MMC controllers.
|
* Initializes on-chip MMC controllers.
|
||||||
* to override, implement board_mmc_init()
|
* to override, implement board_mmc_init()
|
||||||
*/
|
*/
|
||||||
int cpu_mmc_init(bd_t *bis)
|
int cpu_mmc_init(bd_t *bis)
|
||||||
{
|
{
|
||||||
#ifdef CONFIG_MXC_MMC
|
return fsl_esdhc_mmc_init(bis);
|
||||||
return mxc_mmc_init(bis);
|
|
||||||
#else
|
|
||||||
return 0;
|
|
||||||
#endif
|
|
||||||
}
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
#ifdef CONFIG_MXC_UART
|
#ifdef CONFIG_MXC_UART
|
||||||
void mx25_uart1_init_pins(void)
|
void mx25_uart1_init_pins(void)
|
||||||
|
|
Loading…
Reference in New Issue