From e92d6360184e9e67771d293bd71ecfb489b20a23 Mon Sep 17 00:00:00 2001 From: psucien Date: Tue, 18 Jun 2024 10:15:04 +0200 Subject: [PATCH] gnm_driver: correct vqid index range --- src/core/libraries/gnmdriver/gnmdriver.cpp | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/core/libraries/gnmdriver/gnmdriver.cpp b/src/core/libraries/gnmdriver/gnmdriver.cpp index 9f21a407..62dd9985 100644 --- a/src/core/libraries/gnmdriver/gnmdriver.cpp +++ b/src/core/libraries/gnmdriver/gnmdriver.cpp @@ -764,10 +764,12 @@ int PS4_SYSV_ABI sceGnmMapComputeQueue(u32 pipe_id, u32 queue_id, VAddr ring_bas } auto vqid = asc_queues.insert(VAddr(ring_base_addr), read_ptr_addr, ring_size_dw); + // We need to offset index as `dingDong` assumes it to be from the range [1..64] + const auto gnm_vqid = vqid.index + 1; LOG_INFO(Lib_GnmDriver, "ASC pipe {} queue {} mapped to vqueue {}", pipe_id, queue_id, - vqid.index); + gnm_vqid); - return vqid.index; + return gnm_vqid; } int PS4_SYSV_ABI sceGnmMapComputeQueueWithPriority(u32 pipe_id, u32 queue_id, VAddr ring_base_addr,