summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLinux Build Service Account <lnxbuild@localhost>2017-04-03 06:24:41 -0700
committerGerrit - the friendly Code Review server <code-review@localhost>2017-04-03 06:24:41 -0700
commit7cb9e91f79d53e65eb9b2248408f39e660bc56c7 (patch)
tree2f9b78e893184aa2e789f1373734e8a0cc1d8078
parentc13fd2afead6904ae3261682367a0c5473ced4e5 (diff)
parent91939509bccbc2bb5aea7c4d1ad671406026faa9 (diff)
Merge "msm: mdss: Add support to read BL level for userspace"
-rw-r--r--drivers/video/fbdev/msm/mdss_fb.c4
-rw-r--r--drivers/video/fbdev/msm/mdss_fb.h1
-rw-r--r--drivers/video/fbdev/msm/mdss_mdp_ctl.c1
3 files changed, 5 insertions, 1 deletions
diff --git a/drivers/video/fbdev/msm/mdss_fb.c b/drivers/video/fbdev/msm/mdss_fb.c
index fe79b6fd52b4..fc47de7692e7 100644
--- a/drivers/video/fbdev/msm/mdss_fb.c
+++ b/drivers/video/fbdev/msm/mdss_fb.c
@@ -301,6 +301,7 @@ static void mdss_fb_set_bl_brightness(struct led_classdev *led_cdev,
mdss_fb_set_backlight(mfd, bl_lvl);
mutex_unlock(&mfd->bl_lock);
}
+ mfd->bl_level_usr = bl_lvl;
}
static enum led_brightness mdss_fb_get_bl_brightness(
@@ -309,7 +310,7 @@ static enum led_brightness mdss_fb_get_bl_brightness(
struct msm_fb_data_type *mfd = dev_get_drvdata(led_cdev->dev->parent);
enum led_brightness value;
- MDSS_BL_TO_BRIGHT(value, mfd->bl_level, mfd->panel_info->bl_max,
+ MDSS_BL_TO_BRIGHT(value, mfd->bl_level_usr, mfd->panel_info->bl_max,
mfd->panel_info->brightness_max);
return value;
@@ -1276,6 +1277,7 @@ static int mdss_fb_probe(struct platform_device *pdev)
mfd->calib_mode_bl = 0;
mfd->unset_bl_level = U32_MAX;
mfd->bl_extn_level = -1;
+ mfd->bl_level_usr = backlight_led.brightness;
mfd->pdev = pdev;
diff --git a/drivers/video/fbdev/msm/mdss_fb.h b/drivers/video/fbdev/msm/mdss_fb.h
index 321531c72a08..f046ff08cbf7 100644
--- a/drivers/video/fbdev/msm/mdss_fb.h
+++ b/drivers/video/fbdev/msm/mdss_fb.h
@@ -314,6 +314,7 @@ struct msm_fb_data_type {
u32 unset_bl_level;
bool allow_bl_update;
u32 bl_level_scaled;
+ u32 bl_level_usr;
struct mutex bl_lock;
struct mutex mdss_sysfs_lock;
bool ipc_resume;
diff --git a/drivers/video/fbdev/msm/mdss_mdp_ctl.c b/drivers/video/fbdev/msm/mdss_mdp_ctl.c
index bd70535e79f9..49348e5e16a9 100644
--- a/drivers/video/fbdev/msm/mdss_mdp_ctl.c
+++ b/drivers/video/fbdev/msm/mdss_mdp_ctl.c
@@ -6061,6 +6061,7 @@ int mdss_mdp_display_commit(struct mdss_mdp_ctl *ctl, void *arg,
mutex_lock(&ctl->mfd->bl_lock);
mdss_fb_set_backlight(ctl->mfd,
ctl->mfd->bl_extn_level);
+ ctl->mfd->bl_level_usr = ctl->mfd->bl_extn_level;
mutex_unlock(&ctl->mfd->bl_lock);
}
}