m1n1/proxyclient/m1n1
Hector Martin 8eeb7966aa hv: Refactor CPU switch logic, make hv.cpu() not exit shell
Get rid of the hv_rearm() thing (which was always a bit dodgy) and
instead properly make sure that all CPUs rendezvous when needed and
switch the active proxy thread without ever exiting exception context.

The Python side can now switch proxy context (by waiting directly for
a proxy boot) without having to exit out of the hypervisor callback,
so cpu() now works as a normal Python method.

Add a cpus() iterator so you can do things like:

>>> for i in cpus(): bt()

Signed-off-by: Hector Martin <marcan@marcan.st>
2022-05-30 22:33:44 +09:00
..
agx m1n1.agx: Initial AGX client scaffolding 2022-05-21 03:54:12 +09:00
fw m1n1.agx: Initial AGX client scaffolding 2022-05-21 03:54:12 +09:00
hw prores: test 36-bit iova; fix tracer 2022-05-30 18:05:16 +09:00
trace prores: start tracing descriptors 2022-05-30 18:05:16 +09:00
__init__.py proxyclient: Big cleanup/move to module 2021-06-10 19:40:48 +09:00
adt.py m1n1.adt: Handle underscores in properties as __ 2022-02-21 15:31:31 +09:00
asm.py m1n1.asm: Fix bad objdump variable 2021-11-10 20:43:51 +09:00
constructutils.py m1n1.constructutils: Add debug (commented out) 2022-05-21 03:54:12 +09:00
find_regs.py proxyclient: removed unused code 2021-09-22 19:00:34 +09:00
gpiola.py m1n1.gpiola: Add load_regmap() 2022-01-16 19:39:03 +09:00
hv.py hv: Refactor CPU switch logic, make hv.cpu() not exit shell 2022-05-30 22:33:44 +09:00
loadobjs.py m1n1.loadobjs: Add util for loading objects on target 2022-02-08 14:14:38 +09:00
macho.py proxyclient: Big cleanup/move to module 2021-06-10 19:40:48 +09:00
malloc.py proxyclient: Big cleanup/move to module 2021-06-10 19:40:48 +09:00
proxy.py hv: Refactor CPU switch logic, make hv.cpu() not exit shell 2022-05-30 22:33:44 +09:00
proxyutils.py m1n1.proxyutils.RegMon: Allow custom read lambda 2022-05-21 03:46:14 +09:00
setup.py Briefly document protocol 2021-08-03 13:52:31 +09:00
shell.py m1n1.shell: Fix broken signature thing for some objects 2021-08-29 01:36:27 +09:00
sysreg.py proxyclient: removed unused code 2021-09-22 19:00:34 +09:00
tgtypes.py proxyclient: Big cleanup/move to module 2021-06-10 19:40:48 +09:00
utils.py m1n1.utils: Work around Register reloads breaking Constants 2022-05-21 03:54:12 +09:00
xnutools.py m1n1.xnutools: Update decode_debugger_state() for 12.0 2021-09-15 23:26:45 +09:00