turnip: enable sampleRateShading feature
There's still a TODO related to key->sample_shading, but it doesn't look like it changes anything in ir3, so it works without that. Signed-off-by: Jonathan Marek <jonathan@marek.ca> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/3923>
This commit is contained in:
parent
cb166aea24
commit
708c3a5ffd
|
@ -1060,14 +1060,11 @@ tu6_init_hw(struct tu_cmd_buffer *cmd, struct tu_cs *cs)
|
|||
|
||||
tu_cs_emit_write_reg(cs, REG_A6XX_RB_SRGB_CNTL, 0);
|
||||
|
||||
tu_cs_emit_write_reg(cs, REG_A6XX_GRAS_UNKNOWN_8101, 0);
|
||||
tu_cs_emit_write_reg(cs, REG_A6XX_GRAS_SAMPLE_CNTL, 0);
|
||||
tu_cs_emit_write_reg(cs, REG_A6XX_GRAS_UNKNOWN_8110, 0);
|
||||
|
||||
tu_cs_emit_write_reg(cs, REG_A6XX_RB_RENDER_CONTROL0, 0x401);
|
||||
tu_cs_emit_write_reg(cs, REG_A6XX_RB_RENDER_CONTROL1, 0);
|
||||
tu_cs_emit_write_reg(cs, REG_A6XX_RB_FS_OUTPUT_CNTL0, 0);
|
||||
tu_cs_emit_write_reg(cs, REG_A6XX_RB_SAMPLE_CNTL, 0);
|
||||
tu_cs_emit_write_reg(cs, REG_A6XX_RB_UNKNOWN_8818, 0);
|
||||
tu_cs_emit_write_reg(cs, REG_A6XX_RB_UNKNOWN_8819, 0);
|
||||
tu_cs_emit_write_reg(cs, REG_A6XX_RB_UNKNOWN_881A, 0);
|
||||
|
|
|
@ -582,7 +582,7 @@ tu_GetPhysicalDeviceFeatures(VkPhysicalDevice physicalDevice,
|
|||
.independentBlend = false,
|
||||
.geometryShader = false,
|
||||
.tessellationShader = false,
|
||||
.sampleRateShading = false,
|
||||
.sampleRateShading = true,
|
||||
.dualSrcBlend = false,
|
||||
.logicOp = false,
|
||||
.multiDrawIndirect = false,
|
||||
|
|
|
@ -851,6 +851,15 @@ tu6_emit_fs_inputs(struct tu_cs *cs, const struct ir3_shader_variant *fs)
|
|||
CONDREG(samp_id_regid, A6XX_RB_RENDER_CONTROL1_SAMPLEID) |
|
||||
CONDREG(ij_size_regid, A6XX_RB_RENDER_CONTROL1_SIZE) |
|
||||
COND(fs->frag_face, A6XX_RB_RENDER_CONTROL1_FACENESS));
|
||||
|
||||
tu_cs_emit_pkt4(cs, REG_A6XX_RB_SAMPLE_CNTL, 1);
|
||||
tu_cs_emit(cs, COND(sample_shading, A6XX_RB_SAMPLE_CNTL_PER_SAMP_MODE));
|
||||
|
||||
tu_cs_emit_pkt4(cs, REG_A6XX_GRAS_UNKNOWN_8101, 1);
|
||||
tu_cs_emit(cs, COND(sample_shading, 0x6)); // XXX
|
||||
|
||||
tu_cs_emit_pkt4(cs, REG_A6XX_GRAS_SAMPLE_CNTL, 1);
|
||||
tu_cs_emit(cs, COND(sample_shading, A6XX_GRAS_SAMPLE_CNTL_PER_SAMP_MODE));
|
||||
}
|
||||
|
||||
static void
|
||||
|
@ -1478,7 +1487,6 @@ tu6_emit_blend_control(struct tu_cs *cs,
|
|||
uint32_t blend_enable_mask,
|
||||
const VkPipelineMultisampleStateCreateInfo *msaa_info)
|
||||
{
|
||||
assert(!msaa_info->sampleShadingEnable);
|
||||
assert(!msaa_info->alphaToOneEnable);
|
||||
|
||||
uint32_t sp_blend_cntl = A6XX_SP_BLEND_CNTL_UNK8;
|
||||
|
|
Loading…
Reference in New Issue