From 87f314e98beae1d922ef5d182eb9b4c2027f11ed Mon Sep 17 00:00:00 2001 From: Minkyu Kang Date: Tue, 6 Jul 2010 20:58:41 +0900 Subject: s5p_goni: enable mmc0 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 +++++++++++++++++++++++++++++++++++++ 1 file changed, 37 insertions(+) (limited to 'board/samsung/goni/goni.c') diff --git a/board/samsung/goni/goni.c b/board/samsung/goni/goni.c index e512c59088..060d5d17c9 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 -- cgit v1.2.1