int board_mmc_init(bd_t *bis) { mmc_sd0.input_clk = clk_get(DAVINCI_MMCSD_CLKID); /* Add slot-0 to mmc subsystem */ return davinci_mmc_init(bis, &mmc_sd0); }
int board_mmc_init(bd_t *bis) { int err; struct davinci_gpio *gpio23_base = (struct davinci_gpio *)DAVINCI_GPIO_BANK23; /* GIO42 (~eMMC_RESET) pinmux setting */ writel((readl(PINMUX4) & 0x3FFFFFFF), PINMUX4); /* set GIO42 (~eMMC_RESET) output */ writel((readl(&gpio23_base->dir) & ~(1 << 10)), &gpio23_base->dir); /* GIO42 (~eMMC_RESET) output High */ writel((readl(&gpio23_base->set_data) | (1 << 10)), &gpio23_base->set_data); /* * enabling cache make mmc read faster * but tftp doesn't work */ icache_enable (); dcache_enable (); /* Add slot-0 to mmc subsystem */ err = davinci_mmc_init(bis, &mmc_sd0); if (err) return err; return err; }
int board_mmc_init(bd_t *bis) { int err; /* Add slot-0 to mmc subsystem */ err = davinci_mmc_init(bis, &mmc_sd0); if (err) return err; #ifdef CONFIG_DAVINCI_MMC_SD1 /* Add slot-1 to mmc subsystem */ err = davinci_mmc_init(bis, &mmc_sd1); #endif return err; }
int board_mmc_init(bd_t *bis) { int err; /* Add slot-0 to mmc subsystem */ err = davinci_mmc_init(bis, &mmc_sd0); return err; }
int board_mmc_init(bd_t *bis) { int err; /* Add slot-0 to mmc subsystem */ err = davinci_mmc_init(bis, &mmc_sd0); if (err) return err; #ifdef CONFIG_DAVINCI_MMC_SD1 #define PUPDCTL1 0x01c4007c /* PINMUX(4)-DAT0-3/CMD; PINMUX(0)-CLK */ writel((readl(PINMUX4) | 0x55400000), PINMUX4); writel((readl(PINMUX0) | 0x00010000), PINMUX0); /* Configure MMC/SD pins as pullup */ writel((readl(PUPDCTL1) & ~0x07c0), PUPDCTL1); /* Add slot-1 to mmc subsystem */ err = davinci_mmc_init(bis, &mmc_sd1); #endif return err; }