Loading Documentation/devicetree/bindings/fb/mdss-dsi-panel.txt +4 −0 Original line number Original line Diff line number Diff line Loading @@ -350,6 +350,9 @@ Optional properties: "180" = panel is flipped in both horizontal and vertical directions "180" = panel is flipped in both horizontal and vertical directions "hflip" = panel is flipped in horizontal direction "hflip" = panel is flipped in horizontal direction "vflip" = panel is flipped in vertical direction "vflip" = panel is flipped in vertical direction - qcom,panel-ack-disabled: A boolean property to indicate, whether we need to wait for any ACK from the panel for any commands that we send. Note, if a given optional qcom,* binding is not present, then the driver will configure Note, if a given optional qcom,* binding is not present, then the driver will configure the default values specified. the default values specified. Loading Loading @@ -465,6 +468,7 @@ Example: qcom,video-to-cmd-mode-switch-commands = [15 01 00 00 00 00 02 C2 0B qcom,video-to-cmd-mode-switch-commands = [15 01 00 00 00 00 02 C2 0B 15 01 00 00 00 00 02 C2 08]; 15 01 00 00 00 00 02 C2 08]; qcom,cmd-to-video-mode-switch-commands = [15 01 00 00 00 00 02 C2 03]; qcom,cmd-to-video-mode-switch-commands = [15 01 00 00 00 00 02 C2 03]; qcom,panel-ack-disabled; qcom,mdss-dsi-horizontal-line-idle = <0 40 256>, qcom,mdss-dsi-horizontal-line-idle = <0 40 256>, <40 120 128>, <40 120 128>, <128 240 64>; <128 240 64>; Loading drivers/video/msm/mdss/mdss_dsi_host.c +5 −0 Original line number Original line Diff line number Diff line Loading @@ -978,6 +978,11 @@ int mdss_dsi_cmds_rx(struct mdss_dsi_ctrl_pdata *ctrl, struct mdss_dsi_ctrl_pdata *mctrl = NULL; struct mdss_dsi_ctrl_pdata *mctrl = NULL; if (ctrl->panel_data.panel_info.panel_ack_disabled) { pr_err("%s: ACK from Client not supported\n", __func__); return rlen; } /* /* * Turn on cmd mode in order to transmit the commands. * Turn on cmd mode in order to transmit the commands. * For video mode, do not send cmds more than one pixel line, * For video mode, do not send cmds more than one pixel line, Loading drivers/video/msm/mdss/mdss_dsi_panel.c +7 −0 Original line number Original line Diff line number Diff line Loading @@ -1097,6 +1097,13 @@ static int mdss_dsi_parse_panel_features(struct device_node *np, pr_info("%s: dynamic switch feature enabled: %d\n", __func__, pr_info("%s: dynamic switch feature enabled: %d\n", __func__, pinfo->mipi.dynamic_switch_enabled); pinfo->mipi.dynamic_switch_enabled); pinfo->panel_ack_disabled = of_property_read_bool(np, "qcom,panel-ack-disabled"); if (pinfo->panel_ack_disabled && pinfo->esd_check_enabled) { pr_warn("ESD should not be enabled if panel ACK is disabled\n"); pinfo->esd_check_enabled = false; } return 0; return 0; } } Loading drivers/video/msm/mdss/mdss_panel.h +1 −0 Original line number Original line Diff line number Diff line Loading @@ -360,6 +360,7 @@ struct mdss_panel_info { int pwm_period; int pwm_period; bool dynamic_fps; bool dynamic_fps; bool ulps_feature_enabled; bool ulps_feature_enabled; bool panel_ack_disabled; bool esd_check_enabled; bool esd_check_enabled; char dfps_update; char dfps_update; int new_fps; int new_fps; Loading Loading
Documentation/devicetree/bindings/fb/mdss-dsi-panel.txt +4 −0 Original line number Original line Diff line number Diff line Loading @@ -350,6 +350,9 @@ Optional properties: "180" = panel is flipped in both horizontal and vertical directions "180" = panel is flipped in both horizontal and vertical directions "hflip" = panel is flipped in horizontal direction "hflip" = panel is flipped in horizontal direction "vflip" = panel is flipped in vertical direction "vflip" = panel is flipped in vertical direction - qcom,panel-ack-disabled: A boolean property to indicate, whether we need to wait for any ACK from the panel for any commands that we send. Note, if a given optional qcom,* binding is not present, then the driver will configure Note, if a given optional qcom,* binding is not present, then the driver will configure the default values specified. the default values specified. Loading Loading @@ -465,6 +468,7 @@ Example: qcom,video-to-cmd-mode-switch-commands = [15 01 00 00 00 00 02 C2 0B qcom,video-to-cmd-mode-switch-commands = [15 01 00 00 00 00 02 C2 0B 15 01 00 00 00 00 02 C2 08]; 15 01 00 00 00 00 02 C2 08]; qcom,cmd-to-video-mode-switch-commands = [15 01 00 00 00 00 02 C2 03]; qcom,cmd-to-video-mode-switch-commands = [15 01 00 00 00 00 02 C2 03]; qcom,panel-ack-disabled; qcom,mdss-dsi-horizontal-line-idle = <0 40 256>, qcom,mdss-dsi-horizontal-line-idle = <0 40 256>, <40 120 128>, <40 120 128>, <128 240 64>; <128 240 64>; Loading
drivers/video/msm/mdss/mdss_dsi_host.c +5 −0 Original line number Original line Diff line number Diff line Loading @@ -978,6 +978,11 @@ int mdss_dsi_cmds_rx(struct mdss_dsi_ctrl_pdata *ctrl, struct mdss_dsi_ctrl_pdata *mctrl = NULL; struct mdss_dsi_ctrl_pdata *mctrl = NULL; if (ctrl->panel_data.panel_info.panel_ack_disabled) { pr_err("%s: ACK from Client not supported\n", __func__); return rlen; } /* /* * Turn on cmd mode in order to transmit the commands. * Turn on cmd mode in order to transmit the commands. * For video mode, do not send cmds more than one pixel line, * For video mode, do not send cmds more than one pixel line, Loading
drivers/video/msm/mdss/mdss_dsi_panel.c +7 −0 Original line number Original line Diff line number Diff line Loading @@ -1097,6 +1097,13 @@ static int mdss_dsi_parse_panel_features(struct device_node *np, pr_info("%s: dynamic switch feature enabled: %d\n", __func__, pr_info("%s: dynamic switch feature enabled: %d\n", __func__, pinfo->mipi.dynamic_switch_enabled); pinfo->mipi.dynamic_switch_enabled); pinfo->panel_ack_disabled = of_property_read_bool(np, "qcom,panel-ack-disabled"); if (pinfo->panel_ack_disabled && pinfo->esd_check_enabled) { pr_warn("ESD should not be enabled if panel ACK is disabled\n"); pinfo->esd_check_enabled = false; } return 0; return 0; } } Loading
drivers/video/msm/mdss/mdss_panel.h +1 −0 Original line number Original line Diff line number Diff line Loading @@ -360,6 +360,7 @@ struct mdss_panel_info { int pwm_period; int pwm_period; bool dynamic_fps; bool dynamic_fps; bool ulps_feature_enabled; bool ulps_feature_enabled; bool panel_ack_disabled; bool esd_check_enabled; bool esd_check_enabled; char dfps_update; char dfps_update; int new_fps; int new_fps; Loading