[Mesa-dev] [PATCH 0/5] intel/isl: Set MOCS based on view usage
Kenneth Graunke
kenneth at whitecape.org
Tue Aug 29 22:00:45 UTC 2017
On Tuesday, August 1, 2017 3:48:29 PM PDT Jason Ekstrand wrote:
> This little series changes things around so that, instead of passing MOCS
> values into ISL, ISL knows how to set them itself. This allows us to
> centralize some of the decisions about how MOCS gets set for surfaces and
> hopefully, if we ever do anything crazy in the future, we can share it
> between GL and Vulkan. Unfortunately, surfaces are not the only places
> where MOCS is used. It also shows up in vertex buffers, index buffers, and
> streamout buffers. However those are always set to the platform equivalent
> of I915_MOCS_CACHED (and that's not all that liable to change) so they're
> not particularly interesting.
>
> If people like this approach, I'd like to Cc it to stable for 17.2 because
> it has the side-effect of making Vulkan MOCS a bit more sane.
>
> Jason Ekstrand (5):
> intel/isl: Set MOCS based on usage for surface states
> intel/blorp: Delete the MOCS plumbing
> i965: Stop passing MOCS information into ISL
> anv: Stop passing MOCS information into ISL
> intel/isl: Get rid of the mocs fields in fill/emit_info
>
> src/intel/blorp/blorp.h | 6 ---
> src/intel/blorp/blorp_genX_exec.h | 37 +++++++++++------
> src/intel/isl/isl.h | 22 ----------
> src/intel/isl/isl_emit_depth_stencil.c | 12 +++---
> src/intel/isl/isl_genX_mocs.h | 53 ++++++++++++++++++++++++
> src/intel/isl/isl_surface_state.c | 9 ++--
> src/intel/vulkan/anv_blorp.c | 3 --
> src/intel/vulkan/anv_device.c | 1 -
> src/intel/vulkan/anv_image.c | 12 ++----
> src/intel/vulkan/anv_private.h | 2 -
> src/intel/vulkan/genX_cmd_buffer.c | 13 ++----
> src/intel/vulkan/genX_state.c | 3 --
> src/mesa/drivers/dri/i965/brw_blorp.c | 15 -------
> src/mesa/drivers/dri/i965/brw_wm_surface_state.c | 26 ++----------
> 14 files changed, 101 insertions(+), 113 deletions(-)
> create mode 100644 src/intel/isl/isl_genX_mocs.h
>
>
I guess this is okay. I'm not crazy about it, mostly because the logic is
still spread out in a bunch of places. If there was a vertex buffer usage
bit and we could handle that there, I think that would be nice, even if it
doesn't otherwise seem relevant to ISL. *shrug*
Having ISL do this itself rather than passing in values makes sense.
Reviewed-by: Kenneth Graunke <kenneth at whitecape.org>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 833 bytes
Desc: This is a digitally signed message part.
URL: <https://lists.freedesktop.org/archives/mesa-dev/attachments/20170829/98fd45f6/attachment.sig>
More information about the mesa-dev
mailing list