sh/cb2replay: Use a shell variable to denote hex characters

Signed-off-by: Alexandru Gagniuc <mr.nuke.me@gmail.com>
util/cb2replay: Convert delay loops to single delay function

Successive reads from port 0x3f54 indicate a delay loop. This seems
to correspond to a 50MHz timer. Convert this access pattern to a
radeon_delay() function.

Signed-off-by: Alexandru Gagniuc <mr.nuke.me@gmail.com>
util/cb2replay: Group timer control writes in radeon_delay()

Delay loops always start with a write access to what appears to be
the timer control register. Group that access in radeon_delay().

Signed-off-by: Alexandru Gagniuc <mr.nuke.me@gmail.com>
.gitignore: Ignore KDevelop project files

Signed-off-by: Alexandru Gagniuc <mr.nuke.me@gmail.com>
Add initial infrastructure for usermode replay project

This adds an initial radeon_replay program which replays the trace
obtained on an HP Pavilion m6 1035dx laptrop. The trace was converted
to C code using the util/cb2replay script, and the IO helpers were
moved to a separate file.

Signed-off-by: Alexandru Gagniuc <mr.nuke.me@gmail.com>
radeon_replay: Add VGA IO helpers

These are pulled verbatim from the coreboot tree.

Signed-off-by: Alexandru Gagniuc <mr.nuke.me@gmail.com>
radeon_replay: Refactor helpers to print the trace on stderr

This crates a trace similar to the one output by cb2replay, and allows
diffing of the two traces. Port IO operations are not output.

Signed-off-by: Alexandru Gagniuc <mr.nuke.me@gmail.com>
NOTFORMEGE random stuff that does not yet have a place
More fuced up useless shit
NOTFORMERGE: Makefile easy for me
NOTFORMERGE: more refined replay
TRIVIAL: fixup return type of radeon_delay
Trivial: Provide traceable udelay radeonian
fix radeon_testies.c to use radeon_udelay
Provide register mask function
Use radeon_udelay in refined_replay.c