diff options
| -rw-r--r-- | board/olimex/mx23_olinuxino/mx23_olinuxino.c | 22 | ||||
| -rw-r--r-- | board/olimex/mx23_olinuxino/spl_boot.c | 9 | ||||
| -rw-r--r-- | include/configs/mx23_olinuxino.h | 12 | 
3 files changed, 42 insertions, 1 deletions
| diff --git a/board/olimex/mx23_olinuxino/mx23_olinuxino.c b/board/olimex/mx23_olinuxino/mx23_olinuxino.c index 2fcad2679..6a6053b38 100644 --- a/board/olimex/mx23_olinuxino/mx23_olinuxino.c +++ b/board/olimex/mx23_olinuxino/mx23_olinuxino.c @@ -23,7 +23,10 @@   */  #include <common.h> +#include <asm/io.h> +#include <asm/arch/iomux-mx23.h>  #include <asm/arch/imx-regs.h> +#include <asm/arch/clock.h>  #include <asm/arch/sys_proto.h>  DECLARE_GLOBAL_DATA_PTR; @@ -33,7 +36,12 @@ DECLARE_GLOBAL_DATA_PTR;   */  int board_early_init_f(void)  { -	/* SSP clock init will come here soon. */ +	/* IO0 clock at 480MHz */ +	mxs_set_ioclk(MXC_IOCLK0, 480000); + +	/* SSP0 clock at 96MHz */ +	mxs_set_sspclk(MXC_SSPCLK0, 96000, 0); +  	return 0;  } @@ -42,6 +50,18 @@ int dram_init(void)  	return mxs_dram_init();  } +#ifdef	CONFIG_CMD_MMC +static int mx23_olx_mmc_cd(int id) +{ +	return 1;	/* Card always present */ +} + +int board_mmc_init(bd_t *bis) +{ +	return mxsmmc_initialize(bis, 0, NULL, mx23_olx_mmc_cd); +} +#endif +  int board_init(void)  {  	/* Adress of boot parameters */ diff --git a/board/olimex/mx23_olinuxino/spl_boot.c b/board/olimex/mx23_olinuxino/spl_boot.c index 6cf669fa4..7def8bc3e 100644 --- a/board/olimex/mx23_olinuxino/spl_boot.c +++ b/board/olimex/mx23_olinuxino/spl_boot.c @@ -30,6 +30,7 @@  #include <asm/arch/sys_proto.h>  #define	MUX_CONFIG_EMI	(MXS_PAD_3V3 | MXS_PAD_16MA | MXS_PAD_PULLUP) +#define	MUX_CONFIG_SSP	(MXS_PAD_3V3 | MXS_PAD_8MA | MXS_PAD_PULLUP)  const iomux_cfg_t iomux_setup[] = {  	/* DUART */ @@ -82,6 +83,14 @@ const iomux_cfg_t iomux_setup[] = {  	MX23_PAD_EMI_CKE__EMI_CKE | MUX_CONFIG_EMI,  	MX23_PAD_EMI_RASN__EMI_RASN | MUX_CONFIG_EMI,  	MX23_PAD_EMI_WEN__EMI_WEN | MUX_CONFIG_EMI, + +	/* MMC 0 */ +	MX23_PAD_SSP1_CMD__SSP1_CMD | MUX_CONFIG_SSP, +	MX23_PAD_SSP1_DATA0__SSP1_DATA0 | MUX_CONFIG_SSP, +	MX23_PAD_SSP1_DATA1__SSP1_DATA1 | MUX_CONFIG_SSP, +	MX23_PAD_SSP1_DATA2__SSP1_DATA2 | MUX_CONFIG_SSP, +	MX23_PAD_SSP1_DATA3__SSP1_DATA3 | MUX_CONFIG_SSP, +	MX23_PAD_SSP1_SCK__SSP1_SCK | MUX_CONFIG_SSP,  };  void board_init_ll(void) diff --git a/include/configs/mx23_olinuxino.h b/include/configs/mx23_olinuxino.h index e5e718c25..303a9e56d 100644 --- a/include/configs/mx23_olinuxino.h +++ b/include/configs/mx23_olinuxino.h @@ -53,8 +53,10 @@  #define	CONFIG_DOS_PARTITION  #define	CONFIG_CMD_CACHE +#define	CONFIG_CMD_EXT2  #define	CONFIG_CMD_FAT  #define	CONFIG_CMD_GPIO +#define	CONFIG_CMD_MMC  /*   * Memory configurations @@ -110,6 +112,16 @@  #define	CONFIG_BAUDRATE			115200	/* Default baud rate */  /* + * MMC Driver + */ +#ifdef	CONFIG_CMD_MMC +#define CONFIG_MMC +#define CONFIG_BOUNCE_BUFFER +#define CONFIG_GENERIC_MMC +#define CONFIG_MXS_MMC +#endif + +/*   * APBH DMA   */  #define CONFIG_APBH_DMA |