mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-04-23 11:40:39 +02:00
freedreno/ci: Add real packet-table loading for afuc test
When we start running the bootstrap code thru the emulator we will need the packet-table loading to actually happen. So add this. Signed-off-by: Rob Clark <robdclark@chromium.org> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10944>
This commit is contained in:
parent
df14af6480
commit
2beb5b015a
3 changed files with 57 additions and 1 deletions
|
|
@ -3,7 +3,31 @@
|
|||
; Version: 01000001
|
||||
|
||||
[01000001] ; nop
|
||||
[01000060] ; nop
|
||||
[01000078] ; nop
|
||||
mov $01, 0x0830 ; CP_SQE_INSTR_BASE
|
||||
mov $02, 0x0002
|
||||
cwrite $01, [$00 + @REG_READ_ADDR], 0x0
|
||||
cwrite $02, [$00 + @REG_READ_DWORDS], 0x0
|
||||
mov $01, $regdata
|
||||
mov $02, $regdata
|
||||
add $01, $01, 0x0004
|
||||
addhi $02, $02, 0x0000
|
||||
mov $03, 0x0001
|
||||
cwrite $01, [$00 + @MEM_READ_ADDR], 0x0
|
||||
cwrite $02, [$00 + @MEM_READ_ADDR+0x1], 0x0
|
||||
cwrite $03, [$00 + @MEM_READ_DWORDS], 0x0
|
||||
rot $04, $memdata, 0x0008
|
||||
ushr $04, $04, 0x0006
|
||||
sub $04, $04, 0x0004
|
||||
add $01, $01, $04
|
||||
addhi $02, $02, 0x0000
|
||||
mov $rem, 0x0080
|
||||
cwrite $01, [$00 + @MEM_READ_ADDR], 0x0
|
||||
cwrite $02, [$00 + @MEM_READ_ADDR+0x1], 0x0
|
||||
cwrite $02, [$00 + @LOAD_STORE_HI], 0x0
|
||||
cwrite $rem, [$00 + @MEM_READ_DWORDS], 0x0
|
||||
cwrite $00, [$00 + @PACKET_TABLE_WRITE_ADDR], 0x0
|
||||
(rep)cwrite $memdata, [$00 + @PACKET_TABLE_WRITE], 0x0
|
||||
mov $02, 0x0883 ; CP_SCRATCH[0].REG
|
||||
mov $03, 0xbeef
|
||||
mov $04, 0xdead << 16
|
||||
|
|
|
|||
Binary file not shown.
|
|
@ -29,6 +29,38 @@
|
|||
[01000001]
|
||||
[01000000]
|
||||
loc02:
|
||||
; packet table loading:
|
||||
mov $01, 0x0830 ; CP_SQE_INSTR_BASE
|
||||
mov $02, 0x0002
|
||||
cwrite $01, [$00 + @REG_READ_ADDR], 0x0
|
||||
cwrite $02, [$00 + @REG_READ_DWORDS], 0x0
|
||||
; move hi/lo of SQE fw addrs to registers:
|
||||
mov $01, $regdata
|
||||
mov $02, $regdata
|
||||
; skip first dword
|
||||
add $01, $01, 0x0004
|
||||
addhi $02, $02, 0x0000
|
||||
mov $03, 0x0001
|
||||
cwrite $01, [$00 + @MEM_READ_ADDR], 0x0
|
||||
cwrite $02, [$00 + @MEM_READ_ADDR+0x1], 0x0
|
||||
cwrite $03, [$00 + @MEM_READ_DWORDS], 0x0
|
||||
; read 2nd dword of fw, and add offset (minus 4 because we skipped first dword)
|
||||
; to base address of sqe fw
|
||||
rot $04, $memdata, 0x0008
|
||||
ushr $04, $04, 0x0006
|
||||
sub $04, $04, 0x0004
|
||||
add $01, $01, $04
|
||||
addhi $02, $02, 0x0000
|
||||
|
||||
; load packet table:
|
||||
mov $rem, 0x0080
|
||||
cwrite $01, [$00 + @MEM_READ_ADDR], 0x0
|
||||
cwrite $02, [$00 + @MEM_READ_ADDR+0x1], 0x0
|
||||
cwrite $02, [$00 + @LOAD_STORE_HI], 0x0
|
||||
cwrite $rem, [$00 + @MEM_READ_DWORDS], 0x0
|
||||
cwrite $00, [$00 + @PACKET_TABLE_WRITE_ADDR], 0x0
|
||||
(rep)cwrite $memdata, [$00 + @PACKET_TABLE_WRITE], 0x0
|
||||
|
||||
mov $02, 0x883
|
||||
mov $03, 0xbeef
|
||||
mov $04, 0xdead << 16
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue