diff options
| author | Siddhartha Agrawal <agrawals@codeaurora.org> | 2015-08-28 13:46:28 -0700 |
|---|---|---|
| committer | David Keitel <dkeitel@codeaurora.org> | 2016-03-23 20:45:29 -0700 |
| commit | d84d76e2e31fa3f44bb1af5288973fc5e6a1e9ab (patch) | |
| tree | d9d090c634d18b49df3aac575843e7dcabcf9e68 /drivers/video/fbdev | |
| parent | 3c115aaa2f9d9873f3cf299e52e72e998cab4b0d (diff) | |
msm: mdss: add support to featurize NULL packet insertion
For DSI6G v1.4.0 and above, DSI controller has support to insert
NULL packets in the middle of pixel data or DMA packets to avoid
HS-LP-HS transitions. Add support to featurize this based on DT
property.
Crs-Fixed: 880973
Change-Id: I36acfe6d27a1d750a5af12c3d136df473abb4598
Signed-off-by: Padmanabhan Komanduru <pkomandu@codeaurora.org>
Signed-off-by: Siddhartha Agrawal <agrawals@codeaurora.org>
Diffstat (limited to 'drivers/video/fbdev')
| -rw-r--r-- | drivers/video/fbdev/msm/mdss_dsi.c | 3 | ||||
| -rw-r--r-- | drivers/video/fbdev/msm/mdss_dsi.h | 1 | ||||
| -rw-r--r-- | drivers/video/fbdev/msm/mdss_dsi_host.c | 3 |
3 files changed, 6 insertions, 1 deletions
diff --git a/drivers/video/fbdev/msm/mdss_dsi.c b/drivers/video/fbdev/msm/mdss_dsi.c index 4c2d80e487bb..fab11f03aecb 100644 --- a/drivers/video/fbdev/msm/mdss_dsi.c +++ b/drivers/video/fbdev/msm/mdss_dsi.c @@ -3166,6 +3166,9 @@ static int mdss_dsi_parse_ctrl_params(struct platform_device *ctrl_pdev, struct mdss_panel_info *pinfo = &(ctrl_pdata->panel_data.panel_info); const char *data; + ctrl_pdata->null_insert_enabled = of_property_read_bool( + ctrl_pdev->dev.of_node, "qcom,null-insertion-enabled"); + data = of_get_property(ctrl_pdev->dev.of_node, "qcom,platform-strength-ctrl", &len); if (!data) { diff --git a/drivers/video/fbdev/msm/mdss_dsi.h b/drivers/video/fbdev/msm/mdss_dsi.h index a7f759d73485..d547bf45a891 100644 --- a/drivers/video/fbdev/msm/mdss_dsi.h +++ b/drivers/video/fbdev/msm/mdss_dsi.h @@ -459,6 +459,7 @@ struct mdss_dsi_ctrl_pdata { struct regulator *ibb; /* vreg handle */ struct mutex clk_lane_mutex; + bool null_insert_enabled; bool ulps; bool core_power; bool mmss_clamp; diff --git a/drivers/video/fbdev/msm/mdss_dsi_host.c b/drivers/video/fbdev/msm/mdss_dsi_host.c index ba19d8eadf31..c7d625645673 100644 --- a/drivers/video/fbdev/msm/mdss_dsi_host.c +++ b/drivers/video/fbdev/msm/mdss_dsi_host.c @@ -1178,7 +1178,8 @@ static void mdss_dsi_mode_setup(struct mdss_panel_data *pdata) } /* DSI_COMMAND_MODE_NULL_INSERTION_CTRL */ - if (ctrl_pdata->shared_data->hw_rev >= MDSS_DSI_HW_REV_104) { + if ((ctrl_pdata->shared_data->hw_rev >= MDSS_DSI_HW_REV_104) + && ctrl_pdata->null_insert_enabled) { data = (mipi->vc << 1); /* Virtual channel ID */ data |= 0 << 16; /* Word count of the NULL packet */ data |= 0x1; /* Enable Null insertion */ |
