propagation: panel: add ft8006s special reset timing control
add a panel reset before touch reset enable for djn ft8006s special timing Change-Id: I29a103bd6a0c0f9663e1d956024e922fe17b3af8 Signed-off-by: tanhua1 <tanhua1@lenovo.com> Reviewed-on: https://gerrit.mot.com/2051894 SME-Granted: SME Approvals Granted SLTApproved: Slta Waiver Tested-by: Jira Key Reviewed-by: Xiangpo Zhao <zhaoxp3@motorola.com> Submit-Approved: Jira Key Reviewed-on: https://gerrit.mot.com/2053274 Reviewed-by: Marcos Sassahara <msassaha@motorola.com> Reviewed-by: Carlos Pinho <cpinho@motorola.com>
This commit is contained in:
1 parent
3d023239dc
commit
a854918923
2 files changed
+27
No files matched your search
@@ -452,6 +452,16 @@ int dsi_panel_reset(struct dsi_panel *panel)
|
||||
|
||||
/* set tp rst before lcd rst */
|
||||
if (r_config->panel_on_tp_rst_enable && gpio_is_valid(r_config->tp_rst_gpio)) {
|
||||
if(r_config->panel_rst_due_tp_rst) {
|
||||
DSI_INFO("dsp dbg: set lcd reset_gpio to 1\n");
|
||||
gpio_set_value(r_config->reset_gpio, 1);
|
||||
usleep_range(r_config->panel_rst_due_tp_rst_sleep*1000,
|
||||
(r_config->panel_rst_due_tp_rst_sleep*1000) + 100);
|
||||
DSI_INFO("dsp dbg: set lcd reset_gpio to 0\n");
|
||||
gpio_set_value(r_config->reset_gpio, 0);
|
||||
usleep_range(r_config->panel_rst_due_tp_rst_sleep*1000,
|
||||
(r_config->panel_rst_due_tp_rst_sleep*1000) + 100);
|
||||
}
|
||||
rc = gpio_request(r_config->tp_rst_gpio, "tp_rst_gpio");
|
||||
if (rc) {
|
||||
DSI_ERR("request for tp_rst_gpio failed, rc=%d\n", rc);
|
||||
@@ -2603,6 +2613,21 @@ static int dsi_panel_parse_reset_sequence(struct dsi_panel *panel)
|
||||
DSI_DEBUG("[%s] tp_rst_gpio=%d, tp_rst_post_sleep=%d\n", panel->name,
|
||||
panel->reset_config.tp_rst_gpio, panel->reset_config.tp_rst_post_sleep);
|
||||
}
|
||||
|
||||
panel->reset_config.panel_rst_due_tp_rst = utils->read_bool(utils->data,
|
||||
"qcom,mdss-panel-rst-due-tp-rst");
|
||||
|
||||
DSI_INFO("[%s] panel_rst_due_tp_rst=%d\n", panel->name,
|
||||
panel->reset_config.panel_rst_due_tp_rst);
|
||||
|
||||
rc = utils->read_u32(utils->data,
|
||||
"qcom,mdss-dsi-panel-rst-due-tp-post-ms", &panel->reset_config.panel_rst_due_tp_rst_sleep);
|
||||
if (rc) {
|
||||
panel->reset_config.panel_rst_due_tp_rst_sleep = 0;
|
||||
} else {
|
||||
DSI_INFO("[%s] panel_rst_due_tp_rst_sleep=%d\n", panel->name,
|
||||
panel->reset_config.panel_rst_due_tp_rst_sleep);
|
||||
}
|
||||
}
|
||||
|
||||
rc = utils->read_u32_array(utils->data, "qcom,mdss-dsi-reset-sequence",
|
||||
|
||||
@@ -192,11 +192,13 @@ struct dsi_panel_reset_config {
|
||||
int lcd_mode_sel_gpio;
|
||||
int tp_rst_gpio;
|
||||
u32 tp_rst_post_sleep;
|
||||
u32 panel_rst_due_tp_rst_sleep;
|
||||
u32 mode_sel_state;
|
||||
|
||||
bool panel_on_rst_pull_down;
|
||||
bool panel_on_tp_rst_enable;
|
||||
bool reset_force_pull_low;
|
||||
bool panel_rst_due_tp_rst;
|
||||
};
|
||||
|
||||
enum esd_check_status_mode {
|
||||
|
||||
Reference in new issue
Block a user