anv: program STATE_BASE_ADDRESS instruction ptr using pdevice address

Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Acked-by: Michael Cheng <michael.cheng@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38869>
This commit is contained in:
Lionel Landwerlin 2025-12-03 16:42:32 +02:00 committed by Marge Bot
parent 7cc9d8eec7
commit 20f320b7c7
2 changed files with 11 additions and 7 deletions

View file

@ -155,10 +155,12 @@ fill_state_base_addr(struct anv_cmd_buffer *cmd_buffer,
sba->IndirectObjectBufferSizeModifyEnable = true;
sba->InstructionBaseAddress =
(struct anv_address) { device->instruction_state_pool.block_pool.bo, 0 };
(struct anv_address) {
.offset = device->physical->va.instruction_state_pool.addr,
};
sba->InstructionMOCS = mocs;
sba->InstructionBufferSize =
device->physical->va.instruction_state_pool.size / 4096;
sba->InstructionBufferSize = (device->physical->va.instruction_state_pool.size / 4096);
sba->InstructionBaseAddressModifyEnable = true;
sba->InstructionBuffersizeModifyEnable = true;

View file

@ -285,10 +285,12 @@ init_common_queue_state(struct anv_queue *queue, struct anv_batch *batch)
sba.IndirectObjectBufferSizeModifyEnable = true;
sba.InstructionBaseAddress =
(struct anv_address) { .offset =
device->physical->va.instruction_state_pool.addr,
};
sba.InstructionBufferSize = device->physical->va.instruction_state_pool.size / 4096;
(struct anv_address) {
.offset = device->physical->va.instruction_state_pool.addr,
};
sba.InstructionBufferSize =
device->physical->va.instruction_state_pool.size / 4096;
sba.InstructionMOCS = mocs;
sba.InstructionBaseAddressModifyEnable = true;
sba.InstructionBuffersizeModifyEnable = true;