Loading drivers/video/msm/mdss/mdss_dsi_panel.c +33 −30 Original line number Diff line number Diff line Loading @@ -1675,6 +1675,38 @@ static void mdss_dsi_parse_esd_params(struct device_node *np, if (!pinfo->esd_check_enabled) return; ctrl->status_mode = ESD_MAX; rc = of_property_read_string(np, "qcom,mdss-dsi-panel-status-check-mode", &string); if (!rc) { if (!strcmp(string, "bta_check")) { ctrl->status_mode = ESD_BTA; } else if (!strcmp(string, "reg_read")) { ctrl->status_mode = ESD_REG; ctrl->check_read_status = mdss_dsi_gen_read_status; } else if (!strcmp(string, "reg_read_nt35596")) { ctrl->status_mode = ESD_REG_NT35596; ctrl->status_error_count = 0; ctrl->check_read_status = mdss_dsi_nt35596_read_status; } else if (!strcmp(string, "te_signal_check")) { if (pinfo->mipi.mode == DSI_CMD_MODE) { ctrl->status_mode = ESD_TE; } else { pr_err("TE-ESD not valid for video mode\n"); goto error; } } else { pr_err("No valid panel-status-check-mode string\n"); goto error; } } if ((ctrl->status_mode == ESD_BTA) || (ctrl->status_mode == ESD_TE) || (ctrl->status_mode == ESD_MAX)) return; mdss_dsi_parse_dcs_cmds(np, &ctrl->status_cmds, "qcom,mdss-dsi-panel-status-command", "qcom,mdss-dsi-panel-status-command-state"); Loading Loading @@ -1730,43 +1762,14 @@ static void mdss_dsi_parse_esd_params(struct device_node *np, memset(ctrl->status_value, 0, ctrl->groups * status_len); } ctrl->status_mode = ESD_MAX; rc = of_property_read_string(np, "qcom,mdss-dsi-panel-status-check-mode", &string); if (!rc) { if (!strcmp(string, "bta_check")) { ctrl->status_mode = ESD_BTA; } else if (!strcmp(string, "reg_read")) { ctrl->status_mode = ESD_REG; ctrl->check_read_status = mdss_dsi_gen_read_status; } else if (!strcmp(string, "reg_read_nt35596")) { ctrl->status_mode = ESD_REG_NT35596; ctrl->status_error_count = 0; ctrl->check_read_status = mdss_dsi_nt35596_read_status; } else if (!strcmp(string, "te_signal_check")) { if (pinfo->mipi.mode == DSI_CMD_MODE) { ctrl->status_mode = ESD_TE; } else { pr_err("TE-ESD not valid for video mode\n"); goto error; } } else { pr_err("No valid panel-status-check-mode string\n"); goto error; } } return; error: kfree(ctrl->return_buf); error2: kfree(ctrl->status_value); error1: kfree(ctrl->status_valid_params); kfree(ctrl->status_cmds_rlen); error: pinfo->esd_check_enabled = false; } Loading Loading
drivers/video/msm/mdss/mdss_dsi_panel.c +33 −30 Original line number Diff line number Diff line Loading @@ -1675,6 +1675,38 @@ static void mdss_dsi_parse_esd_params(struct device_node *np, if (!pinfo->esd_check_enabled) return; ctrl->status_mode = ESD_MAX; rc = of_property_read_string(np, "qcom,mdss-dsi-panel-status-check-mode", &string); if (!rc) { if (!strcmp(string, "bta_check")) { ctrl->status_mode = ESD_BTA; } else if (!strcmp(string, "reg_read")) { ctrl->status_mode = ESD_REG; ctrl->check_read_status = mdss_dsi_gen_read_status; } else if (!strcmp(string, "reg_read_nt35596")) { ctrl->status_mode = ESD_REG_NT35596; ctrl->status_error_count = 0; ctrl->check_read_status = mdss_dsi_nt35596_read_status; } else if (!strcmp(string, "te_signal_check")) { if (pinfo->mipi.mode == DSI_CMD_MODE) { ctrl->status_mode = ESD_TE; } else { pr_err("TE-ESD not valid for video mode\n"); goto error; } } else { pr_err("No valid panel-status-check-mode string\n"); goto error; } } if ((ctrl->status_mode == ESD_BTA) || (ctrl->status_mode == ESD_TE) || (ctrl->status_mode == ESD_MAX)) return; mdss_dsi_parse_dcs_cmds(np, &ctrl->status_cmds, "qcom,mdss-dsi-panel-status-command", "qcom,mdss-dsi-panel-status-command-state"); Loading Loading @@ -1730,43 +1762,14 @@ static void mdss_dsi_parse_esd_params(struct device_node *np, memset(ctrl->status_value, 0, ctrl->groups * status_len); } ctrl->status_mode = ESD_MAX; rc = of_property_read_string(np, "qcom,mdss-dsi-panel-status-check-mode", &string); if (!rc) { if (!strcmp(string, "bta_check")) { ctrl->status_mode = ESD_BTA; } else if (!strcmp(string, "reg_read")) { ctrl->status_mode = ESD_REG; ctrl->check_read_status = mdss_dsi_gen_read_status; } else if (!strcmp(string, "reg_read_nt35596")) { ctrl->status_mode = ESD_REG_NT35596; ctrl->status_error_count = 0; ctrl->check_read_status = mdss_dsi_nt35596_read_status; } else if (!strcmp(string, "te_signal_check")) { if (pinfo->mipi.mode == DSI_CMD_MODE) { ctrl->status_mode = ESD_TE; } else { pr_err("TE-ESD not valid for video mode\n"); goto error; } } else { pr_err("No valid panel-status-check-mode string\n"); goto error; } } return; error: kfree(ctrl->return_buf); error2: kfree(ctrl->status_value); error1: kfree(ctrl->status_valid_params); kfree(ctrl->status_cmds_rlen); error: pinfo->esd_check_enabled = false; } Loading