void __init board_chagall_pmic_init(void) { /* This is temporary gpio assignedment code for chagall test board, to be removed soon */ if(system_rev == 9) { exynos5_max77802_info.buck12346_gpio_selb[0] = EXYNOS5420_GPA2(6); exynos5_max77802_info.buck12346_gpio_selb[1] = EXYNOS5420_GPA2(7); } exynos5_hs_i2c3_set_platdata(&hs_i2c3_data); if(system_rev == 9) { i2c_register_board_info(7, hs_i2c_devs3_max77802, ARRAY_SIZE(hs_i2c_devs3_max77802)); } else { i2c_register_board_info(7, hs_i2c_devs3_s2mps11, ARRAY_SIZE(hs_i2c_devs3_s2mps11)); } platform_device_register(&exynos5_device_hs_i2c3); }
void exynos5_hs_i2c1_cfg_gpio(struct platform_device *dev) { if (soc_is_exynos5250()) s3c_gpio_cfgall_range(EXYNOS5_GPB3(2), 2, S3C_GPIO_SFN(4), S3C_GPIO_PULL_UP); else if (soc_is_exynos5410()) s3c_gpio_cfgall_range(EXYNOS5410_GPA2(2), 2, S3C_GPIO_SFN(3), S3C_GPIO_PULL_UP); else if (soc_is_exynos5420()) s3c_gpio_cfgall_range(EXYNOS5420_GPA2(2), 2, S3C_GPIO_SFN(3), S3C_GPIO_PULL_UP); else pr_err("failed to configure gpio for hs-i2c1\n"); }
#define MAX_BOARD_REV 0xf static struct sleep_gpio_tables v1_sleep_gpio_tables[MAX_BOARD_REV]; static int nr_v1_sleep_gpio_table; /* init gpio table for V1 project */ static struct gpio_init_data __initdata init_gpio_table[] = { /* GPA 0 */ { EXYNOS5420_GPA0(0), S3C_GPIO_SFN(2), GPIO_LV_N, S3C_GPIO_PULL_NONE }, /* BT_UART_RXD */ { EXYNOS5420_GPA0(2), S3C_GPIO_SFN(2), GPIO_LV_N, S3C_GPIO_PULL_NONE }, /* BT_UART_CTS */ /* GPA 1 */ { EXYNOS5420_GPA1(4), S3C_GPIO_INPUT, GPIO_LV_N, S3C_GPIO_PULL_NONE }, /* VT_CAM_SDA_1.8V */ { EXYNOS5420_GPA1(5), S3C_GPIO_INPUT, GPIO_LV_N, S3C_GPIO_PULL_NONE }, /* VT_CAM_SCL_1.8V */ /* GPA 2 */ #if defined(CONFIG_V1A_3G) || defined(CONFIG_V2A_3G) { EXYNOS5420_GPA2(0), S3C_GPIO_INPUT, GPIO_LV_N, S3C_GPIO_PULL_NONE }, /* GRIP_SDA */ { EXYNOS5420_GPA2(1), S3C_GPIO_INPUT, GPIO_LV_N, S3C_GPIO_PULL_NONE }, /* GRIP_SCL */ #endif /* GPB 0 */ /* GPB 1 */ /* GPB 2 */ /* GPB 3 */ { EXYNOS5420_GPB3(2), S3C_GPIO_INPUT, GPIO_LV_N, S3C_GPIO_PULL_DOWN }, /* NC */ { EXYNOS5420_GPB3(3), S3C_GPIO_INPUT, GPIO_LV_N, S3C_GPIO_PULL_DOWN }, /* NC */ #if defined(CONFIG_V2A_3G) || defined(CONFIG_V2A_WIFI) { EXYNOS5420_GPB3(4), S3C_GPIO_INPUT, GPIO_LV_N, S3C_GPIO_PULL_DOWN }, /* NC */ { EXYNOS5420_GPB3(5), S3C_GPIO_INPUT, GPIO_LV_N, S3C_GPIO_PULL_DOWN }, /* NC */ #else { EXYNOS5420_GPB3(4), S3C_GPIO_INPUT, GPIO_LV_N, S3C_GPIO_PULL_NONE }, /* PEN_SDA_1.8V */ { EXYNOS5420_GPB3(5), S3C_GPIO_INPUT, GPIO_LV_N, S3C_GPIO_PULL_NONE }, /* PEN_SCL_1.8V */ #endif
#define MAX_BOARD_REV 0xf static struct sleep_gpio_tables klimt_sleep_gpio_tables[MAX_BOARD_REV]; static int nr_klimt_sleep_gpio_table; /* init gpio table for KLIMT project */ static struct gpio_init_data __initdata init_gpio_table[] = { /* GPA 0 */ { EXYNOS5420_GPA0(0), S3C_GPIO_SFN(2), GPIO_LV_N, S3C_GPIO_PULL_NONE }, /* BT_UART_RXD */ { EXYNOS5420_GPA0(2), S3C_GPIO_SFN(2), GPIO_LV_N, S3C_GPIO_PULL_NONE }, /* BT_UART_CTS */ /* GPA 1 */ { EXYNOS5420_GPA1(2), S3C_GPIO_INPUT, GPIO_LV_N, S3C_GPIO_PULL_NONE }, /* SENSOR_I2C_SDA */ { EXYNOS5420_GPA1(3), S3C_GPIO_INPUT, GPIO_LV_N, S3C_GPIO_PULL_NONE }, /* SENSOR_I2C_SCL */ /* GPA 2 */ #if !defined(CONFIG_KLIMT_WIFI) { EXYNOS5420_GPA2(0), S3C_GPIO_INPUT, GPIO_LV_N, S3C_GPIO_PULL_NONE }, /* GRIP_SDA */ { EXYNOS5420_GPA2(1), S3C_GPIO_INPUT, GPIO_LV_N, S3C_GPIO_PULL_NONE }, /* GRIP_SCL */ #endif /* GPB 0 */ /* GPB 1 */ /* GPB 2 */ /* GPB 3 */ { EXYNOS5420_GPB3(0), S3C_GPIO_INPUT, GPIO_LV_N, S3C_GPIO_PULL_DOWN }, /* TSP_SDA_1.8V */ { EXYNOS5420_GPB3(1), S3C_GPIO_INPUT, GPIO_LV_N, S3C_GPIO_PULL_DOWN }, /* TSP_SDA_1.8V */ { EXYNOS5420_GPB3(4), S3C_GPIO_OUTPUT, GPIO_LV_N, S3C_GPIO_PULL_NONE }, /* MEM_LDO_SCL */ { EXYNOS5420_GPB3(5), S3C_GPIO_OUTPUT, GPIO_LV_N, S3C_GPIO_PULL_NONE }, /* MEM_LDO_SDA */ /* 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 */ { 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) */
static struct gpio_init_data __initdata init_gpio_table[] = { /* GPA 0 */ { EXYNOS5420_GPA0(0), S3C_GPIO_SFN(2), GPIO_LV_N, S3C_GPIO_PULL_NONE }, /* BT_UART_RXD */ { EXYNOS5420_GPA0(2), S3C_GPIO_SFN(2), GPIO_LV_N, S3C_GPIO_PULL_NONE }, /* BT_UART_CTS */ #if defined(CONFIG_KLIMT_TD) { EXYNOS5420_GPA0(4), S3C_GPIO_INPUT, GPIO_LV_N, S3C_GPIO_PULL_DOWN }, /* NC */ { EXYNOS5420_GPA0(5), S3C_GPIO_INPUT, GPIO_LV_N, S3C_GPIO_PULL_DOWN }, /* NC */ { EXYNOS5420_GPA0(6), S3C_GPIO_INPUT, GPIO_LV_N, S3C_GPIO_PULL_DOWN }, /* NC */ { EXYNOS5420_GPA0(7), S3C_GPIO_INPUT, GPIO_LV_N, S3C_GPIO_PULL_DOWN }, /* NC */ #endif /* GPA 1 */ { EXYNOS5420_GPA1(2), S3C_GPIO_INPUT, GPIO_LV_N, S3C_GPIO_PULL_NONE }, /* SENSOR_I2C_SDA */ { EXYNOS5420_GPA1(3), S3C_GPIO_INPUT, GPIO_LV_N, S3C_GPIO_PULL_NONE }, /* SENSOR_I2C_SCL */ /* GPA 2 */ #if !defined(CONFIG_KLIMT_WIFI) { EXYNOS5420_GPA2(0), S3C_GPIO_INPUT, GPIO_LV_N, S3C_GPIO_PULL_NONE }, /* GRIP_SDA */ { EXYNOS5420_GPA2(1), S3C_GPIO_INPUT, GPIO_LV_N, S3C_GPIO_PULL_NONE }, /* GRIP_SCL */ #endif { EXYNOS5420_GPA2(4), S3C_GPIO_OUTPUT, GPIO_LV_L, S3C_GPIO_PULL_NONE }, /* GPIO_BTP_SPI_CLK */ { EXYNOS5420_GPA2(5), S3C_GPIO_OUTPUT, GPIO_LV_L, S3C_GPIO_PULL_NONE }, /* GPIO_BTP_SPI_CS_N */ { EXYNOS5420_GPA2(6), S3C_GPIO_INPUT, GPIO_LV_L, S3C_GPIO_PULL_DOWN }, /* GPIO_BTP_SPI_MISO */ { EXYNOS5420_GPA2(7), S3C_GPIO_OUTPUT, GPIO_LV_L, S3C_GPIO_PULL_NONE }, /* GPIO_BTP_SPI_MOSI */ /* GPB 0 */ /* GPB 1 */ /* GPB 2 */ /* GPB 3 */ { EXYNOS5420_GPB3(0), S3C_GPIO_INPUT, GPIO_LV_N, S3C_GPIO_PULL_DOWN }, /* TSP_SDA_1.8V */ { EXYNOS5420_GPB3(1), S3C_GPIO_INPUT, GPIO_LV_N, S3C_GPIO_PULL_DOWN }, /* TSP_SDA_1.8V */ { EXYNOS5420_GPB3(4), S3C_GPIO_OUTPUT, GPIO_LV_N, S3C_GPIO_PULL_NONE }, /* MEM_LDO_SCL */ { EXYNOS5420_GPB3(5), S3C_GPIO_OUTPUT, GPIO_LV_N, S3C_GPIO_PULL_NONE }, /* MEM_LDO_SDA */ /* GPC 0 */