static void lm3630_set_main_current_level(struct i2c_client *client, int level) { struct lm3630_device *dev = i2c_get_clientdata(client); int min_brightness = dev->min_brightness; int max_brightness = dev->max_brightness; if (level == -BOOT_BRIGHTNESS) level = dev->default_brightness; cur_main_lcd_level = level; dev->bl_dev->props.brightness = cur_main_lcd_level; store_level_used = 0; mutex_lock(&dev->bl_mutex); #if defined(CONFIG_MACH_LGE) && !defined(CONFIG_MACH_MSM8974_VU3_KR) && !defined(CONFIG_MACH_MSM8974_Z_KR) && !defined(CONFIG_MACH_MSM8974_Z_US) && !defined(CONFIG_OLED_SUPPORT) if (level < PWM_THRESHOLD) bl_set_pwm_mode(PWM_OFF); else bl_set_pwm_mode(PWM_ON); #endif if (level != 0) { if (level > 0 && level <= min_brightness) level = min_brightness; else if (level > max_brightness) level = max_brightness; if (dev->blmap) { if (level < dev->blmap_size) { cal_value = dev->blmap[level]; lm3630_write_reg(client, 0x03, cal_value); } else dev_warn(&client->dev, "invalid index %d:%d\n", dev->blmap_size, level); } else { cal_value = level; lm3630_write_reg(client, 0x03, cal_value); } } else lm3630_write_reg(client, 0x00, 0x00); mutex_unlock(&dev->bl_mutex); #ifdef CONFIG_MACH_MSM8974_VU3_KR pr_info("[LCD][DEBUG] %s : backlight level=%d, cal_value=%d \n", __func__, level, cal_value); #else pr_debug("[LCD][DEBUG] %s : backlight level=%d, cal_value=%d \n", __func__, level, cal_value); #endif }
static void lm3630_set_main_current_level(struct i2c_client *client, int level) { struct lm3630_device *dev = i2c_get_clientdata(client); int min_brightness = dev->min_brightness; int max_brightness = dev->max_brightness; cur_main_lcd_level = level; dev->bl_dev->props.brightness = cur_main_lcd_level; store_level_used = 0; mutex_lock(&dev->bl_mutex); #if defined(CONFIG_B1_LGD_PANEL) if(factory_boot) level = min_brightness; #endif #if defined(CONFIG_G2_LGD_PANEL) || defined(CONFIG_B1_LGD_PANEL) if (level < PWM_THRESHOLD) bl_set_pwm_mode(PWM_OFF); else bl_set_pwm_mode(PWM_ON); #endif if (level != 0) { if (level > 0 && level <= min_brightness) level = min_brightness; else if (level > max_brightness) level = max_brightness; if (dev->blmap) { if (level < dev->blmap_size) { cal_value = dev->blmap[level]; lm3630_write_reg(client, 0x03, cal_value); } else dev_warn(&client->dev, "invalid index %d:%d\n", dev->blmap_size, level); } else { cal_value = level; lm3630_write_reg(client, 0x03, cal_value); } } else lm3630_write_reg(client, 0x00, 0x00); mutex_unlock(&dev->bl_mutex); pr_info("%s : backlight level=%d, cal_value=%d \n", __func__, level, cal_value); }