diff options
author | Dave Airlie <[email protected]> | 2016-09-15 13:58:33 +1000 |
---|---|---|
committer | Emil Velikov <[email protected]> | 2016-11-08 20:45:03 +0000 |
commit | e7c14088707d0bd4dd8fceaec5d3fc529917a7df (patch) | |
tree | 787e3bd81b01960e409214d388ba35e3df4848a4 | |
parent | 422e4da25c07605dd1d6bca99140a34790fd2d65 (diff) |
Revert "st/vdpau: use linear layout for output surfaces"
This reverts commit d180de35320eafa3df3d76f0e82b332656530126.
This is a radeon specific hack that causes problems on nouveau
when combined with the SHARED flag later. If radeonsi needs a fix
for this, please fix it in the driver.
[chk]
Using linear surfaces for this makes sense because tilling isn't
beneficial and the surfaces can potentially be shared with other GPUs
using the VDPAU OpenGL interop.
[airlied]
I think we need a flag that isn't SHARED/LINEAR that is more
SHARED_OTHER_GPU.
[mareko]
Does radeonsi need PIPE_BIND_VIDEO_DECODE_OUTPUT that it would translate
into linear ?
[mareko]
My only concern is decoding performance. If the decoder works in 64x1
blocks, tiling will hurt. That's the theory. I don't know how the
decoder works.
Cc: 12.0 13.0 <[email protected]>
Acked-by: Christian König <[email protected]>
Signed-off-by: Dave Airlie <[email protected]>
Tested-by: Ilia Mirkin <[email protected]>
Tested-by: Nayan Deshmukh <[email protected]> (I+A)
(cherry picked from commit d0d5f7600c2e8ab8d0c153787185f7a534753edd)
-rw-r--r-- | src/gallium/state_trackers/vdpau/output.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/gallium/state_trackers/vdpau/output.c b/src/gallium/state_trackers/vdpau/output.c index c644cc8ba85..b278288d661 100644 --- a/src/gallium/state_trackers/vdpau/output.c +++ b/src/gallium/state_trackers/vdpau/output.c @@ -82,7 +82,7 @@ vlVdpOutputSurfaceCreate(VdpDevice device, res_tmpl.depth0 = 1; res_tmpl.array_size = 1; res_tmpl.bind = PIPE_BIND_SAMPLER_VIEW | PIPE_BIND_RENDER_TARGET | - PIPE_BIND_LINEAR | PIPE_BIND_SHARED; + PIPE_BIND_SHARED; res_tmpl.usage = PIPE_USAGE_DEFAULT; pipe_mutex_lock(dev->mutex); |