iris: Allocate buffer resources separately

(cleaned up by Ken - make sure a bunch of things were more obviously
not using res->surf, do allow checking res->surf.tiling == LINEAR,
drop format cpp checks that aren't needed, drop memzone handling for
images, assume buffers / non-buffers in a few places...)
This commit is contained in:
Jason Ekstrand
2018-10-25 17:02:56 -05:00
committed by Kenneth Graunke
parent 585c95f8cc
commit 47d4ea1a16
2 changed files with 86 additions and 57 deletions

View File

@@ -47,7 +47,17 @@ struct iris_format_info {
struct iris_resource {
struct pipe_resource base;
enum pipe_format internal_format;
/**
* The ISL surface layout information for this resource.
*
* This is not filled out for PIPE_BUFFER resources, but is guaranteed
* to be zeroed. Note that this also guarantees that res->surf.tiling
* will be ISL_TILING_LINEAR, so it's safe to check that.
*/
struct isl_surf surf;
/** Backing storage for the resource */
struct iris_bo *bo;
/**