nvk: Document the register name for the helper load workaround

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27927>
(cherry picked from commit df90d80d9d)
This commit is contained in:
Faith Ekstrand 2024-03-01 17:52:19 -06:00 committed by Eric Engestrom
parent b775fb81e9
commit ed886a26c7
2 changed files with 5 additions and 2 deletions

View file

@ -344,7 +344,7 @@
"description": "nvk: Document the register name for the helper load workaround",
"nominated": false,
"nomination_type": 3,
"resolution": 4,
"resolution": 1,
"main_sha": null,
"because_sha": null,
"notes": null

View file

@ -83,6 +83,7 @@ VkResult
nvk_queue_init_context_draw_state(struct nvk_queue *queue)
{
struct nvk_device *dev = nvk_queue_device(queue);
struct nvk_physical_device *pdev = nvk_device_physical(dev);
uint32_t push_data[2048];
struct nv_push push;
@ -138,9 +139,11 @@ nvk_queue_init_context_draw_state(struct nvk_queue *queue)
* For generations with firmware support for our `SET_PRIV_REG` mme method
* we simply use that. On older generations we'll let the kernel do it.
* Starting with GSP we have to do it via the firmware anyway.
*
* This clears bit 3 of gr_gpcs_tpcs_sm_disp_ctrl
*/
if (dev->pdev->info.cls_eng3d >= MAXWELL_B) {
unsigned reg = dev->pdev->info.cls_eng3d >= VOLTA_A ? 0x419ba4 : 0x419f78;
unsigned reg = pdev->info.cls_eng3d >= VOLTA_A ? 0x419ba4 : 0x419f78;
P_1INC(p, NV9097, CALL_MME_MACRO(NVK_MME_SET_PRIV_REG));
P_INLINE_DATA(p, 0);
P_INLINE_DATA(p, BITFIELD_BIT(3));