disp: msm: Fixing motUtil tool for ACL feature
- Mot's panel param feature is working with sending single MIPI DSI command, but it doesn't work correct with sending more than one MIPI DSI commands - Enable ACL support to enable or disable ACL feature with the MotUtil tool. This tool is designed to validate the MOT display DRM Framework. Change-Id: I211818d9c2b2c8a736f4dfc1768c78357383c531 Signed-off-by: Bang Nguyen <bangnguyen@motorola.com> Reviewed-on: https://gerrit.mot.com/1697631 SME-Granted: SME Approvals Granted SLTApproved: Slta Waiver Tested-by: Jira Key Reviewed-by: Guobin Zhang <zhanggb@motorola.com> Submit-Approved: Jira Key Signed-off-by: tanhua1 <tanhua1@motorola.com> Reviewed-on: https://gerrit.mot.com/2168949 Reviewed-by: Xiangpo Zhao <zhaoxp3@motorola.com>
This commit is contained in:
1 parent
71541e9d76
commit
4c43e4cb74
1 file changed
+17
-14
+17
-14
@@ -1072,14 +1072,15 @@ static int dsi_panel_pwm_register(struct dsi_panel *panel)
|
||||
static int dsi_panel_send_param_cmd(struct dsi_panel *panel,
|
||||
struct msm_param_info *param_info)
|
||||
{
|
||||
int rc = 0;
|
||||
int rc = 0, i = 0;
|
||||
struct panel_param_val_map *param_map;
|
||||
struct panel_param_val_map *param_map_state;
|
||||
struct panel_param *panel_param;
|
||||
struct dsi_cmd_desc *cmds;
|
||||
ssize_t len;
|
||||
const struct mipi_dsi_host_ops *ops = panel->host->ops;
|
||||
u32 count;
|
||||
|
||||
const struct mipi_dsi_host_ops *ops = panel->host->ops;
|
||||
panel_param = &panel->param_cmds[param_info->param_idx];
|
||||
if (!panel_param) {
|
||||
DSI_ERR("%s: invalid panel_param.\n", __func__);
|
||||
@@ -1115,20 +1116,22 @@ static int dsi_panel_send_param_cmd(struct dsi_panel *panel,
|
||||
}
|
||||
|
||||
cmds = param_map_state->cmds->cmds;
|
||||
if (param_map_state->cmds->state == DSI_CMD_SET_STATE_LP)
|
||||
cmds->msg.flags |= MIPI_DSI_MSG_USE_LPM |
|
||||
MIPI_DSI_MSG_LASTCOMMAND;
|
||||
if (cmds->last_command)
|
||||
cmds->msg.flags |= MIPI_DSI_MSG_LASTCOMMAND;
|
||||
count = param_map_state->cmds->count;
|
||||
|
||||
len = ops->transfer(panel->host, &cmds->msg);
|
||||
if (len < 0) {
|
||||
rc = len;
|
||||
DSI_ERR("%s:failed to send param cmd, rc=%d\n",
|
||||
__func__, rc);
|
||||
goto end;
|
||||
for (i =0; i < count; i++) {
|
||||
if (param_map_state->cmds->state == DSI_CMD_SET_STATE_LP)
|
||||
cmds->msg.flags |= MIPI_DSI_MSG_USE_LPM;
|
||||
if (cmds->last_command)
|
||||
cmds->msg.flags |= MIPI_DSI_MSG_LASTCOMMAND;
|
||||
len = ops->transfer(panel->host, &cmds->msg);
|
||||
if (len < 0) {
|
||||
rc = len;
|
||||
DSI_ERR("%s:failed to send param cmd, rc=%d\n",
|
||||
__func__, rc);
|
||||
goto end;
|
||||
}
|
||||
cmds++;
|
||||
}
|
||||
|
||||
panel_param->value = param_info->value;
|
||||
DSI_INFO("(%d) is setting new value %d\n",
|
||||
param_info->param_idx, param_info->value);
|
||||
|
||||
Reference in new issue
Block a user