static void exynos_dwmci0_cfg_gpio(int width) { unsigned int gpio; for (gpio = EXYNOS5420_GPC0(0); gpio < EXYNOS5420_GPC0(2); gpio++) { s3c_gpio_cfgpin(gpio, S3C_GPIO_SFN(2)); s3c_gpio_setpull(gpio, S3C_GPIO_PULL_NONE); s5p_gpio_set_drvstr(gpio, S5P_GPIO_DRVSTR_LV3); } switch (width) { case 8: for (gpio = EXYNOS5420_GPC3(0); gpio <= EXYNOS5420_GPC3(3); gpio++) { s3c_gpio_cfgpin(gpio, S3C_GPIO_SFN(2)); s3c_gpio_setpull(gpio, S3C_GPIO_PULL_NONE); s5p_gpio_set_drvstr(gpio, S5P_GPIO_DRVSTR_LV3); } case 4: for (gpio = EXYNOS5420_GPC0(3); gpio <= EXYNOS5420_GPC0(6); gpio++) { s3c_gpio_cfgpin(gpio, S3C_GPIO_SFN(2)); s3c_gpio_setpull(gpio, S3C_GPIO_PULL_NONE); s5p_gpio_set_drvstr(gpio, S5P_GPIO_DRVSTR_LV3); } break; case 1: gpio = EXYNOS5420_GPC0(3); s3c_gpio_cfgpin(gpio, S3C_GPIO_SFN(2)); s3c_gpio_setpull(gpio, S3C_GPIO_PULL_NONE); s5p_gpio_set_drvstr(gpio, S5P_GPIO_DRVSTR_LV3); default: break; } gpio = EXYNOS5420_GPC0(7); s3c_gpio_cfgpin(gpio, S3C_GPIO_SFN(2)); s3c_gpio_setpull(gpio, S3C_GPIO_PULL_DOWN); /* CDn PIN: Ouput / High */ gpio = EXYNOS5420_GPC0(2); s3c_gpio_cfgpin(gpio, S3C_GPIO_SFN(1)); gpio_set_value(gpio, 1); }
{ EXYNOS5420_GPC1(2), S5P_GPIO_PD_INPUT, S5P_GPIO_PD_DOWN_ENABLE }, /* GPS_EN */ { EXYNOS5420_GPC1(3), S5P_GPIO_PD_INPUT, S5P_GPIO_PD_UPDOWN_DISABLE }, /* WLAN_SDIO_D(0) */ { EXYNOS5420_GPC1(4), S5P_GPIO_PD_INPUT, S5P_GPIO_PD_UPDOWN_DISABLE }, /* WLAN_SDIO_D(1) */ { EXYNOS5420_GPC1(5), S5P_GPIO_PD_INPUT, S5P_GPIO_PD_UPDOWN_DISABLE }, /* WLAN_SDIO_D(2) */ { EXYNOS5420_GPC1(6), S5P_GPIO_PD_INPUT, S5P_GPIO_PD_UPDOWN_DISABLE }, /* WLAN_SDIO_D(3) */ { EXYNOS5420_GPC1(7), S5P_GPIO_PD_INPUT, S5P_GPIO_PD_DOWN_ENABLE }, /* NC */ /* GPC 2 */ { EXYNOS5420_GPC2(0), S5P_GPIO_PD_INPUT, S5P_GPIO_PD_DOWN_ENABLE }, /* T_FLASH_CLK */ { EXYNOS5420_GPC2(1), S5P_GPIO_PD_INPUT, S5P_GPIO_PD_DOWN_ENABLE }, /* T_FLASH_CMD */ { EXYNOS5420_GPC2(2), S5P_GPIO_PD_INPUT, S5P_GPIO_PD_DOWN_ENABLE }, /* NC */ { EXYNOS5420_GPC2(3), S5P_GPIO_PD_INPUT, S5P_GPIO_PD_DOWN_ENABLE }, /* T_FLASH_D(0) */ { EXYNOS5420_GPC2(4), S5P_GPIO_PD_INPUT, S5P_GPIO_PD_DOWN_ENABLE }, /* T_FLASH_D(1) */ { EXYNOS5420_GPC2(5), S5P_GPIO_PD_INPUT, S5P_GPIO_PD_DOWN_ENABLE }, /* T_FLASH_D(2) */ { EXYNOS5420_GPC2(6), S5P_GPIO_PD_INPUT, S5P_GPIO_PD_DOWN_ENABLE }, /* T_FLASH_D(3) */ /* GPC 3 */ { EXYNOS5420_GPC3(0), S5P_GPIO_PD_PREV_STATE, S5P_GPIO_PD_UPDOWN_DISABLE }, /* NAND_D(4) */ { EXYNOS5420_GPC3(1), S5P_GPIO_PD_PREV_STATE, S5P_GPIO_PD_UPDOWN_DISABLE }, /* NAND_D(5) */ { EXYNOS5420_GPC3(2), S5P_GPIO_PD_PREV_STATE, S5P_GPIO_PD_UPDOWN_DISABLE }, /* NAND_D(6) */ { EXYNOS5420_GPC3(3), S5P_GPIO_PD_PREV_STATE, S5P_GPIO_PD_UPDOWN_DISABLE }, /* NAND_D(7) */ /* GPC 4 */ { EXYNOS5420_GPC4(0), S5P_GPIO_PD_INPUT, S5P_GPIO_PD_DOWN_ENABLE }, /* NC */ { EXYNOS5420_GPC4(1), S5P_GPIO_PD_INPUT, S5P_GPIO_PD_DOWN_ENABLE }, /* NC */ /* GPD 1 */ { EXYNOS5420_GPD1(0), S5P_GPIO_PD_INPUT, S5P_GPIO_PD_DOWN_ENABLE }, /* TOUCH_CHG */ { EXYNOS5420_GPD1(1), S5P_GPIO_PD_INPUT, S5P_GPIO_PD_DOWN_ENABLE }, /* NC */ #if defined(CONFIG_V2A) { EXYNOS5420_GPD1(2), S5P_GPIO_PD_INPUT, S5P_GPIO_PD_DOWN_ENABLE }, /* NC */ { EXYNOS5420_GPD1(3), S5P_GPIO_PD_INPUT, S5P_GPIO_PD_DOWN_ENABLE }, /* NC */ { EXYNOS5420_GPD1(4), S5P_GPIO_PD_INPUT, S5P_GPIO_PD_DOWN_ENABLE }, /* NC */ #else { EXYNOS5420_GPD1(2), S5P_GPIO_PD_INPUT, S5P_GPIO_PD_UPDOWN_DISABLE }, /* PEN_PDCT_1.8V */
{ EXYNOS5420_GPC0(6), S3C_GPIO_SFN(2), GPIO_LV_N, S3C_GPIO_PULL_NONE }, /* NAND_D(3) */ /* GPC 1 */ { EXYNOS5420_GPC1(0), S3C_GPIO_INPUT, GPIO_LV_N, S3C_GPIO_PULL_DOWN }, /* WLAN_SDIO_CLK */ { EXYNOS5420_GPC1(1), S3C_GPIO_INPUT, GPIO_LV_N, S3C_GPIO_PULL_NONE }, /* WLAN_SDIO_CMD */ #if defined(CONFIG_KLIMT_TD) { EXYNOS5420_GPC1(2), S3C_GPIO_INPUT, GPIO_LV_N, S3C_GPIO_PULL_DOWN }, /* NC */ #endif { EXYNOS5420_GPC1(3), S3C_GPIO_INPUT, GPIO_LV_N, S3C_GPIO_PULL_NONE }, /* WLAN_SDIO_D(0) */ { EXYNOS5420_GPC1(4), S3C_GPIO_INPUT, GPIO_LV_N, S3C_GPIO_PULL_NONE }, /* WLAN_SDIO_D(1) */ { EXYNOS5420_GPC1(5), S3C_GPIO_INPUT, GPIO_LV_N, S3C_GPIO_PULL_NONE }, /* WLAN_SDIO_D(2) */ { EXYNOS5420_GPC1(6), S3C_GPIO_INPUT, GPIO_LV_N, S3C_GPIO_PULL_NONE }, /* WLAN_SDIO_D(3) */ { EXYNOS5420_GPC1(7), S3C_GPIO_INPUT, GPIO_LV_N, S3C_GPIO_PULL_DOWN }, /* NC */ /* GPC 2 */ { EXYNOS5420_GPC2(2), S3C_GPIO_INPUT, GPIO_LV_N, S3C_GPIO_PULL_DOWN }, /* NC */ /* GPC 3 */ { EXYNOS5420_GPC3(0), S3C_GPIO_SFN(2), GPIO_LV_N, S3C_GPIO_PULL_NONE }, /* NAND_D(4) */ { EXYNOS5420_GPC3(1), S3C_GPIO_SFN(2), GPIO_LV_N, S3C_GPIO_PULL_NONE }, /* NAND_D(5) */ { EXYNOS5420_GPC3(2), S3C_GPIO_SFN(2), GPIO_LV_N, S3C_GPIO_PULL_NONE }, /* NAND_D(6) */ { EXYNOS5420_GPC3(3), S3C_GPIO_SFN(2), GPIO_LV_N, S3C_GPIO_PULL_NONE }, /* NAND_D(7) */ /* GPC 4 */ { EXYNOS5420_GPC4(0), S3C_GPIO_INPUT, GPIO_LV_N, S3C_GPIO_PULL_DOWN }, /* NC */ { EXYNOS5420_GPC4(1), S3C_GPIO_INPUT, GPIO_LV_N, S3C_GPIO_PULL_DOWN }, /* NC */ /* GPD 1 */ { EXYNOS5420_GPD1(1), S3C_GPIO_INPUT, GPIO_LV_N, S3C_GPIO_PULL_DOWN }, /* NC */ #if defined(CONFIG_KLIMT_WIFI) { EXYNOS5420_GPD1(2), S3C_GPIO_INPUT, GPIO_LV_N, S3C_GPIO_PULL_DOWN }, /* NC(PDA_ACTIVE) */ #endif /* GPE 0 */ /* GPE 1 */ { EXYNOS5420_GPE1(1), S3C_GPIO_INPUT, GPIO_LV_N, S3C_GPIO_PULL_DOWN }, /* NC */ /* GPF 0 */