emit HW init commands
@krh @chadversary
Being the first commit that emits meaningful command packets, there are many things included in this commit
- tu6_emit_xxx are low-level helpers that emit command packets without boundary checks
- tu6_xxx are high-level helpers that emit command packets with boundary checks
- use cmd as the variable name of tu_cmd_buffer
- add tu_cs_reserve_space(_assert) for the peace of mind
- there is a per-cmdbuf scratch bo for CP_EVENT_WRITE writeback
- there is a per-cmdbuf debug marker, using scratch reg 7 or 6 depending on whether the cmdbuf is primary or secondary
- cmdbuf->cs is a pointer to the current CS, so that we can use the helpers above to emit to other CS
I can break it down into smaller commits if desirable.
Edited by Chia-I Wu