[Pdbg] [PATCH v2 0/7] sreset support for P8 systems

Nicholas Piggin npiggin at gmail.com
Tue Mar 12 12:49:13 AEDT 2019


This is a bit more polished, with some debug code and "just in case"
things removed, and some bugs fixed. It is more stable now in basic
testing, but have not stress tested it.

Main bug fixed was to destory the ram mode after successful sreset
emulation. Without this, things would sometimes work and sometimes
crash very badly.

I added code to automatically quiesce siblings as needed and resume
them, in order to make emulated sreset command behave the same way
as direct sreset (e.g., you have to stop only the target thread
explicitly).

Probably ready for a bit wider review and testing now.

Thanks,
Nick

Nicholas Piggin (7):
  libpdbg: Fix CHECK_ERR macro to evaluate once in error case
  libpdbg/p8chip.c: read status from correct target
  libpdbg/p8chip.c: Only write the SP_STOP bit once
  libpdbg/p8chip.c: release special wakeups for P8
  libpdbg: use MTMSRD opcode rather than MTMSR
  libpdbg/p8chip.c: ram state setup sequence match workbook
  libpdbg/p8chip.c: Emulate sreset using ramming for active threads

 libpdbg/operations.h |   7 +-
 libpdbg/p8chip.c     | 241 ++++++++++++++++++++++++++++++++++++-------
 2 files changed, 205 insertions(+), 43 deletions(-)

-- 
2.20.1



More information about the Pdbg mailing list