/* LCD power controller */ static void smdkc100_lcd_power_set(struct plat_lcd_data *pd, unsigned int power) { if (power) { /* module reset */ gpio_direction_output(S5PC100_GPH0(6), 1); mdelay(100); gpio_direction_output(S5PC100_GPH0(6), 0); mdelay(10); gpio_direction_output(S5PC100_GPH0(6), 1); mdelay(10); } }
static void __init smdkc100_machine_init(void) { s3c24xx_ts_set_platdata(&s3c_ts_platform); /* I2C */ s3c_i2c0_set_platdata(NULL); s3c_i2c1_set_platdata(NULL); i2c_register_board_info(0, i2c_devs0, ARRAY_SIZE(i2c_devs0)); i2c_register_board_info(1, i2c_devs1, ARRAY_SIZE(i2c_devs1)); s3c_fb_set_platdata(&smdkc100_lcd_pdata); s3c_ide_set_platdata(&smdkc100_ide_pdata); samsung_keypad_set_platdata(&smdkc100_keypad_data); s5pc100_spdif_setup_gpio(S5PC100_SPDIF_GPD); /* LCD init */ gpio_request(S5PC100_GPH0(6), "GPH0"); smdkc100_lcd_power_set(&smdkc100_lcd_power_data, 0); samsung_bl_set(&smdkc100_bl_gpio_info, &smdkc100_bl_data); platform_add_devices(smdkc100_devices, ARRAY_SIZE(smdkc100_devices)); }
static void __init smdkc100_machine_init(void) { /* I2C */ s3c_i2c0_set_platdata(NULL); s3c_i2c1_set_platdata(NULL); i2c_register_board_info(0, i2c_devs0, ARRAY_SIZE(i2c_devs0)); i2c_register_board_info(1, i2c_devs1, ARRAY_SIZE(i2c_devs1)); s3c_fb_set_platdata(&smdkc100_lcd_pdata); /* LCD init */ gpio_request(S5PC100_GPD(0), "GPD"); gpio_request(S5PC100_GPH0(6), "GPH0"); smdkc100_lcd_power_set(&smdkc100_lcd_power_data, 0); platform_add_devices(smdkc100_devices, ARRAY_SIZE(smdkc100_devices)); }
static int s5pc1xx_gpiolib_to_eint(struct gpio_chip *chip, unsigned int offset) { int base; base = chip->base - S5PC100_GPH0(0); if (base == 0) return IRQ_EINT(offset); base = chip->base - S5PC100_GPH1(0); if (base == 0) return IRQ_EINT(8 + offset); base = chip->base - S5PC100_GPH2(0); if (base == 0) return IRQ_EINT(16 + offset); base = chip->base - S5PC100_GPH3(0); if (base == 0) return IRQ_EINT(24 + offset); return -EINVAL; }
.ngpio = S5PC100_GPIO_G2_NR, .label = "GPG2", }, }, { .base = S5PC100_GPG3_BASE, .config = &gpio_cfg, .chip = { .base = S5PC100_GPG3(0), .ngpio = S5PC100_GPIO_G3_NR, .label = "GPG3", }, }, { .base = S5PC100_GPH0_BASE, .config = &gpio_cfg_eint, .chip = { .base = S5PC100_GPH0(0), .ngpio = S5PC100_GPIO_H0_NR, .label = "GPH0", }, }, { .base = S5PC100_GPH1_BASE, .config = &gpio_cfg_eint, .chip = { .base = S5PC100_GPH1(0), .ngpio = S5PC100_GPIO_H1_NR, .label = "GPH1", }, }, { .base = S5PC100_GPH2_BASE, .config = &gpio_cfg_eint, .chip = {