diff options
author | Lukasz Kalamarz <lukasz.kalamarz@intel.com> | 2018-07-12 16:15:23 +0200 |
---|---|---|
committer | Katarzyna Dec <katarzyna.dec@intel.com> | 2018-07-18 10:52:44 +0200 |
commit | 435c5093aa2043eb832a5f4cb468d7141488e14c (patch) | |
tree | 1bd40ab31a7d37d53477616dbf72f06f559d9e54 /lib/gen6_render.h | |
parent | 61370b2d43db63242646a6987a13caa8c2f8a0d8 (diff) |
lib/rendercopy: Use gen4 definitions if applicable
Instead of using definitions duplicated in gen7_render header,
we should use the oldest definition that is working with chosen
gen. This patch reuse gen6 definitons if registers/fields/shifts
that were introduced in other genX_render headers.
v3: Rebase and checkpatch
Signed-off-by: Lukasz Kalamarz <lukasz.kalamarz@intel.com>
Cc: Katarzyna Dec <katarzyna.dec@intel.com>
Cc: Antonio Argenziano <antonio.argenziano@intel.com>
Cc: Daniele Ceraolo Spurio <daniele.ceraolospurio@intel.com>
Cc: Ville Syrjälä <ville.syrjala@linux.intel.com>
Reviewed-by: Katarzyna Dec <katarzyna.dec@intel.com>
Diffstat (limited to 'lib/gen6_render.h')
-rw-r--r-- | lib/gen6_render.h | 103 |
1 files changed, 45 insertions, 58 deletions
diff --git a/lib/gen6_render.h b/lib/gen6_render.h index 8f0beda2..6bf468df 100644 --- a/lib/gen6_render.h +++ b/lib/gen6_render.h @@ -3,37 +3,38 @@ #include <stdint.h> #include "surfaceformat.h" +#include "gen4_render.h" #define GEN6_3D(Pipeline,Opcode,Subopcode) ((3 << 29) | \ ((Pipeline) << 27) | \ ((Opcode) << 24) | \ ((Subopcode) << 16)) -#define GEN6_STATE_BASE_ADDRESS GEN6_3D(0, 1, 1) +#define GEN6_STATE_BASE_ADDRESS GEN4_3D(0, 1, 1) # define BASE_ADDRESS_MODIFY (1 << 0) # define BUFFER_SIZE_MODIFY (1 << 0) -#define GEN6_STATE_SIP GEN6_3D(0, 1, 2) +#define GEN6_STATE_SIP GEN4_3D(0, 1, 2) -#define GEN6_3DSTATE_VF_STATISTICS GEN6_3D(1, 0, 0xB) -#define GEN6_PIPELINE_SELECT GEN6_3D(1, 1, 4) +#define GEN6_3DSTATE_VF_STATISTICS GEN4_3D(1, 0, 0xB) +#define GEN6_PIPELINE_SELECT GEN4_3D(1, 1, 4) # define PIPELINE_SELECT_3D 0 # define PIPELINE_SELECT_MEDIA 1 -#define GEN6_MEDIA_STATE_POINTERS GEN6_3D(2, 0, 0) -#define GEN6_MEDIA_OBJECT GEN6_3D(2, 1, 0) +#define GEN6_MEDIA_STATE_POINTERS GEN4_3D(2, 0, 0) +#define GEN6_MEDIA_OBJECT GEN4_3D(2, 1, 0) -#define GEN6_3DSTATE_BINDING_TABLE_POINTERS GEN6_3D(3, 0, 0x01) +#define GEN6_3DSTATE_BINDING_TABLE_POINTERS GEN4_3D(3, 0, 0x01) # define GEN6_3DSTATE_BINDING_TABLE_MODIFY_PS (1 << 12)/* for GEN6 */ # define GEN6_3DSTATE_BINDING_TABLE_MODIFY_GS (1 << 9) /* for GEN6 */ # define GEN6_3DSTATE_BINDING_TABLE_MODIFY_VS (1 << 8) /* for GEN6 */ -#define GEN6_3DSTATE_SAMPLER_STATE_POINTERS GEN6_3D(3, 0, 0x02) +#define GEN6_3DSTATE_SAMPLER_STATE_POINTERS GEN4_3D(3, 0, 0x02) # define GEN6_3DSTATE_SAMPLER_STATE_MODIFY_PS (1 << 12) # define GEN6_3DSTATE_SAMPLER_STATE_MODIFY_GS (1 << 9) # define GEN6_3DSTATE_SAMPLER_STATE_MODIFY_VS (1 << 8) -#define GEN6_3DSTATE_URB GEN6_3D(3, 0, 0x05) +#define GEN6_3DSTATE_URB GEN4_3D(3, 0, 0x05) /* DW1 */ # define GEN6_3DSTATE_URB_VS_SIZE_SHIFT 16 # define GEN6_3DSTATE_URB_VS_ENTRIES_SHIFT 0 @@ -41,25 +42,25 @@ # define GEN6_3DSTATE_URB_GS_ENTRIES_SHIFT 8 # define GEN6_3DSTATE_URB_GS_SIZE_SHIFT 0 -#define GEN6_3DSTATE_VERTEX_BUFFERS GEN6_3D(3, 0, 0x08) -#define GEN6_3DSTATE_VERTEX_ELEMENTS GEN6_3D(3, 0, 0x09) -#define GEN6_3DSTATE_INDEX_BUFFER GEN6_3D(3, 0, 0x0A) -#define GEN6_3DSTATE_VIEWPORT_STATE_POINTERS GEN6_3D(3, 0, 0x0D) +#define GEN6_3DSTATE_VERTEX_BUFFERS GEN4_3D(3, 0, 0x08) +#define GEN6_3DSTATE_VERTEX_ELEMENTS GEN4_3D(3, 0, 0x09) +#define GEN6_3DSTATE_INDEX_BUFFER GEN4_3D(3, 0, 0x0A) +#define GEN6_3DSTATE_VIEWPORT_STATE_POINTERS GEN4_3D(3, 0, 0x0D) # define GEN6_3DSTATE_VIEWPORT_STATE_MODIFY_CC (1 << 12) # define GEN6_3DSTATE_VIEWPORT_STATE_MODIFY_SF (1 << 11) # define GEN6_3DSTATE_VIEWPORT_STATE_MODIFY_CLIP (1 << 10) -#define GEN6_3DSTATE_CC_STATE_POINTERS GEN6_3D(3, 0, 0x0E) +#define GEN6_3DSTATE_CC_STATE_POINTERS GEN4_3D(3, 0, 0x0E) -#define GEN6_3DSTATE_VS GEN6_3D(3, 0, 0x10) +#define GEN6_3DSTATE_VS GEN4_3D(3, 0, 0x10) -#define GEN6_3DSTATE_GS GEN6_3D(3, 0, 0x11) +#define GEN6_3DSTATE_GS GEN4_3D(3, 0, 0x11) /* DW4 */ # define GEN6_3DSTATE_GS_DISPATCH_START_GRF_SHIFT 0 -#define GEN6_3DSTATE_CLIP GEN6_3D(3, 0, 0x12) +#define GEN6_3DSTATE_CLIP GEN4_3D(3, 0, 0x12) -#define GEN6_3DSTATE_SF GEN6_3D(3, 0, 0x13) +#define GEN6_3DSTATE_SF GEN4_3D(3, 0, 0x13) /* DW1 */ # define GEN6_3DSTATE_SF_NUM_OUTPUTS_SHIFT 22 # define GEN6_3DSTATE_SF_URB_ENTRY_READ_LENGTH_SHIFT 11 @@ -76,7 +77,7 @@ # define GEN6_3DSTATE_SF_TRIFAN_PROVOKE_SHIFT 25 # define GEN6_3DSTATE_SF_VERTEX_SUB_PIXEL_PRECISION_SHIFT 12 -#define GEN6_3DSTATE_WM GEN6_3D(3, 0, 0x14) +#define GEN6_3DSTATE_WM GEN4_3D(3, 0, 0x14) /* DW2 */ # define GEN6_3DSTATE_WM_SAMPLER_COUNT_SHIFT 27 # define GEN6_3DSTATE_WM_BINDING_TABLE_ENTRY_COUNT_SHIFT 18 @@ -96,28 +97,28 @@ # define GEN6_3DSTATE_WM_PERSPECTIVE_CENTROID_BARYCENTRIC (1 << 11) # define GEN6_3DSTATE_WM_PERSPECTIVE_PIXEL_BARYCENTRIC (1 << 10) -#define GEN6_3DSTATE_CONSTANT_VS GEN6_3D(3, 0, 0x15) -#define GEN6_3DSTATE_CONSTANT_GS GEN6_3D(3, 0, 0x16) -#define GEN6_3DSTATE_CONSTANT_PS GEN6_3D(3, 0, 0x17) +#define GEN6_3DSTATE_CONSTANT_VS GEN4_3D(3, 0, 0x15) +#define GEN6_3DSTATE_CONSTANT_GS GEN4_3D(3, 0, 0x16) +#define GEN6_3DSTATE_CONSTANT_PS GEN4_3D(3, 0, 0x17) -#define GEN6_3DSTATE_SAMPLE_MASK GEN6_3D(3, 0, 0x18) +#define GEN6_3DSTATE_SAMPLE_MASK GEN4_3D(3, 0, 0x18) -#define GEN6_3DSTATE_DRAWING_RECTANGLE GEN6_3D(3, 1, 0x00) -#define GEN6_3DSTATE_CONSTANT_COLOR GEN6_3D(3, 1, 0x01) -#define GEN6_3DSTATE_SAMPLER_PALETTE_LOAD GEN6_3D(3, 1, 0x02) -#define GEN6_3DSTATE_CHROMA_KEY GEN6_3D(3, 1, 0x04) -#define GEN6_3DSTATE_DEPTH_BUFFER GEN6_3D(3, 1, 0x05) +#define GEN6_3DSTATE_DRAWING_RECTANGLE GEN4_3D(3, 1, 0x00) +#define GEN6_3DSTATE_CONSTANT_COLOR GEN4_3D(3, 1, 0x01) +#define GEN6_3DSTATE_SAMPLER_PALETTE_LOAD GEN4_3D(3, 1, 0x02) +#define GEN6_3DSTATE_CHROMA_KEY GEN4_3D(3, 1, 0x04) +#define GEN6_3DSTATE_DEPTH_BUFFER GEN4_3D(3, 1, 0x05) # define GEN6_3DSTATE_DEPTH_BUFFER_TYPE_SHIFT 29 # define GEN6_3DSTATE_DEPTH_BUFFER_FORMAT_SHIFT 18 -#define GEN6_3DSTATE_POLY_STIPPLE_OFFSET GEN6_3D(3, 1, 0x06) -#define GEN6_3DSTATE_POLY_STIPPLE_PATTERN GEN6_3D(3, 1, 0x07) -#define GEN6_3DSTATE_LINE_STIPPLE GEN6_3D(3, 1, 0x08) -#define GEN6_3DSTATE_GLOBAL_DEPTH_OFFSET_CLAMP GEN6_3D(3, 1, 0x09) +#define GEN6_3DSTATE_POLY_STIPPLE_OFFSET GEN4_3D(3, 1, 0x06) +#define GEN6_3DSTATE_POLY_STIPPLE_PATTERN GEN4_3D(3, 1, 0x07) +#define GEN6_3DSTATE_LINE_STIPPLE GEN4_3D(3, 1, 0x08) +#define GEN6_3DSTATE_GLOBAL_DEPTH_OFFSET_CLAMP GEN4_3D(3, 1, 0x09) /* These two are BLC and CTG only, not BW or CL */ -#define GEN6_3DSTATE_AA_LINE_PARAMS GEN6_3D(3, 1, 0x0A) -#define GEN6_3DSTATE_GS_SVB_INDEX GEN6_3D(3, 1, 0x0B) -#define GEN6_3DSTATE_MULTISAMPLE GEN6_3D(3, 1, 0x0D) +#define GEN6_3DSTATE_AA_LINE_PARAMS GEN4_3D(3, 1, 0x0A) +#define GEN6_3DSTATE_GS_SVB_INDEX GEN4_3D(3, 1, 0x0B) +#define GEN6_3DSTATE_MULTISAMPLE GEN4_3D(3, 1, 0x0D) /* DW1 */ # define GEN6_3DSTATE_MULTISAMPLE_PIXEL_LOCATION_CENTER (0 << 4) # define GEN6_3DSTATE_MULTISAMPLE_PIXEL_LOCATION_UPPER_LEFT (1 << 4) @@ -125,7 +126,7 @@ # define GEN6_3DSTATE_MULTISAMPLE_NUMSAMPLES_4 (2 << 1) # define GEN6_3DSTATE_MULTISAMPLE_NUMSAMPLES_8 (3 << 1) -#define GEN6_3DSTATE_CLEAR_PARAMS GEN6_3D(3, 1, 0x10) +#define GEN6_3DSTATE_CLEAR_PARAMS GEN4_3D(3, 1, 0x10) /* DW1 */ # define GEN6_3DSTATE_DEPTH_CLEAR_VALID (1 << 15) # define GEN6_PIPE_CONTROL_NOWRITE (0 << 14) @@ -141,25 +142,25 @@ # define GEN6_PIPE_CONTROL_LOCAL_PGTT (0 << 2) # define GEN6_PIPE_CONTROL_DEPTH_CACHE_FLUSH (1 << 0) -#define GEN6_3DSTATE_MONOFILTER_SIZE GEN6_3D(3, 1, 0x11) -#define GEN6_PIPE_CONTROL GEN6_3D(3, 2, 0) +#define GEN6_3DSTATE_MONOFILTER_SIZE GEN4_3D(3, 1, 0x11) +#define GEN6_PIPE_CONTROL GEN4_3D(3, 2, 0) -#define GEN6_3DPRIMITIVE GEN6_3D(3, 3, 0) +#define GEN6_3DPRIMITIVE GEN4_3D(3, 3, 0) # define GEN6_3DPRIMITIVE_VERTEX_SEQUENTIAL (0 << 15) # define GEN6_3DPRIMITIVE_VERTEX_RANDOM (1 << 15) /* Primitive types are in gen6_defines.h */ # define GEN6_3DPRIMITIVE_TOPOLOGY_SHIFT 10 /* VERTEX_BUFFER_STATE Structure */ -#define VB0_BUFFER_INDEX_SHIFT 26 -#define VB0_VERTEXDATA (0 << 20) -#define VB0_INSTANCEDATA (1 << 20) +#define GEN6_VB0_BUFFER_INDEX_SHIFT 26 +#define GEN6_VB0_VERTEXDATA (0 << 20) +#define GEN6_VB0_INSTANCEDATA (1 << 20) #define VB0_BUFFER_PITCH_SHIFT 0 #define VB0_NULL_VERTEX_BUFFER (1 << 13) /* VERTEX_ELEMENT_STATE Structure */ -#define VE0_VERTEX_BUFFER_INDEX_SHIFT 26 /* for GEN6 */ -#define VE0_VALID (1 << 25) /* for GEN6 */ +#define GEN6_VE0_VERTEX_BUFFER_INDEX_SHIFT 26 /* for GEN6 */ +#define GEN6_VE0_VALID (1 << 25) /* for GEN6 */ #define VE0_FORMAT_SHIFT 16 #define VE0_OFFSET_SHIFT 0 #define VE1_VFCOMPONENT_0_SHIFT 28 @@ -1072,18 +1073,4 @@ struct gen6_cc_viewport { float max_depth; }; -typedef enum { - SAMPLER_FILTER_NEAREST = 0, - SAMPLER_FILTER_BILINEAR, - FILTER_COUNT -} sampler_filter_t; - -typedef enum { - SAMPLER_EXTEND_NONE = 0, - SAMPLER_EXTEND_REPEAT, - SAMPLER_EXTEND_PAD, - SAMPLER_EXTEND_REFLECT, - EXTEND_COUNT -} sampler_extend_t; - #endif |