From 752c5c0fddcb17650e1389cc1791ccbfc7dbc3da Mon Sep 17 00:00:00 2001 From: Marek Vasut Date: Mon, 7 Sep 2009 18:17:35 +0200 Subject: [PATCH 08/12] pxa2x0_mmc.c: Move GPIO configuration to platform specific files --- sys/arch/arm/xscale/pxa2x0_mmc.c | 20 -------------------- sys/arch/zaurus/dev/scoop_mmc.c | 6 ++++++ 2 files changed, 6 insertions(+), 20 deletions(-) diff --git a/sys/arch/arm/xscale/pxa2x0_mmc.c b/sys/arch/arm/xscale/pxa2x0_mmc.c index 1ca35de..9b16f1a 100644 --- a/sys/arch/arm/xscale/pxa2x0_mmc.c +++ b/sys/arch/arm/xscale/pxa2x0_mmc.c @@ -43,14 +43,6 @@ #include #include -/* GPIO pins */ -#define PXAMMC_MMCLK 32 -#define PXAMMC_MMCMD 112 -#define PXAMMC_MMDAT0 92 -#define PXAMMC_MMDAT1 109 -#define PXAMMC_MMDAT2 110 -#define PXAMMC_MMDAT3 111 - int pxammc_host_reset(sdmmc_chipset_handle_t); u_int32_t pxammc_host_ocr(sdmmc_chipset_handle_t); int pxammc_host_maxblklen(sdmmc_chipset_handle_t); @@ -158,18 +150,6 @@ pxammc_attach(struct pxammc_softc *sc, void *aux) printf(": MMC/SD/SDIO controller\n"); /* - * Configure the GPIO pins. In SD/MMC mode, all pins except - * MMCLK are bidirectional and the direction is controlled in - * hardware without our assistence. - */ - pxa2x0_gpio_set_function(PXAMMC_MMCLK, GPIO_ALT_FN_2_OUT); - pxa2x0_gpio_set_function(PXAMMC_MMCMD, GPIO_ALT_FN_1_IN); - pxa2x0_gpio_set_function(PXAMMC_MMDAT0, GPIO_ALT_FN_1_IN); - pxa2x0_gpio_set_function(PXAMMC_MMDAT1, GPIO_ALT_FN_1_IN); - pxa2x0_gpio_set_function(PXAMMC_MMDAT2, GPIO_ALT_FN_1_IN); - pxa2x0_gpio_set_function(PXAMMC_MMDAT3, GPIO_ALT_FN_1_IN); - - /* * Reset the host controller and unmask normal interrupts. */ (void)pxammc_host_reset(sc); diff --git a/sys/arch/zaurus/dev/scoop_mmc.c b/sys/arch/zaurus/dev/scoop_mmc.c index 012ccc2..fb3b2f8 100644 --- a/sys/arch/zaurus/dev/scoop_mmc.c +++ b/sys/arch/zaurus/dev/scoop_mmc.c @@ -56,6 +56,12 @@ scoop_mmc_attach(struct device *parent, struct device *self, void *aux) sc->tag.set_power = scoop_mmc_set_power; sc->sc_gpio_detect = GPIO_MMC_DETECT; + pxa2x0_gpio_set_function(32, GPIO_ALT_FN_2_OUT); + pxa2x0_gpio_set_function(112, GPIO_ALT_FN_1_IN); + pxa2x0_gpio_set_function(92, GPIO_ALT_FN_1_IN); + pxa2x0_gpio_set_function(109, GPIO_ALT_FN_1_IN); + pxa2x0_gpio_set_function(110, GPIO_ALT_FN_1_IN); + pxa2x0_gpio_set_function(111, GPIO_ALT_FN_1_IN); pxammc_attach(sc, aux); } -- 1.6.3.4