summaryrefslogtreecommitdiff
path: root/drivers/video/tegra/dc/dc.c
diff options
context:
space:
mode:
authorJon Mayo <jmayo@nvidia.com>2012-06-20 13:48:53 -0700
committerRohan Somvanshi <rsomvanshi@nvidia.com>2012-06-22 01:59:45 -0700
commit1638783677893d0ba4050e67831e3f0c7d1aaaa1 (patch)
tree44fc614aecea950e40a94affabc1ecb3ead9c29b /drivers/video/tegra/dc/dc.c
parentccb69dda81949b7de4169cb3ac68dfc04d9eef8b (diff)
video: tegra: dc: force the use of new bandwidth
During programming of a frame or at frame end, force the use of the new EMC bandwidth instead of the previous frame's bandwidth. Moved copy of new_bandwidth out of tegra_dc_set_latency_allowance() to match the semantics of the rest of tegra_dc_program_bandwidth(). bug 949015 Change-Id: I881f3a2c75f3438e3bbb3208b518f15a4574bc91 Signed-off-by: Jon Mayo <jmayo@nvidia.com> Reviewed-on: http://git-master/r/110149 Reviewed-by: Automatic_Commit_Validation_User Tested-by: Daniel Solomon <daniels@nvidia.com> Reviewed-by: Kevin Huang (Eng-SW) <kevinh@nvidia.com>
Diffstat (limited to 'drivers/video/tegra/dc/dc.c')
-rw-r--r--drivers/video/tegra/dc/dc.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/drivers/video/tegra/dc/dc.c b/drivers/video/tegra/dc/dc.c
index 0b92369..419cd2c 100644
--- a/drivers/video/tegra/dc/dc.c
+++ b/drivers/video/tegra/dc/dc.c
@@ -1082,7 +1082,7 @@ int tegra_dc_update_windows(struct tegra_dc_win *windows[], int n)
msecs_to_jiffies(dc->one_shot_delay_ms));
/* update EMC clock if calculated bandwidth has changed */
- tegra_dc_program_bandwidth(dc);
+ tegra_dc_program_bandwidth(dc, false);
if (dc->out->flags & TEGRA_DC_OUT_ONE_SHOT_MODE)
update_mask |= NC_HOST_TRIG;
@@ -1489,7 +1489,7 @@ static int tegra_dc_program_mode(struct tegra_dc *dc, struct tegra_dc_mode *mode
/* use default EMC rate when switching modes */
dc->new_emc_clk_rate = tegra_dc_get_default_emc_clk_rate(dc);
- tegra_dc_program_bandwidth(dc);
+ tegra_dc_program_bandwidth(dc, true);
tegra_dc_writel(dc, 0x0, DC_DISP_DISP_TIMING_OPTIONS);
tegra_dc_writel(dc, mode->h_ref_to_sync | (mode->v_ref_to_sync << 16),
@@ -1855,7 +1855,7 @@ static void tegra_dc_vblank(struct work_struct *work)
/* use the new frame's bandwidth setting instead of max(current, new),
* skip this if we're using tegra_dc_one_shot_worker() */
if (!(dc->out->flags & TEGRA_DC_OUT_ONE_SHOT_MODE))
- tegra_dc_program_bandwidth(dc);
+ tegra_dc_program_bandwidth(dc, true);
/* Clear the V_BLANK_FLIP bit of vblank ref-count if update is clean. */
if (!tegra_dc_windows_are_dirty(dc))