void s3c_i2c4_cfg_gpio(struct platform_device *dev) { s3c_gpio_cfgpin(S5PV310_GPB(2), S3C_GPIO_SFN(3)); s3c_gpio_setpull(S5PV310_GPB(2), S3C_GPIO_PULL_UP); s3c_gpio_cfgpin(S5PV310_GPB(3), S3C_GPIO_SFN(3)); s3c_gpio_setpull(S5PV310_GPB(3), S3C_GPIO_PULL_UP); }
void s3c_i2c4_cfg_gpio(struct platform_device *dev) { #if defined(CONFIG_EPEN_WACOM_G5SP) || defined(CONFIG_WIMAX_CMC) s3c_gpio_cfgpin(S5PV310_GPB(2), S3C_GPIO_SFN(3)); s3c_gpio_setpull(S5PV310_GPB(2), S3C_GPIO_PULL_UP); s3c_gpio_cfgpin(S5PV310_GPB(3), S3C_GPIO_SFN(3)); s3c_gpio_setpull(S5PV310_GPB(3), S3C_GPIO_PULL_UP); #else #if defined(CONFIG_MACH_C1_NA_USCC_REV05) s3c_gpio_cfgpin(S5PV310_GPB(0), S3C_GPIO_OUTPUT); s3c_gpio_setpull(S5PV310_GPB(0), S3C_GPIO_PULL_NONE); #else s3c_gpio_cfgpin(S5PV310_GPB(0), S3C_GPIO_SFN(3)); s3c_gpio_setpull(S5PV310_GPB(0), S3C_GPIO_PULL_UP); #endif s3c_gpio_cfgpin(S5PV310_GPB(1), S3C_GPIO_SFN(3)); s3c_gpio_setpull(S5PV310_GPB(1), S3C_GPIO_PULL_UP); #endif /* CONFIG_EPEN_WACOM_G5SP */ }
void s3c_i2c4_cfg_gpio(struct platform_device *dev) { #ifdef CONFIG_EPEN_WACOM_G5SP s3c_gpio_cfgpin(S5PV310_GPB(2), S3C_GPIO_SFN(3)); s3c_gpio_setpull(S5PV310_GPB(2), S3C_GPIO_PULL_UP); s3c_gpio_cfgpin(S5PV310_GPB(3), S3C_GPIO_SFN(3)); s3c_gpio_setpull(S5PV310_GPB(3), S3C_GPIO_PULL_UP); #else s3c_gpio_cfgpin(S5PV310_GPB(0), S3C_GPIO_SFN(3)); s3c_gpio_setpull(S5PV310_GPB(0), S3C_GPIO_PULL_UP); s3c_gpio_cfgpin(S5PV310_GPB(1), S3C_GPIO_SFN(3)); s3c_gpio_setpull(S5PV310_GPB(1), S3C_GPIO_PULL_UP); #endif /* CONFIG_EPEN_WACOM_G5SP */ }
static struct s3c_gpio_chip s5pv310_gpio_part1_4bit[] = { { .chip = { .base = S5PV310_GPA0(0), .ngpio = S5PV310_GPIO_A0_NR, .label = "GPA0", }, }, { .chip = { .base = S5PV310_GPA1(0), .ngpio = S5PV310_GPIO_A1_NR, .label = "GPA1", }, }, { .chip = { .base = S5PV310_GPB(0), .ngpio = S5PV310_GPIO_B_NR, .label = "GPB", }, }, { .chip = { .base = S5PV310_GPC0(0), .ngpio = S5PV310_GPIO_C0_NR, .label = "GPC0", }, }, { .chip = { .base = S5PV310_GPC1(0), .ngpio = S5PV310_GPIO_C1_NR, .label = "GPC1", },
/* Since we emulate multi-cs capability, we do not touch the CS. * The emulated CS is toggled by board specific mechanism, as it can * be either some immediate GPIO or some signal out of some other * chip in between ... or some yet another way. * We simply do not assume anything about CS. */ static int s5pv310_spi_cfg_gpio(struct platform_device *pdev) { switch (pdev->id) { case 0: s3c_gpio_cfgpin(S5PV310_GPB(0), S3C_GPIO_SFN(2)); s3c_gpio_cfgpin(S5PV310_GPB(1), S3C_GPIO_SFN(2)); #if !defined(CONFIG_EPEN_WACOM_G5SP) s3c_gpio_cfgpin(S5PV310_GPB(2), S3C_GPIO_SFN(2)); s3c_gpio_cfgpin(S5PV310_GPB(3), S3C_GPIO_SFN(2)); #endif /* CONFIG_EPEN_WACOM_G5SP */ s3c_gpio_setpull(S5PV310_GPB(0), S3C_GPIO_PULL_UP); #if !defined(CONFIG_EPEN_WACOM_G5SP) s3c_gpio_setpull(S5PV310_GPB(2), S3C_GPIO_PULL_UP); s3c_gpio_setpull(S5PV310_GPB(3), S3C_GPIO_PULL_UP); #endif /* CONFIG_EPEN_WACOM_G5SP */ break; #if !defined(CONFIG_TDMB) && !defined(CONFIG_ISDBT_FC8100) case 1: s3c_gpio_cfgpin(S5PV310_GPB(4), S3C_GPIO_SFN(2)); s3c_gpio_cfgpin(S5PV310_GPB(6), S3C_GPIO_SFN(2)); s3c_gpio_cfgpin(S5PV310_GPB(7), S3C_GPIO_SFN(2)); s3c_gpio_setpull(S5PV310_GPB(4), S3C_GPIO_PULL_UP); s3c_gpio_setpull(S5PV310_GPB(6), S3C_GPIO_PULL_UP); s3c_gpio_setpull(S5PV310_GPB(7), S3C_GPIO_PULL_UP); break; case 2: s3c_gpio_cfgpin(S5PV310_GPC1(1), S3C_GPIO_SFN(5)); s3c_gpio_cfgpin(S5PV310_GPC1(3), S3C_GPIO_SFN(5)); s3c_gpio_cfgpin(S5PV310_GPC1(4), S3C_GPIO_SFN(5)); s3c_gpio_setpull(S5PV310_GPC1(1), S3C_GPIO_PULL_UP); s3c_gpio_setpull(S5PV310_GPC1(3), S3C_GPIO_PULL_UP); s3c_gpio_setpull(S5PV310_GPC1(4), S3C_GPIO_PULL_UP); break; #endif default: dev_err(&pdev->dev, "Invalid SPI Controller number!"); return -EINVAL; } return 0; }