• Sven Schnelle's avatar
    parisc: add support for TOC (transfer of control) · bc294838
    Sven Schnelle authored
    Almost all PA-RISC machines have either a button that
    is labeled with 'TOC' or a BMC function to trigger a TOC.
    TOC is a non-maskable interrupt that is sent to the processor.
    This can be used for diagnostic purposes like obtaining a
    stack trace/register dump or to enter KDB/KGDB.
    
    As an example, on my c8000, TOC can be used with:
    
    CONFIG_KGDB=y
    CONFIG_KGDB_KDB=y
    
    and the 'kgdboc=ttyS0,115200' appended to the command line.
    
    Press ^[( on serial console, which will enter the BMC command line,
    and enter 'TOC s':
    
    root@(none):/# (
    cli>TOC s
    Sending TOC/INIT.
    <Cpu3> 2800035d03e00000  0000000040c21ac8  CC_ERR_CHECK_TOC
    <Cpu0> 2800035d00e00000  0000000040c21ad0  CC_ERR_CHECK_TOC
    <Cpu2> 2800035d02e00000  0000000040c21ac8  CC_ERR_CHECK_TOC
    <Cpu1> 2800035d01e00000  0000000040c21ad0  CC_ERR_CHECK_TOC
    <Cpu3> 37000f7303e00000  2000000000000000  CC_ERR_CPU_CHECK_SUMMARY
    <Cpu0> 37000f7300e00000  2000000000000000  CC_ERR_CPU_CHECK_SUMMARY
    <Cpu2> 37000f7302e00000  2000000000000000  CC_ERR_CPU_CHECK_SUMMARY
    <Cpu1> 37000f7301e00000  2000000000000000  CC_ERR_CPU_CHECK_SUMMARY
    <Cpu3> 4300100803e00000  c0000000001d26cc  CC_MC_BR_TO_OS_TOC
    <Cpu0> 4300100800e00000  c0000000001d26cc  CC_MC_BR_TO_OS_TOC
    <Cpu2> 4300100802e00000  c0000000001d26cc  CC_MC_BR_TO_OS_TOC
    <Cpu1> 4300100801e00000  c0000000001d26cc  CC_MC_BR_TO_OS_TOC
    
    Entering kdb (current=0x00000000411cef80, pid 0) on processor 0 due to NonMaskable Interrupt @ 0x40c21ad0
    [0]kdb>
    Signed-off-by: default avatarSven Schnelle <svens@stackframe.org>
    Signed-off-by: default avatarHelge Deller <deller@gmx.de>
    bc294838
Makefile 1.47 KB