X-Git-Url: https://git.sur5r.net/?a=blobdiff_plain;f=doc%2FREADME.NetConsole;h=af7fc6043a3f3f02497f7527342b18551402be9d;hb=9a1f4bae0bded0ce354dd4b098d4b4a3b81d4d9a;hp=8dc0d29197ec0cba86a86a55d64638e137f1d65e;hpb=68ceb29e7133a0f972f53d3d61fd61207374baec;p=u-boot diff --git a/doc/README.NetConsole b/doc/README.NetConsole index 8dc0d29197..af7fc6043a 100644 --- a/doc/README.NetConsole +++ b/doc/README.NetConsole @@ -6,18 +6,44 @@ serial and network input/output devices by adjusting the 'stdin' and set either of these variables to "nc". Input and output can be switched independently. +CONFIG_NETCONSOLE_BUFFER_SIZE - Override the default buffer size + +We use an environment variable 'ncip' to set the IP address and the +port of the destination. The format is :. If is +omitted, the value of 6666 is used. If the env var doesn't exist, the +broadcast address and port 6666 are used. If it is set to an IP +address of 0 (or 0.0.0.0) then no messages are sent to the network. +The source / listening port can be configured separately by setting +the 'ncinport' environment variable and the destination port can be +configured by setting the 'ncoutport' environment variable. + +For example, if your server IP is 192.168.1.1, you could use: + + => setenv nc 'setenv stdout nc;setenv stdin nc' + => setenv ncip 192.168.1.1 + => saveenv + => run nc + + On the host side, please use this script to access the console: -+++++++++++++++++++++++++++++++++++++++++++ -#! /bin/bash + tools/netconsole [port] + +The script uses netcat to talk to the board over UDP. It requires you to +specify the target IP address (or host name, assuming DNS is working). The +script can be interrupted by pressing ^T (CTRL-T). -TARGET_IP=$1 +Be aware that in some distributives (Fedora Core 5 at least) +usage of nc has been changed and -l and -p options are considered +as mutually exclusive. If nc complains about options provided, +you can just remove the -p option from the script. -stty -icanon -echo intr ^T -nc -u -l -p 6666 < /dev/null & -nc -u ${TARGET_IP} 6666 -stty icanon echo intr ^C -+++++++++++++++++++++++++++++++++++++++++++ +It turns out that 'netcat' cannot be used to listen to broadcast +packets. We developed our own tool 'ncb' (see tools directory) that +listens to broadcast packets on a given port and dumps them to the +standard output. It will be built when compiling for a board which +has CONFIG_NETCONSOLE defined. If the netconsole script can find it +in PATH or in the same directory, it will be used instead. For Linux, the network-based console needs special configuration. Minimally, the host IP address needs to be specified. This can be @@ -66,3 +92,6 @@ To browse the Linux network console output, use the 'netcat' tool invoked as follows: nc -u -l -p 6666 + +Note that unlike the U-Boot implementation the Linux netconsole is +unidirectional, i. e. you have console output only in Linux.