From mboxrd@z Thu Jan 1 00:00:00 1970 From: Minkyu Kang Date: Tue, 06 Jul 2010 21:07:57 +0900 Subject: [U-Boot] [PATCH 2/2] s5p_goni: enable mmc0 Message-ID: <4C331C9D.4050906@samsung.com> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: u-boot@lists.denx.de Adds the board_mmc_init function and enable the mmc command Signed-off-by: Minkyu Kang Signed-off-by: Jaehoon Chung Signed-off-by: Kyungmin Park --- board/samsung/goni/goni.c | 37 +++++++++++++++++++++++++++++++++++++ include/configs/s5p_goni.h | 6 ++++++ 2 files changed, 43 insertions(+), 0 deletions(-) diff --git a/board/samsung/goni/goni.c b/board/samsung/goni/goni.c index e512c59..060d5d1 100644 --- a/board/samsung/goni/goni.c +++ b/board/samsung/goni/goni.c @@ -23,11 +23,18 @@ */ #include +#include +#include DECLARE_GLOBAL_DATA_PTR; +static struct s5pc110_gpio *s5pc110_gpio; + int board_init(void) { + /* Set Initial global variables */ + s5pc110_gpio = (struct s5pc110_gpio *)S5PC110_GPIO_BASE; + gd->bd->bi_arch_number = MACH_TYPE_GONI; gd->bd->bi_boot_params = PHYS_SDRAM_1 + 0x100; @@ -53,3 +60,33 @@ int checkboard(void) return 0; } #endif + +#ifdef CONFIG_GENERIC_MMC +int board_mmc_init(bd_t *bis) +{ + int i; + + /* MASSMEMORY_EN: XMSMDATA7: GPJ2[7] output high */ + gpio_direction_output(&s5pc110_gpio->gpio_j2, 7, 1); + + /* + * MMC0 GPIO + * GPG0[0] SD_0_CLK + * GPG0[1] SD_0_CMD + * GPG0[2] SD_0_CDn -> Not used + * GPG0[3:6] SD_0_DATA[0:3] + */ + for (i = 0; i < 7; i++) { + if (i == 2) + continue; + /* GPG0[0:6] special function 2 */ + gpio_cfg_pin(&s5pc110_gpio->gpio_g0, i, 0x2); + /* GPG0[0:6] pull disable */ + gpio_set_pull(&s5pc110_gpio->gpio_g0, i, GPIO_PULL_NONE); + /* GPG0[0:6] drv 4x */ + gpio_set_drv(&s5pc110_gpio->gpio_g0, i, GPIO_DRV_4X); + } + + return s5p_mmc_init(0); +} +#endif diff --git a/include/configs/s5p_goni.h b/include/configs/s5p_goni.h index 171ec94..b2bf96a 100644 --- a/include/configs/s5p_goni.h +++ b/include/configs/s5p_goni.h @@ -67,6 +67,11 @@ #define CONFIG_SERIAL_MULTI 1 #define CONFIG_BAUDRATE 115200 +/* MMC */ +#define CONFIG_GENERIC_MMC 1 +#define CONFIG_MMC 1 +#define CONFIG_S5P_MMC 1 + /* It should define before config_cmd_default.h */ #define CONFIG_SYS_NO_FLASH 1 @@ -82,6 +87,7 @@ #define CONFIG_CMD_REGINFO #define CONFIG_CMD_ONENAND #define CONFIG_CMD_MTDPARTS +#define CONFIG_CMD_MMC #define CONFIG_BOOTDELAY 1 #define CONFIG_ZERO_BOOTDELAY_CHECK -- 1.6.3.3