int s3cfb_set_gpio(void) { int i, err; /* LCD_HSYNC, LCD_VSYNC, LCD_VDEN, LCD_VCLK, VD[23:0] */ for (i = 0; i < 8; i++) s3c_gpio_cfgpin(S5PC1XX_GPF0(i), S3C_GPIO_SFN(2)); for (i = 0; i < 8; i++) s3c_gpio_cfgpin(S5PC1XX_GPF1(i), S3C_GPIO_SFN(2)); for (i = 0; i < 8; i++) s3c_gpio_cfgpin(S5PC1XX_GPF2(i), S3C_GPIO_SFN(2)); for (i = 0; i < 4; i++) s3c_gpio_cfgpin(S5PC1XX_GPF3(i), S3C_GPIO_SFN(2)); #ifndef CONFIG_BACKLIGHT_PWM /* backlight ON */ if (gpio_is_valid(S5PC1XX_GPD(0))) { err = gpio_request(S5PC1XX_GPD(0), "GPD"); if (err) { printk(KERN_ERR "failed to request GPD for " "lcd backlight control\n"); return err; } gpio_direction_output(S5PC1XX_GPD(0), 1); } #endif /* module reset */ if (gpio_is_valid(S5PC1XX_GPH0(6))) { err = gpio_request(S5PC1XX_GPH0(6), "GPH0"); if (err) { printk(KERN_ERR "failed to request GPH0 for " "lcd reset control\n"); return err; } gpio_direction_output(S5PC1XX_GPH0(6), 1); } mdelay(100); gpio_set_value(S5PC1XX_GPH0(6), 0); mdelay(10); gpio_set_value(S5PC1XX_GPH0(6), 1); mdelay(10); gpio_free(S5PC1XX_GPH0(6)); #ifndef CONFIG_BACKLIGHT_PWM gpio_free(S5PC1XX_GPD(0)); #endif return 0; }
static void smdkc100_cfg_gpio(struct platform_device *pdev) { int i; for (i = 0; i < 8; i++) s3c_gpio_cfgpin(S5PC1XX_GPF0(i), S3C_GPIO_SFN(2)); for (i = 0; i < 8; i++) s3c_gpio_cfgpin(S5PC1XX_GPF1(i), S3C_GPIO_SFN(2)); for (i = 0; i < 8; i++) s3c_gpio_cfgpin(S5PC1XX_GPF2(i), S3C_GPIO_SFN(2)); for (i = 0; i < 4; i++) s3c_gpio_cfgpin(S5PC1XX_GPF3(i), S3C_GPIO_SFN(2)); }
void s3cfb_cfg_gpio(struct platform_device *pdev) { int i; for (i = 0; i < 8; i++) s3c_gpio_cfgpin(S5PC1XX_GPF0(i), S3C_GPIO_SFN(2)); for (i = 0; i < 8; i++) s3c_gpio_cfgpin(S5PC1XX_GPF1(i), S3C_GPIO_SFN(2)); for (i = 0; i < 8; i++) s3c_gpio_cfgpin(S5PC1XX_GPF2(i), S3C_GPIO_SFN(2)); for (i = 0; i < 4; i++) s3c_gpio_cfgpin(S5PC1XX_GPF3(i), S3C_GPIO_SFN(2)); /* mDNIe SEL: why we shall write 0x2 ? */ writel(0x2, S5P_MDNIE_SEL); }