The DebugAgent is activated by enabling the DEBUG_SYSTEM
feature with the configurator(1CC) command:
% configurator -set DEBUG_SYSTEM=true |
The DEBUG_SYSTEM
feature is set to true by default.
When the DebugAgent is activated, communications on the serial line are performed in binary mode.
The DebugAgent has eight tunable options that you can configure with ews or configurator. The following three tunables
control the behavior of the DebugAgent when it is enabled (DEBUG_SYSTEM
=true):
dbg.agent.startup
specifies the behavior
of the DebugAgent when the DebugServer attempts to connect to the target.
Possible values are stop or resume.
In stop mode the system will wait indefinitely until the
DebugServer connects to the DebugAgent. In resume mode
the system will wait for no more than one second. In both cases, the DebugAgent
will issue the prompt DebugAgent: trying to sync with DebugServer... over the serial line and sound a beep. If the DebugServer
does not connect, the system will continue booting and console operations
will be performed raw, without any processing by the DebugAgent, on the serial
line.
dbg.agent.exceptmode
specifies
the behavior of the DebugAgent when an exception is raised before the DebugServer
has connected. Possible values are catch or forward. In catch mode the DebugAgent catches all exceptions
and blocks the target until a DebugServer has connected and resumed the execution
of the target. In forward mode the DebugAgent forwards
all exceptions directly to the kernel-installed handlers.
dbg.agent.consolemode
specifies the operating mode of the system console. Possible values are sync or async. In sync mode
the target is blocked until each message has been transmitted to the host
for output and acknowledged. In async mode, console output
is buffered and transmitted to the host periodically, either when the buffer
is full or on each timer interrupt, whichever occurs first.
The following five tunables control the serial line used by the DebugAgent.
dbg.agent.device
specifies the serial
device used by the DebugAgent. Possible values are COM1, COM2, COM3, or COM4. COM1 refers to communication port 1 (COM 1) on a PC,
or the first serial line on other boards. COM2 refers to
communication port 2 (COM 2) on a PC, or the second serial
line on other boards, and so on.
dbg.agent.baud
specifies
the baud rate of the serial line. Possible values are: 115200, 57600, 38400,
19200, 9600, 4800, 2400, or 1200.
dbg.agent.parity
specifies
the parity of the serial line. Possible values are none, even, or odd.
dbg.agent.databits
specifies
the number of data bits. The only possible value is 8.
dbg.agent.stopbits
specifies
the number of stop bits. Possible values are 1 or 2.
When the DebugAgent is not active (DEBUG_SYSTEM
=false), the serial line is used by the system debugging console,
and the five tunables control the serial device and speed.