1 .\" Copyright (c) 2003 Hidetoshi Shimokawa
2 .\" All rights reserved.
4 .\" Redistribution and use in source and binary forms, with or without
5 .\" modification, are permitted provided that the following conditions
7 .\" 1. Redistributions of source code must retain the above copyright
8 .\" notice, this list of conditions and the following disclaimer.
9 .\" 2. Redistributions in binary form must reproduce the above copyright
10 .\" notice, this list of conditions and the following disclaimer in the
11 .\" documentation and/or other materials provided with the distribution.
13 .\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
14 .\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
15 .\" WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
16 .\" DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT,
17 .\" INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
18 .\" (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
19 .\" SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
20 .\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
21 .\" STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
22 .\" ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
23 .\" POSSIBILITY OF SUCH DAMAGE.
26 .Dd September 29, 2022
36 .Op Fl e Ar escape-char
38 .Op Fl C Ar console_port
45 .Op Fl C Ar console_port
53 utility is designed to provide a way for users to access
55 (dumb console device) on a local or remote system.
58 utility interacts with
64 and interacts with the user over TTY or TCP/IP.
69 you have to specify target EUI64 address using the
71 option. Physical DMA should be enabled on the target machine for access
78 driver communicate using 2 ports, one for the console port and another
80 .Xr gdb 1 Pq Pa ports/devel/gdb
82 Users are supposed to access
87 .Xr gdb 1 Pq Pa ports/devel/gdb .
88 You can specify listen ports for console and
89 .Xr gdb 1 Pq Pa ports/devel/gdb
95 The port number 0 has special meaning that
96 current TTY (stdin/stdout) is used instead of TCP/IP.
97 A negative port number will disable the port.
102 acts as a slave device and
104 acts as a master device with
107 Typed characters are normally transmitted directly to
109 A escape character (the default is
111 ) appearing as the first character of a line is an escape signal; the
112 following are recognized:
113 .Bl -tag -width ident
115 Drop the connection and exit.
117 Invoke kgdb on the terminal on which dconschat is running.
119 Reset the target over FireWire if a reset address is registered in Configuration ROM.
121 Suspend the dconschat process.
124 The following options are supported.
125 .Bl -tag -width indent
127 Translate Ctrl-C to ALT_BREAK (CR +
130 .Xr gdb 1 Pq Pa ports/devel/gdb
133 Replay old buffer on connection.
135 Verbose debug output.
138 options increase verbosity.
140 Listen on a wildcard address rather than localhost.
143 Do not write anything to the
147 Enable ad-hoc workaround for the TELNET protocol to
148 remove unnecessary byte sequences.
149 It should be set when you access
155 Read available buffer, then exit.
159 .It Fl e Ar escape-char
160 Specify escape character.
163 Specify polling rate.
164 The default value is 100.
165 .It Fl C Ar console_port
166 Specify the console port.
167 The default value is 0 (stdin/stdout).
170 .Xr gdb 1 Pq Pa ports/devel/gdb
172 The default value is \-1 (disabled).
176 Specify system file such as
177 .Pa /boot/kernel/kernel .
178 .It Fl t Ar target_eui64
179 Specify the 64-bit extended unique identifier of the target,
180 and use FireWire to access remote
183 Specify the physical I/O address of the
189 If this option is not specified,
191 tries to get the address from the Configuration ROM on the target.
192 You are supposed to enable
194 on the target to omit this option.
196 Specify FireWire bus number.
200 .Bl -tag -width indent -compact
208 with FireWire for remote
210 you have to specify the EUI64 of the target.
211 You can obtain EUI64 by running
214 The first EUI64 is of the host running
216 and others on the bus follow.
217 .Bd -literal -offset indent
219 2 devices (info_len=2)
221 1 77-66-55-44-33-22-11-00 0
222 0 00-11-22-33-44-55-66-77 1
225 The EUI64 does not change unless you change the hardware
226 as the ethernet address.
230 .Bd -literal -offset indent
231 # dconschat -br -G 12345 -t 00-11-22-33-44-55-66-77
234 You will get console output of the target and login prompt if a
238 You can break to DDB with ALT_BREAK (CR +
244 .Dv ALT_BREAK_TO_DEBUGGER
245 are enabled in the target kernel.
246 To quit the session, type CR +
253 .Xr gdb 1 Pq Pa ports/devel/gdb
254 port is almost the same as remote
255 .Xr gdb 1 Pq Pa ports/devel/gdb
256 over serial line except
257 using TCP/IP instead of
260 .Sx "On-line Kernel Debugging Using Remote GDB"
262 .%T "The FreeBSD Developers Handbook"
266 .Bd -literal -offset indent
267 % gdb -k kernel.debug
268 (kgdb) target remote :12345
272 .Xr gdb 1 Pq Pa ports/devel/gdb
273 is attached and you specified the
278 .Xr gdb 1 Pq Pa ports/devel/gdb
279 causes a break to debugger.
281 The following command gets the console log from the crash dump:
282 .Bd -literal -offset indent
283 # dconschat -1 -M vmcore.0 -N kernel.0
286 If you want access to the console using
289 .Bd -literal -offset indent
290 # dconschat -rTC 5555 &
291 # telnet localhost 5555
294 You may want to keep logging console output of several machines.
296 in the Ports collection may help you.
297 Insert the following lines in
299 .Bd -literal -offset indent
303 exec /usr/sbin/dconschat -rh 25;
308 exec /usr/sbin/dconschat -rh 25 -t 00-11-22-33-44-55-66-77;
312 .Xr gdb 1 Pq Pa ports/devel/gdb ,
324 .An Hidetoshi Shimokawa Aq Mt simokawa@FreeBSD.org