mirror of
https://github.com/AsahiLinux/m1n1
synced 2024-09-21 21:51:54 +00:00
m1n1.trace.agx: Add handoff tracer
Signed-off-by: Asahi Lina <lina@asahilina.net>
This commit is contained in:
parent
daa7dfba28
commit
00625fb8a0
1 changed files with 15 additions and 0 deletions
|
@ -276,6 +276,17 @@ CmdBufWork = CmdBufWork._reloadcls()
|
|||
CommandQueueTracer = CommandQueueTracer._reloadcls()
|
||||
NewInitData = NewInitData._reloadcls(True)
|
||||
|
||||
class HandoffTracer(Tracer):
|
||||
DEFAULT_MODE = TraceMode.SYNC
|
||||
|
||||
def __init__(self, hv, agx_tracer, base, verbose=False):
|
||||
super().__init__(hv, verbose=verbose)
|
||||
self.agx_tracer = agx_tracer
|
||||
self.base = base
|
||||
|
||||
def start(self):
|
||||
self.trace_regmap(self.base, 0x4000, GFXHandoffStruct, name="regs")
|
||||
|
||||
class AGXTracer(ASCTracer):
|
||||
ENDPOINTS = {
|
||||
0x20: PongEp,
|
||||
|
@ -297,6 +308,8 @@ class AGXTracer(ASCTracer):
|
|||
self.gfx_handoff = getattr(self.dev_sgx, "gfx-handoff-base")
|
||||
self.gfx_handoff_size = getattr(self.dev_sgx, "gfx-handoff-size")
|
||||
|
||||
self.handoff_tracer = HandoffTracer(hv, self, self.gfx_handoff, verbose=2)
|
||||
|
||||
self.ignorelist = []
|
||||
self.last_msg = None
|
||||
|
||||
|
@ -525,6 +538,7 @@ class AGXTracer(ASCTracer):
|
|||
|
||||
def start(self):
|
||||
super().start()
|
||||
self.handoff_tracer.start()
|
||||
self.init_channels()
|
||||
if self.state.active:
|
||||
self.resume()
|
||||
|
@ -533,6 +547,7 @@ class AGXTracer(ASCTracer):
|
|||
|
||||
def stop(self):
|
||||
self.pause()
|
||||
self.handoff_tracer.stop()
|
||||
super().stop()
|
||||
|
||||
def mon_addva(self, ctx, va, size, name=""):
|
||||
|
|
Loading…
Reference in a new issue