]> git.sur5r.net Git - u-boot/commitdiff
* Patch by Richard Klingler, 03 Apr 2005:
authorwdenk <wdenk>
Sun, 3 Apr 2005 14:52:59 +0000 (14:52 +0000)
committerwdenk <wdenk>
Sun, 3 Apr 2005 14:52:59 +0000 (14:52 +0000)
  Add call to eth_halt() in net/net.c when called functions fail
  after eth_init() has been called.

* Patch by Sam Song, 3 April 2005:
  - Update README.Netconsole
  - Update README

CHANGELOG
README
doc/README.NetConsole
net/net.c

index 71eae5e7efbf6e189b941791c56084482ca85ce2..c82e3365d737bd818e3c357af6c8fd4885bb3d53 100644 (file)
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -2,6 +2,14 @@
 Changes for U-Boot 1.1.3:
 ======================================================================
 
 Changes for U-Boot 1.1.3:
 ======================================================================
 
+* Patch by Richard Klingler, 03 Apr 2005:
+  Add call to eth_halt() in net/net.c when called functions fail
+  after eth_init() has been called.
+
+* Patch by Sam Song, 3 April 2005:
+  - Update README.Netconsole
+  - Update README
+
 * Prepare for SoC rework of ARM code:
   - rename CONFIG_BOOTBINFUNC into  CONFIG_INIT_CRITICAL
   - rename memsetup into lowlevel_init (function name and source files)
 * Prepare for SoC rework of ARM code:
   - rename CONFIG_BOOTBINFUNC into  CONFIG_INIT_CRITICAL
   - rename memsetup into lowlevel_init (function name and source files)
diff --git a/README b/README
index 6cc7405512ee64f034ebd9b24ee9b4d16e7c13df..3311b80329953cbbe1c8491fdb2f75b4b751c337 100644 (file)
--- a/README
+++ b/README
@@ -627,6 +627,7 @@ The following options need to be configured:
                CFG_CMD_SAVES   * save S record dump
                CFG_CMD_SCSI    * SCSI Support
                CFG_CMD_SDRAM   * print SDRAM configuration information
                CFG_CMD_SAVES   * save S record dump
                CFG_CMD_SCSI    * SCSI Support
                CFG_CMD_SDRAM   * print SDRAM configuration information
+                                 (requires CFG_CMD_I2C)
                CFG_CMD_SETGETDCR Support for DCR Register access (4xx only)
                CFG_CMD_SPI     * SPI serial bus support
                CFG_CMD_USB     * USB support
                CFG_CMD_SETGETDCR Support for DCR Register access (4xx only)
                CFG_CMD_SPI     * SPI serial bus support
                CFG_CMD_USB     * USB support
index 3a572931c51dab21bd860d193eaa5dea8dd01bb7..cc35a0a8ffe1148c91914b75bd3725e5533d0a2b 100644 (file)
@@ -12,11 +12,20 @@ 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.
 
 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.
 
+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
 
 On the host side, please use this script to access the console:
 
 +++++++++++++++++++++++++++++++++++++++++++
 #! /bin/bash
 
+[ $# = 1 ] || { echo "Usage: $0 target_ip" >&2 ; exit 1 ; }
 TARGET_IP=$1
 
 stty -icanon -echo intr ^T
 TARGET_IP=$1
 
 stty -icanon -echo intr ^T
@@ -25,6 +34,10 @@ nc -u ${TARGET_IP} 6666
 stty icanon echo intr ^C
 +++++++++++++++++++++++++++++++++++++++++++
 
 stty icanon echo intr ^C
 +++++++++++++++++++++++++++++++++++++++++++
 
+The script expects exactly one argument, which is interpreted as  the
+target IP address (or host name, assuming DNS is working). The script
+can be interrupted by pressing ^T (CTRL-T).
+
 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
 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
@@ -33,13 +46,25 @@ standard output. use it as follows:
 +++++++++++++++++++++++++++++++++++++++++++
 #! /bin/bash
 
 +++++++++++++++++++++++++++++++++++++++++++
 #! /bin/bash
 
+[ $# = 1 ] || { echo "Usage: $0 target_ip" >&2 ; exit 1 ; }
+TARGET_IP=$1
+
 stty icanon echo intr ^T
 ./ncb &
 stty icanon echo intr ^T
 ./ncb &
-nc -u mpc5200 6666
+nc -u ${TARGET_IP} 6666
 stty icanon echo intr ^C
 kill 0
 +++++++++++++++++++++++++++++++++++++++++++
 
 stty icanon echo intr ^C
 kill 0
 +++++++++++++++++++++++++++++++++++++++++++
 
+Again, this script takes exactly one argument, which is interpreted
+as the target IP address (or host name, assuming DNS is working). The
+script can be interrupted by pressing ^T (CTRL-T).
+
+The 'ncb' tool can be found in the tools directory; it will not be
+built by default so you will ither have to adjust the Makefile or
+build it manually.
+
+
 For Linux, the network-based console needs special configuration.
 Minimally, the host IP address needs to be specified. This can be
 done either via the kernel command line, or by passing parameters
 For Linux, the network-based console needs special configuration.
 Minimally, the host IP address needs to be specified. This can be
 done either via the kernel command line, or by passing parameters
index 00aa66150295784dc6970f8a6fb5e6a92a9c95b6..7c3744dcefa644624ffd9f60fbbb84e7a8e2a4ac 100644 (file)
--- a/net/net.c
+++ b/net/net.c
@@ -303,8 +303,10 @@ NetLoop(proto_t protocol)
 #ifdef CONFIG_NET_MULTI
        eth_set_current();
 #endif
 #ifdef CONFIG_NET_MULTI
        eth_set_current();
 #endif
-       if (eth_init(bd) < 0)
+       if (eth_init(bd) < 0) {
+               eth_halt();
                return(-1);
                return(-1);
+       }
 
 restart:
 #ifdef CONFIG_NET_MULTI
 
 restart:
 #ifdef CONFIG_NET_MULTI
@@ -383,6 +385,7 @@ restart:
        switch (net_check_prereq (protocol)) {
        case 1:
                /* network not configured */
        switch (net_check_prereq (protocol)) {
        case 1:
                /* network not configured */
+               eth_halt();
                return (-1);
 
 #ifdef CONFIG_NET_MULTI
                return (-1);
 
 #ifdef CONFIG_NET_MULTI