diff options
| author | Siddhartha Agrawal <agrawals@codeaurora.org> | 2015-09-02 14:52:48 -0700 |
|---|---|---|
| committer | David Keitel <dkeitel@codeaurora.org> | 2016-03-23 20:45:29 -0700 |
| commit | 3c115aaa2f9d9873f3cf299e52e72e998cab4b0d (patch) | |
| tree | 2c6d3e3785a79ff060a2a5a1a8595eb6017f7e49 /drivers | |
| parent | 4fe4816a089217c8f024adbcd369bfa007f6d1ee (diff) | |
msm: mdss: add support for DSI NULL packet insertion
For DSI6G version 1.4.0 and above, for command mode use cases,
there is support in MDSS DSI to insert NULL packets automatically
between lines of a frame or High Speed DMA command burst to avoid
HS-LP-HS transitions in the middle of frame/DMA command transfer.
Add support for this in DSI driver.
Crs-Fixed: 880973
Change-Id: I468c2ea602d4c3efa0d8844c843840a15b631a3f
Signed-off-by: Padmanabhan Komanduru <pkomandu@codeaurora.org>
Signed-off-by: Siddhartha Agrawal <agrawals@codeaurora.org>
Diffstat (limited to 'drivers')
| -rw-r--r-- | drivers/video/fbdev/msm/mdss_dsi_host.c | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/drivers/video/fbdev/msm/mdss_dsi_host.c b/drivers/video/fbdev/msm/mdss_dsi_host.c index 9423cfbd38ce..ba19d8eadf31 100644 --- a/drivers/video/fbdev/msm/mdss_dsi_host.c +++ b/drivers/video/fbdev/msm/mdss_dsi_host.c @@ -1082,6 +1082,7 @@ static void mdss_dsi_mode_setup(struct mdss_panel_data *pdata) struct mdss_panel_info *pinfo; struct mipi_panel_info *mipi; struct dsc_desc *dsc = NULL; + u32 data = 0; u32 hbp, hfp, vbp, vfp, hspw, vspw, width, height; u32 ystride, bpp, dst_bpp, byte_num; u32 stream_ctrl, stream_total; @@ -1176,6 +1177,14 @@ static void mdss_dsi_mode_setup(struct mdss_panel_data *pdata) stream_total = height << 16 | width; } + /* DSI_COMMAND_MODE_NULL_INSERTION_CTRL */ + if (ctrl_pdata->shared_data->hw_rev >= MDSS_DSI_HW_REV_104) { + data = (mipi->vc << 1); /* Virtual channel ID */ + data |= 0 << 16; /* Word count of the NULL packet */ + data |= 0x1; /* Enable Null insertion */ + MIPI_OUTP((ctrl_pdata->ctrl_base) + 0x2b4, data); + } + /* DSI_COMMAND_MODE_MDP_STREAM_CTRL */ MIPI_OUTP((ctrl_pdata->ctrl_base) + 0x60, stream_ctrl); MIPI_OUTP((ctrl_pdata->ctrl_base) + 0x58, stream_ctrl); |
