mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2025-12-20 07:20:10 +01:00
tu: Clear VSC_UNKNOWN_0D08 on A7XX
This register is set by the proprietary driver along with other VSC state for binning, the stale value of this register set by the prop driver was being used by Turnip resulting in crashes that were exclusive to Android due to only running the prop driver alongside Turnip there. The fix is to emit this new register alongside all other VSC state inside the `update_vsc_pipe` function. Signed-off-by: Mark Collins <mark@igalia.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26461>
This commit is contained in:
parent
71918f7cff
commit
0cf27a7236
2 changed files with 4 additions and 0 deletions
|
|
@ -1951,6 +1951,8 @@ to upconvert to 32b float internally?
|
|||
<reg32 offset="0x0" name="REG"/>
|
||||
</array>
|
||||
|
||||
<reg32 offset="0x0d08" name="VSC_UNKNOWN_0D08" variants="A7XX-" usage="rp_blit"/>
|
||||
|
||||
<reg32 offset="0x0E10" name="UCHE_UNKNOWN_0E10" variants="A7XX-" usage="cmd"/>
|
||||
<reg32 offset="0x0E11" name="UCHE_UNKNOWN_0E11" variants="A7XX-" usage="cmd"/>
|
||||
<!-- always 0x03200000 ? -->
|
||||
|
|
|
|||
|
|
@ -1400,6 +1400,8 @@ update_vsc_pipe(struct tu_cmd_buffer *cmd,
|
|||
tu_cs_emit_regs(cs,
|
||||
A6XX_VSC_DRAW_STRM_PITCH(cmd->vsc_draw_strm_pitch),
|
||||
A6XX_VSC_DRAW_STRM_LIMIT(cmd->vsc_draw_strm_pitch - VSC_PAD));
|
||||
|
||||
tu_cs_emit_regs(cs, A7XX_VSC_UNKNOWN_0D08(0));
|
||||
}
|
||||
|
||||
static void
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue