[Intel-gfx] [PATCH i-g-t 3/7] lib/igt_kms: Make sure that default planes aren't overwritten.

Daniel Vetter daniel at ffwll.ch
Fri Apr 22 12:53:42 UTC 2016


On Thu, Apr 21, 2016 at 01:31:48PM -0400, Robert Foss wrote:
> 
> 
> On 04/21/2016 10:50 AM, Daniel Vetter wrote:
> >On Wed, Apr 20, 2016 at 10:59:45AM -0400, robert.foss at collabora.com wrote:
> >>From: Robert Foss <robert.foss at collabora.com>
> >>
> >>Avoid overwriting planes with statically asigned indices
> >>with planes that have dynamically assigned indices.
> >>
> >>Signed-off-by: Robert Foss <robert.foss at collabora.com>
> >>---
> >>  lib/igt_kms.c | 2 ++
> >>  1 file changed, 2 insertions(+)
> >>
> >>diff --git a/lib/igt_kms.c b/lib/igt_kms.c
> >>index 07fb73b..3f953ec 100644
> >>--- a/lib/igt_kms.c
> >>+++ b/lib/igt_kms.c
> >>@@ -1326,6 +1326,8 @@ void igt_display_init(igt_display_t *display, int drm_fd)
> >>  				display->has_universal_planes = 1;
> >>  				break;
> >>  			default:
> >>+				while (p == IGT_PLANE_PRIMARY || p == IGT_PLANE_CURSOR)
> >>+					p++;
> >What we might need to do is to actually make primary and cursor
> >dynamically assigned. Since with most drivers that's the case that
> >happens. Otoh we have a variable number of planes on i915 too, so not
> >entirely sure now what's going on here ...
> >-Daniel
> Since PRIMARY and CURSOR planes are statically assigned and
> that the other cases in this switch statement used the static
> assignments, the loop simply makes sure the we don't overwrite
> the PRIMARY or CURSOR plane.

Well primary should be first, cursor last ... Are there drivers which
register planes in a funny order that we need this? If so a comment would
be good I think.
-Daniel

> 
> 
> >>  				plane = &pipe->planes[p];
> >>  				plane->index = p++;
> >>  				break;
> >>-- 
> >>2.5.0
> >>
> 

-- 
Daniel Vetter
Software Engineer, Intel Corporation
http://blog.ffwll.ch


More information about the Intel-gfx mailing list