intel/eu: Use descriptor constructors for pixel interpolator messages.

v2: Use SET_BITS macro instead of left shift (Ken).

Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
This commit is contained in:
Francisco Jerez
2018-07-09 16:16:16 -07:00
parent 8fa4bc4676
commit b10b4e7c45
2 changed files with 29 additions and 14 deletions

View File

@@ -350,6 +350,23 @@ brw_dp_write_desc(const struct gen_device_info *devinfo,
SET_BITS(send_commit_msg, 15, 15));
}
/**
* Construct a message descriptor immediate with the specified pixel
* interpolator function controls.
*/
static inline uint32_t
brw_pixel_interp_desc(const struct gen_device_info *devinfo,
unsigned msg_type,
bool noperspective,
unsigned simd_mode,
unsigned slot_group)
{
return (SET_BITS(slot_group, 11, 11) |
SET_BITS(msg_type, 13, 12) |
SET_BITS(!!noperspective, 14, 14) |
SET_BITS(simd_mode, 16, 16));
}
void brw_urb_WRITE(struct brw_codegen *p,
struct brw_reg dest,
unsigned msg_reg_nr,