1. 14 Dec, 2018 1 commit
    • Kenneth Graunke's avatar
      genxml: Consistently use a numeric "MOCS" field · 0b44644c
      Kenneth Graunke authored
      
      
      When we first started using genxml, we decided to represent MOCS as an
      actual structure, and pack values.  However, in many places, it was more
      convenient to use a numeric value rather than treating it as a struct,
      so we added secondary setters in a bunch of places as well.
      
      We were not entirely consistent, either.  Some places only had one.
      Gen6 had both kinds of setters for STATE_BASE_ADDRESS, but newer gens
      only had the struct-based setters.  The names were sometimes "Constant
      Buffer Object Control State" instead of "Memory", making it harder to
      find.  Many had prefixes like "Vertex Buffer MOCS"...in a vertex buffer
      packet...which is a bit redundant.
      
      On modern hardware, MOCS is simply an index into a table, but we were
      still carrying around the structure with an "Index to MOCS Table" field,
      in addition to the direct numeric setters.  This is clunky - we really
      just want a number on new hardware.
      
      This patch eliminates the struct-based setters, and makes the numeric
      setters be consistently called "MOCS".  We leave the struct definition
      around on Gen7-8 for reference purposes, but it is unused.
      
      v2: Drop bonus "Depth Buffer MOCS" fields on Gen7.5 and Gen9
      Reviewed-by: Jordan Justen's avatarJordan Justen <jordan.l.justen@intel.com>
      Reviewed-by: Kristian H. Kristensen's avatarKristian H. Kristensen <hoegsberg@google.com>
      0b44644c
  2. 13 Nov, 2018 1 commit
  3. 18 Jun, 2018 1 commit
  4. 07 May, 2018 1 commit
  5. 03 Apr, 2018 1 commit
  6. 26 Mar, 2018 3 commits
  7. 20 Mar, 2018 1 commit
  8. 05 Mar, 2018 1 commit
  9. 13 Nov, 2017 1 commit
  10. 03 Oct, 2017 1 commit
  11. 01 Jul, 2017 1 commit
  12. 01 Jun, 2017 1 commit
  13. 12 May, 2017 1 commit
  14. 03 May, 2017 6 commits
  15. 24 Apr, 2017 1 commit
    • Rafael Antognolli's avatar
      genxml: Make BLEND_STATE command support variable length array. · 9670124e
      Rafael Antognolli authored
      
      
      We need to emit BLEND_STATE, which size is 1 + 2 * nr_draw_buffers
      dwords (on gen8+), but the BLEND_STATE struct length is always 17. By
      marking it size 1, which is actually the size of the struct minus the
      BLEND_STATE_ENTRY's, we can emit a BLEND_STATE of variable number of
      entries.
      
      For gen6 and gen7 we set length to 0, since it only contains
      BLEND_STATE_ENTRY's, and no other data.
      
      With this change, we also change the code for blorp and anv to emit only
      the needed BLEND_STATE_ENTRY's, instead of always emitting 16 dwords on
      gen6-7 and 17 dwords on gen8+.
      
      v2:
         - Use designated initializers on blorp and remove 0 from
         initialization (Jason)
         - Default entries to disabled on Vulkan (Jason)
         - Rebase code.
      Signed-off-by: Rafael Antognolli's avatarRafael Antognolli <rafael.antognolli@intel.com>
      Reviewed-by: Kenneth Graunke's avatarKenneth Graunke <kenneth@whitecape.org>
      9670124e
  16. 04 Apr, 2017 5 commits
  17. 24 Mar, 2017 3 commits
  18. 17 Mar, 2017 3 commits
  19. 16 Mar, 2017 1 commit
  20. 21 Feb, 2017 1 commit
  21. 10 Jan, 2017 1 commit
  22. 14 Dec, 2016 1 commit
  23. 30 Nov, 2016 3 commits