summaryrefslogtreecommitdiffstats
path: root/drivers/video/tegra/dc/dsi.c
diff options
context:
space:
mode:
authorVineel Kumar Reddy Kovvuri <vineelkumarr@nvidia.com>2013-04-23 05:02:31 -0400
committerDan Willemsen <dwillemsen@nvidia.com>2015-03-18 15:04:21 -0400
commitd4cc3cc59ae5b9f7d04ae207348b9bebac0ba11e (patch)
tree0ea92b107c8a888251134d771ce81e9457b4aa6b /drivers/video/tegra/dc/dsi.c
parentad92db0c6df217600b086895fd354fd23f4011fa (diff)
video: tegra: dsi: Enable MIPI auto calibration
Updated the auto calibration values. Fixed call to register access function. Bug 1166307 Bug 1283871 Change-Id: If3bdadea3a92e85230caa05940f3269f190fa253 Signed-off-by: Vineel Kumar Reddy Kovvuri <vineelkumarr@nvidia.com> Reviewed-on: http://git-master/r/222004 Reviewed-by: Automatic_Commit_Validation_User Reviewed-by: Animesh Kishore <ankishore@nvidia.com> GVS: Gerrit_Virtual_Submit Reviewed-by: Bitan Biswas <bbiswas@nvidia.com>
Diffstat (limited to 'drivers/video/tegra/dc/dsi.c')
-rw-r--r--drivers/video/tegra/dc/dsi.c36
1 files changed, 18 insertions, 18 deletions
diff --git a/drivers/video/tegra/dc/dsi.c b/drivers/video/tegra/dc/dsi.c
index 89715c85b..5bc8ab46e 100644
--- a/drivers/video/tegra/dc/dsi.c
+++ b/drivers/video/tegra/dc/dsi.c
@@ -2027,12 +2027,12 @@ static void tegra_dsi_mipi_calibration_11x(struct tegra_dc_dsi_data *dsi)
2027 tegra_dsi_writel(dsi, val, DSI_PAD_CONTROL_2_VS1); 2027 tegra_dsi_writel(dsi, val, DSI_PAD_CONTROL_2_VS1);
2028 2028
2029 if (!dsi->controller_index) { 2029 if (!dsi->controller_index) {
2030 val = tegra_dsi_readl(dsi, 2030 val = tegra_mipi_cal_read(dsi->mipi_cal,
2031 MIPI_CAL_DSIA_MIPI_CAL_CONFIG_0); 2031 MIPI_CAL_DSIA_MIPI_CAL_CONFIG_0);
2032 val = MIPI_CAL_OVERIDEDSIA(0x0) | 2032 val = MIPI_CAL_OVERIDEDSIA(0x0) |
2033 MIPI_CAL_SELDSIA(0x1) | 2033 MIPI_CAL_SELDSIA(0x1) |
2034 MIPI_CAL_HSPDOSDSIA(0x2) | 2034 MIPI_CAL_HSPDOSDSIA(0x0) |
2035 MIPI_CAL_HSPUOSDSIA(0x0) | 2035 MIPI_CAL_HSPUOSDSIA(0x4) |
2036 MIPI_CAL_TERMOSDSIA(0x5); 2036 MIPI_CAL_TERMOSDSIA(0x5);
2037 tegra_mipi_cal_write(dsi->mipi_cal, val, 2037 tegra_mipi_cal_write(dsi->mipi_cal, val,
2038 MIPI_CAL_DSIA_MIPI_CAL_CONFIG_0); 2038 MIPI_CAL_DSIA_MIPI_CAL_CONFIG_0);
@@ -2053,12 +2053,12 @@ static void tegra_dsi_mipi_calibration_11x(struct tegra_dc_dsi_data *dsi)
2053 tegra_mipi_cal_write(dsi->mipi_cal, val, 2053 tegra_mipi_cal_write(dsi->mipi_cal, val,
2054 MIPI_CAL_DSID_MIPI_CAL_CONFIG_0); 2054 MIPI_CAL_DSID_MIPI_CAL_CONFIG_0);
2055 } else { 2055 } else {
2056 val = tegra_dsi_readl(dsi, 2056 val = tegra_mipi_cal_read(dsi->mipi_cal,
2057 MIPI_CAL_DSIC_MIPI_CAL_CONFIG_0); 2057 MIPI_CAL_DSIC_MIPI_CAL_CONFIG_0);
2058 val = MIPI_CAL_OVERIDEDSIC(0x0) | 2058 val = MIPI_CAL_OVERIDEDSIC(0x0) |
2059 MIPI_CAL_SELDSIC(0x1) | 2059 MIPI_CAL_SELDSIC(0x1) |
2060 MIPI_CAL_HSPDOSDSIC(0x2) | 2060 MIPI_CAL_HSPDOSDSIC(0x0) |
2061 MIPI_CAL_HSPUOSDSIC(0x0) | 2061 MIPI_CAL_HSPUOSDSIC(0x4) |
2062 MIPI_CAL_TERMOSDSIC(0x5); 2062 MIPI_CAL_TERMOSDSIC(0x5);
2063 tegra_mipi_cal_write(dsi->mipi_cal, val, 2063 tegra_mipi_cal_write(dsi->mipi_cal, val,
2064 MIPI_CAL_DSIC_MIPI_CAL_CONFIG_0); 2064 MIPI_CAL_DSIC_MIPI_CAL_CONFIG_0);
@@ -2123,19 +2123,19 @@ static void tegra_dsi_pad_calibration(struct tegra_dc_dsi_data *dsi)
2123 tegra_mipi_cal_write(dsi->mipi_cal, val, 2123 tegra_mipi_cal_write(dsi->mipi_cal, val,
2124 MIPI_CAL_MIPI_CAL_CTRL_0); 2124 MIPI_CAL_MIPI_CAL_CTRL_0);
2125 2125
2126 for (timeout = MIPI_DSI_AUTOCAL_TIMEOUT_USEC; 2126 for (timeout = MIPI_DSI_AUTOCAL_TIMEOUT_USEC;
2127 timeout; timeout -= 100) { 2127 timeout; timeout -= 100) {
2128 val = tegra_mipi_cal_read(dsi->mipi_cal, 2128 val = tegra_mipi_cal_read(dsi->mipi_cal,
2129 MIPI_CAL_CIL_MIPI_CAL_STATUS_0); 2129 MIPI_CAL_CIL_MIPI_CAL_STATUS_0);
2130 if (!(val & MIPI_CAL_ACTIVE(0x1)) && 2130 if (!(val & MIPI_CAL_ACTIVE(0x1)) &&
2131 (val & MIPI_AUTO_CAL_DONE(0x1))) { 2131 (val & MIPI_AUTO_CAL_DONE(0x1))) {
2132 dev_info(&dsi->dc->ndev->dev, "DSI pad calibration done\n"); 2132 dev_info(&dsi->dc->ndev->dev, "DSI pad calibration done\n");
2133 break; 2133 break;
2134 }
2135 usleep_range(10, 100);
2136 } 2134 }
2137 if (timeout <= 0) 2135 usleep_range(10, 100);
2138 dev_err(&dsi->dc->ndev->dev, "DSI calibration timed out\n"); 2136 }
2137 if (timeout <= 0)
2138 dev_err(&dsi->dc->ndev->dev, "DSI calibration timed out\n");
2139 2139
2140 tegra_mipi_cal_clk_disable(dsi->mipi_cal); 2140 tegra_mipi_cal_clk_disable(dsi->mipi_cal);
2141 } else { 2141 } else {