Add initial EM100Pro 'Hyper terminal' support

- Added some fpga register writes after setting the chip - some or all
of these were needed to get the terminal mode to work.  Without these
the "em100 specific command" used for terminal mode did not get picked
up by the em100.

- Terminal mode was combined with trace mode so that both can be used
at the same time.  If both are selected, the terminal prints a tag to
identify the data.  If terminal is used by itself, the tag isn't used.

- In combined terminal/trace mode, the terminal is read and displayed
every time a new timestamp is read, but before it's printed - This is
the only time that it's assured not to be in the middle of printing
a line of data.

- Added a second USB read to the existing read_ufifo command.  The ufifo
read request sends back two responses and without this second read, the
USB data gets all out of whack. The read keeps the program in whack.

Change-Id: I87abb0d3699d6b7726b68a83abdcdbd93da14187
Signed-off-by: Martin Roth <martinroth@google.com>
Reviewed-on: http://review.coreboot.org/11688
Tested-by: build bot (Jenkins)
Reviewed-by: Stefan Reinauer <stefan.reinauer@coreboot.org>
4 files changed