radeonsi: fix multi plane buffers creation
When using 3 planes, the sequence produces this chain:
plane0 -> plane2
This commit fixes this to produce:
plane0 -> plane1 -> plane2
Fixes: 86e60bc265
("radeonsi: remove si_vid_join_surfaces and use combined planar allocations")
Closes: https://gitlab.freedesktop.org/mesa/mesa/issues/2193
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
This commit is contained in:
parent
ff0f108666
commit
e3e91cebcd
|
@ -1722,10 +1722,12 @@ struct pipe_resource *si_texture_create(struct pipe_screen *screen,
|
|||
tex->plane_index = i;
|
||||
tex->num_planes = num_planes;
|
||||
|
||||
if (!last_plane)
|
||||
if (!plane0) {
|
||||
plane0 = last_plane = tex;
|
||||
else
|
||||
} else {
|
||||
last_plane->buffer.b.b.next = &tex->buffer.b.b;
|
||||
last_plane = tex;
|
||||
}
|
||||
}
|
||||
|
||||
return (struct pipe_resource *)plane0;
|
||||
|
|
Loading…
Reference in New Issue