diff options
author | Dmitry Osipenko <digetx@gmail.com> | 2018-03-14 21:00:24 -0400 |
---|---|---|
committer | Thierry Reding <treding@nvidia.com> | 2018-03-15 10:56:46 -0400 |
commit | 48519232bea9230d1c5dbbb680d9257d4861bb4c (patch) | |
tree | 60cc7af723d06bb92c8787ae80f8d6071b0ebda5 /drivers/gpu/drm | |
parent | 8a927d648c2ee20f2fd746d733c5cd76d0fbb0c1 (diff) |
drm/tegra: plane: Correct legacy blending
Keep old 'dependent' state of unaffected planes, this way new state takes
into account current state of unaffected planes.
Fixes: ebae8d07435a ("drm/tegra: dc: Implement legacy blending")
Signed-off-by: Dmitry Osipenko <digetx@gmail.com>
Signed-off-by: Thierry Reding <treding@nvidia.com>
Diffstat (limited to 'drivers/gpu/drm')
-rw-r--r-- | drivers/gpu/drm/tegra/plane.c | 5 |
1 files changed, 2 insertions, 3 deletions
diff --git a/drivers/gpu/drm/tegra/plane.c b/drivers/gpu/drm/tegra/plane.c index eddaa2f05ed6..94dac79ac3c9 100644 --- a/drivers/gpu/drm/tegra/plane.c +++ b/drivers/gpu/drm/tegra/plane.c | |||
@@ -334,9 +334,6 @@ void tegra_plane_check_dependent(struct tegra_plane *tegra, | |||
334 | unsigned int zpos[2]; | 334 | unsigned int zpos[2]; |
335 | unsigned int i; | 335 | unsigned int i; |
336 | 336 | ||
337 | for (i = 0; i < 3; i++) | ||
338 | state->dependent[i] = false; | ||
339 | |||
340 | for (i = 0; i < 2; i++) | 337 | for (i = 0; i < 2; i++) |
341 | zpos[i] = 0; | 338 | zpos[i] = 0; |
342 | 339 | ||
@@ -350,6 +347,8 @@ void tegra_plane_check_dependent(struct tegra_plane *tegra, | |||
350 | 347 | ||
351 | index = tegra_plane_get_overlap_index(tegra, p); | 348 | index = tegra_plane_get_overlap_index(tegra, p); |
352 | 349 | ||
350 | state->dependent[index] = false; | ||
351 | |||
353 | /* | 352 | /* |
354 | * If any of the other planes is on top of this plane and uses | 353 | * If any of the other planes is on top of this plane and uses |
355 | * a format with an alpha component, mark this plane as being | 354 | * a format with an alpha component, mark this plane as being |