static int rk_fb_io_init(struct rk29_fb_setting_info *fb_setting) { int ret = 0; ret = rk_gpio_request(LCD_CS_PIN, GPIOF_DIR_OUT, LCD_CS_VALUE, "lcd_cs"); if(ret < 0) return ret; return rk_gpio_request(LCD_EN_PIN, GPIOF_DIR_OUT, LCD_EN_VALUE, "lcd_en"); }
static int goodix_init_platform_hw(void) { int ret = 0; ret = rk_gpio_request(TOUCH_PWR_PIN, GPIOF_DIR_OUT, TOUCH_PWR_VALUE, "touch_pwr"); if(ret < 0) return ret; msleep(100); ret = rk_gpio_request(TOUCH_RST_PIN, GPIOF_DIR_OUT, TOUCH_RST_VALUE, "touch_rst"); if(ret < 0) return ret; msleep(100); return 0; }
static int rk29_backlight_io_deinit(void) { int pwm_gpio; #ifdef LCD_DISP_ON_PIN gpio_free(BL_EN_PIN); #endif pwm_gpio = iomux_mode_to_gpio(pwm_mode[BL_PWM]); return rk_gpio_request(BL_EN_PIN, GPIOF_DIR_OUT, GPIO_LOW, "BL_PWM"); }
static int rk29_backlight_pwm_suspend(void) { int ret, pwm_gpio = iomux_mode_to_gpio(pwm_mode[BL_PWM]); ret = rk_gpio_request(pwm_gpio, GPIOF_DIR_OUT, GPIO_LOW, "BL_PWM"); if(ret < 0) return ret; #ifdef LCD_DISP_ON_PIN gpio_direction_output(BL_EN_PIN, !BL_EN_VALUE); #endif return ret; }
static int rk29_backlight_io_init(void) { int ret = 0; iomux_set(pwm_mode[BL_PWM]); msleep(50); #ifdef LCD_DISP_ON_PIN ret = rk_gpio_request(BL_EN_PIN, GPIOF_DIR_OUT, BL_EN_VALUE, "bl_en"); if(ret < 0) return ret; #endif return 0; }