static int wm831x_backlight_update_status(struct backlight_device *bl) { int brightness = bl->props.brightness; if (brightness<=BL_MISC_VALUE) { brightness = 8*brightness; } else if (brightness<=BL_INIT_VALUE) { brightness = 31*brightness/41 + 145; } else { brightness = 33*brightness/153 + 200; } if(gwm831x_data->suspend_flag == 1) brightness = 0; if (gwm831x_data->shutdown_flag == 1) brightness = 0; if (bl->props.power != FB_BLANK_UNBLANK) brightness = 0; if (bl->props.fb_blank != FB_BLANK_UNBLANK) brightness = 0; if (bl->props.state & BL_CORE_SUSPENDED) brightness = 0; printk("backlight brightness=%d\n", brightness); return wm831x_backlight_set(bl, brightness); }
static int wm831x_backlight_update_status(struct backlight_device *bl) { int brightness = bl->props.brightness; if (bl->props.power != FB_BLANK_UNBLANK) brightness = 0; if (bl->props.fb_blank != FB_BLANK_UNBLANK) brightness = 0; if (bl->props.state & BL_CORE_SUSPENDED) brightness = 0; return wm831x_backlight_set(bl, brightness); }