|
|
|
@ -10,11 +10,46 @@ |
|
|
|
|
|
|
|
|
|
#include <common.h> |
|
|
|
|
#include <fsl_esdhc.h> |
|
|
|
|
#include <asm/arch/crm_regs.h> |
|
|
|
|
#include <asm/arch/sys_proto.h> |
|
|
|
|
#include <asm/io.h> |
|
|
|
|
#include "common.h" |
|
|
|
|
|
|
|
|
|
DECLARE_GLOBAL_DATA_PTR; |
|
|
|
|
|
|
|
|
|
#ifdef CONFIG_NAND_MXS |
|
|
|
|
static iomux_v3_cfg_t const nand_pads[] = { |
|
|
|
|
IOMUX_PADS(PAD_NANDF_CLE__NAND_CLE | MUX_PAD_CTRL(NO_PAD_CTRL)), |
|
|
|
|
IOMUX_PADS(PAD_NANDF_ALE__NAND_ALE | MUX_PAD_CTRL(NO_PAD_CTRL)), |
|
|
|
|
IOMUX_PADS(PAD_NANDF_CS0__NAND_CE0_B | MUX_PAD_CTRL(NO_PAD_CTRL)), |
|
|
|
|
IOMUX_PADS(PAD_NANDF_RB0__NAND_READY_B | MUX_PAD_CTRL(NO_PAD_CTRL)), |
|
|
|
|
IOMUX_PADS(PAD_NANDF_D0__NAND_DATA00 | MUX_PAD_CTRL(NO_PAD_CTRL)), |
|
|
|
|
IOMUX_PADS(PAD_NANDF_D1__NAND_DATA01 | MUX_PAD_CTRL(NO_PAD_CTRL)), |
|
|
|
|
IOMUX_PADS(PAD_NANDF_D2__NAND_DATA02 | MUX_PAD_CTRL(NO_PAD_CTRL)), |
|
|
|
|
IOMUX_PADS(PAD_NANDF_D3__NAND_DATA03 | MUX_PAD_CTRL(NO_PAD_CTRL)), |
|
|
|
|
IOMUX_PADS(PAD_NANDF_D4__NAND_DATA04 | MUX_PAD_CTRL(NO_PAD_CTRL)), |
|
|
|
|
IOMUX_PADS(PAD_NANDF_D5__NAND_DATA05 | MUX_PAD_CTRL(NO_PAD_CTRL)), |
|
|
|
|
IOMUX_PADS(PAD_NANDF_D6__NAND_DATA06 | MUX_PAD_CTRL(NO_PAD_CTRL)), |
|
|
|
|
IOMUX_PADS(PAD_NANDF_D7__NAND_DATA07 | MUX_PAD_CTRL(NO_PAD_CTRL)), |
|
|
|
|
IOMUX_PADS(PAD_SD4_CMD__NAND_RE_B | MUX_PAD_CTRL(NO_PAD_CTRL)), |
|
|
|
|
IOMUX_PADS(PAD_SD4_CLK__NAND_WE_B | MUX_PAD_CTRL(NO_PAD_CTRL)), |
|
|
|
|
}; |
|
|
|
|
|
|
|
|
|
static void cm_fx6_setup_gpmi_nand(void) |
|
|
|
|
{ |
|
|
|
|
SETUP_IOMUX_PADS(nand_pads); |
|
|
|
|
/* Enable clock roots */ |
|
|
|
|
enable_usdhc_clk(1, 3); |
|
|
|
|
enable_usdhc_clk(1, 4); |
|
|
|
|
|
|
|
|
|
setup_gpmi_io_clk(MXC_CCM_CS2CDR_ENFC_CLK_PODF(0xf) | |
|
|
|
|
MXC_CCM_CS2CDR_ENFC_CLK_PRED(1) | |
|
|
|
|
MXC_CCM_CS2CDR_ENFC_CLK_SEL(0)); |
|
|
|
|
} |
|
|
|
|
#else |
|
|
|
|
static void cm_fx6_setup_gpmi_nand(void) {} |
|
|
|
|
#endif |
|
|
|
|
|
|
|
|
|
#ifdef CONFIG_FSL_ESDHC |
|
|
|
|
static struct fsl_esdhc_cfg usdhc_cfg[3] = { |
|
|
|
|
{USDHC1_BASE_ADDR}, |
|
|
|
@ -47,6 +82,8 @@ int board_mmc_init(bd_t *bis) |
|
|
|
|
int board_init(void) |
|
|
|
|
{ |
|
|
|
|
gd->bd->bi_boot_params = PHYS_SDRAM_1 + 0x100; |
|
|
|
|
cm_fx6_setup_gpmi_nand(); |
|
|
|
|
|
|
|
|
|
return 0; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|