Loading arch/arm64/boot/dts/qcom/dsi-panel-sw43404-amoled-dsc-wqhd-cmd.dtsi +10 −1 Original line number Diff line number Diff line Loading @@ -45,6 +45,7 @@ 17000 15500 30000 8000 3000>; qcom,mdss-dsi-panel-peak-brightness = <4200000>; qcom,mdss-dsi-panel-blackness-level = <3230>; qcom,mdss-dsi-qsync-min-refresh-rate = <55>; qcom,mdss-dsi-display-timings { timing@0{ Loading @@ -65,6 +66,7 @@ qcom,mdss-dsi-panel-jitter = <0x4 0x1>; qcom,mdss-dsi-on-command = [ 39 01 00 00 00 00 03 b0 a5 00 39 01 00 00 00 00 03 5c 42 00 07 01 00 00 00 00 02 01 00 0a 01 00 00 00 00 80 11 00 00 89 30 80 0B 40 05 A0 05 A0 02 D0 02 D0 02 00 Loading Loading @@ -94,7 +96,14 @@ qcom,mdss-dsi-on-command-state = "dsi_lp_mode"; qcom,mdss-dsi-off-command-state = "dsi_hs_mode"; qcom,mdss-dsi-h-sync-pulse = <0>; qcom,mdss-dsi-qsync-on-commands = [15 01 00 00 00 00 02 5a 01]; qcom,mdss-dsi-qsync-on-commands-state = "dsi_lp_mode"; qcom,mdss-dsi-qsync-off-commands = [15 01 00 00 00 00 02 5a 00]; qcom,mdss-dsi-qsync-off-commands-state = "dsi_lp_mode"; qcom,compression-mode = "dsc"; qcom,mdss-dsc-slice-height = <1440>; qcom,mdss-dsc-slice-width = <720>; Loading arch/arm64/boot/dts/qcom/sm8150-sde.dtsi +1 −1 Original line number Diff line number Diff line Loading @@ -60,7 +60,7 @@ qcom,sde-mixer-off = <0x45000 0x46000 0x47000 0x48000 0x49000 0x4a000>; qcom,sde-mixer-size = <0x320>; qcom,sde-mixer-display-pref = "primary", "none", "none", qcom,sde-mixer-display-pref = "primary", "primary", "none", "none", "none", "none"; qcom,sde-dspp-top-off = <0x1300>; Loading drivers/gpu/drm/msm/dsi-staging/dsi_display.c +3 −0 Original line number Diff line number Diff line Loading @@ -3995,6 +3995,9 @@ int dsi_display_cont_splash_config(void *dsi_display) dsi_config_host_engine_state_for_cont_splash(display); mutex_unlock(&display->display_lock); /* Set the current brightness level */ dsi_panel_bl_handoff(display->panel); return rc; clks_disabled: Loading drivers/gpu/drm/msm/dsi-staging/dsi_panel.c +34 −0 Original line number Diff line number Diff line Loading @@ -644,6 +644,40 @@ int dsi_panel_set_backlight(struct dsi_panel *panel, u32 bl_lvl) return rc; } static u32 dsi_panel_get_brightness(struct dsi_backlight_config *bl) { u32 cur_bl_level; struct backlight_device *bd = bl->raw_bd; /* default the brightness level to 50% */ cur_bl_level = bl->bl_max_level >> 1; switch (bl->type) { case DSI_BACKLIGHT_WLED: /* Try to query the backlight level from the backlight device */ if (bd->ops && bd->ops->get_brightness) cur_bl_level = bd->ops->get_brightness(bd); break; case DSI_BACKLIGHT_DCS: default: /* * Ideally, we should read the backlight level from the * panel. For now, just set it default value. */ break; } pr_debug("cur_bl_level=%d\n", cur_bl_level); return cur_bl_level; } void dsi_panel_bl_handoff(struct dsi_panel *panel) { struct dsi_backlight_config *bl = &panel->bl_config; bl->bl_level = dsi_panel_get_brightness(bl); } static int dsi_panel_bl_register(struct dsi_panel *panel) { int rc = 0; Loading drivers/gpu/drm/msm/dsi-staging/dsi_panel.h +2 −0 Original line number Diff line number Diff line Loading @@ -285,6 +285,8 @@ int dsi_panel_post_switch(struct dsi_panel *panel); void dsi_dsc_pclk_param_calc(struct msm_display_dsc_info *dsc, int intf_width); void dsi_panel_bl_handoff(struct dsi_panel *panel); struct dsi_panel *dsi_panel_ext_bridge_get(struct device *parent, struct device_node *of_node, int topology_override); Loading Loading
arch/arm64/boot/dts/qcom/dsi-panel-sw43404-amoled-dsc-wqhd-cmd.dtsi +10 −1 Original line number Diff line number Diff line Loading @@ -45,6 +45,7 @@ 17000 15500 30000 8000 3000>; qcom,mdss-dsi-panel-peak-brightness = <4200000>; qcom,mdss-dsi-panel-blackness-level = <3230>; qcom,mdss-dsi-qsync-min-refresh-rate = <55>; qcom,mdss-dsi-display-timings { timing@0{ Loading @@ -65,6 +66,7 @@ qcom,mdss-dsi-panel-jitter = <0x4 0x1>; qcom,mdss-dsi-on-command = [ 39 01 00 00 00 00 03 b0 a5 00 39 01 00 00 00 00 03 5c 42 00 07 01 00 00 00 00 02 01 00 0a 01 00 00 00 00 80 11 00 00 89 30 80 0B 40 05 A0 05 A0 02 D0 02 D0 02 00 Loading Loading @@ -94,7 +96,14 @@ qcom,mdss-dsi-on-command-state = "dsi_lp_mode"; qcom,mdss-dsi-off-command-state = "dsi_hs_mode"; qcom,mdss-dsi-h-sync-pulse = <0>; qcom,mdss-dsi-qsync-on-commands = [15 01 00 00 00 00 02 5a 01]; qcom,mdss-dsi-qsync-on-commands-state = "dsi_lp_mode"; qcom,mdss-dsi-qsync-off-commands = [15 01 00 00 00 00 02 5a 00]; qcom,mdss-dsi-qsync-off-commands-state = "dsi_lp_mode"; qcom,compression-mode = "dsc"; qcom,mdss-dsc-slice-height = <1440>; qcom,mdss-dsc-slice-width = <720>; Loading
arch/arm64/boot/dts/qcom/sm8150-sde.dtsi +1 −1 Original line number Diff line number Diff line Loading @@ -60,7 +60,7 @@ qcom,sde-mixer-off = <0x45000 0x46000 0x47000 0x48000 0x49000 0x4a000>; qcom,sde-mixer-size = <0x320>; qcom,sde-mixer-display-pref = "primary", "none", "none", qcom,sde-mixer-display-pref = "primary", "primary", "none", "none", "none", "none"; qcom,sde-dspp-top-off = <0x1300>; Loading
drivers/gpu/drm/msm/dsi-staging/dsi_display.c +3 −0 Original line number Diff line number Diff line Loading @@ -3995,6 +3995,9 @@ int dsi_display_cont_splash_config(void *dsi_display) dsi_config_host_engine_state_for_cont_splash(display); mutex_unlock(&display->display_lock); /* Set the current brightness level */ dsi_panel_bl_handoff(display->panel); return rc; clks_disabled: Loading
drivers/gpu/drm/msm/dsi-staging/dsi_panel.c +34 −0 Original line number Diff line number Diff line Loading @@ -644,6 +644,40 @@ int dsi_panel_set_backlight(struct dsi_panel *panel, u32 bl_lvl) return rc; } static u32 dsi_panel_get_brightness(struct dsi_backlight_config *bl) { u32 cur_bl_level; struct backlight_device *bd = bl->raw_bd; /* default the brightness level to 50% */ cur_bl_level = bl->bl_max_level >> 1; switch (bl->type) { case DSI_BACKLIGHT_WLED: /* Try to query the backlight level from the backlight device */ if (bd->ops && bd->ops->get_brightness) cur_bl_level = bd->ops->get_brightness(bd); break; case DSI_BACKLIGHT_DCS: default: /* * Ideally, we should read the backlight level from the * panel. For now, just set it default value. */ break; } pr_debug("cur_bl_level=%d\n", cur_bl_level); return cur_bl_level; } void dsi_panel_bl_handoff(struct dsi_panel *panel) { struct dsi_backlight_config *bl = &panel->bl_config; bl->bl_level = dsi_panel_get_brightness(bl); } static int dsi_panel_bl_register(struct dsi_panel *panel) { int rc = 0; Loading
drivers/gpu/drm/msm/dsi-staging/dsi_panel.h +2 −0 Original line number Diff line number Diff line Loading @@ -285,6 +285,8 @@ int dsi_panel_post_switch(struct dsi_panel *panel); void dsi_dsc_pclk_param_calc(struct msm_display_dsc_info *dsc, int intf_width); void dsi_panel_bl_handoff(struct dsi_panel *panel); struct dsi_panel *dsi_panel_ext_bridge_get(struct device *parent, struct device_node *of_node, int topology_override); Loading