Poor Man's Logic Analyzer

I wrote the Poor Man's Logic Analyzer so that I could trace events in the Linux kernel and u-boot non-invasively. This allows you to do sub microsecond timings and find really difficult timing problems. Here is an example listing


---------------------------------------------------------------
 ID                  LABEL                      PARAM1      PARAM2     REL TIME
....
id42 = int entry, irq, pid, state, das_pid  , 0x00000001, 0xef9000b3,    4.43 MS
id42 = int entry, irq, pid, state, das_pid  , 0x405490fc, 0xbebff510,     1.0 us
id10 = rxint timeo: p_pack, pack seq num    , 0xc2f43464, 0x3bb20200,    30.5 us
id31 = do ana entry: gsp_tag, length        , 0x0000efbe, 0x00000080,     1.0 us
id48 = int timout: PC before int, pid       , 0x401d9754, 0x00000044,    30.5 us
Cid40= int getting behind, state, pid       , 0x00000000, 0x00000044,     1.0 us
id42 = int entry, irq, pid, state, das_pid  , 0x00000001, 0xef9000b3,     1.0 us
id42 = int entry, irq, pid, state, das_pid  , 0x405490fc, 0xbebff510,     1.0 us
id 5 = rxint pg 1: us_pr, us_cr             , 0x22ef7c00, 0x00000400,    30.5 us
id49 = vector_swi: USER addr, syscall       , 0x40196ce0, 0xef900077,    1.92 MS
id49 = vector_swi: USER addr, syscall       , 0x00289680, 0xef900066,    1.25 MS
id49 = vector_swi: USER addr, syscall       , 0x0036f57c, 0xef900036,     213 us
....
---------------------------------------------------------------
For more information here is the README

Copyright © Rick Bronson rick@efn.org