aboutsummaryrefslogtreecommitdiff
path: root/net/net.c
diff options
context:
space:
mode:
authorwdenk <wdenk>2004-03-14 15:06:13 +0000
committerwdenk <wdenk>2004-03-14 15:06:13 +0000
commit3d3befa754fedb320f779320ac0ab11deb0a6275 (patch)
treee017681961bbc93b2145f929fe95c8e2f47a1726 /net/net.c
parent4d13cbad1c81ad7901151fec381bae8c30f4338a (diff)
downloadu-boot-3d3befa754fedb320f779320ac0ab11deb0a6275.zip
u-boot-3d3befa754fedb320f779320ac0ab11deb0a6275.tar.gz
u-boot-3d3befa754fedb320f779320ac0ab11deb0a6275.tar.bz2
* Patch by Philippe Robin, 09 Mar 2004:
Added ARM Integrator AP, CP and Versatile PB926EJ-S Reference Platform support. * Patch by Masami Komiya, 08 Mar 2004: Don't overwrite server IP address or boot file name when the boot server does not return values * Patch by listmember@orkun.us, 5 Mar 2004: Removed compile time restriction on CFG_I2C_SPEED for DS1338 RTC
Diffstat (limited to 'net/net.c')
-rw-r--r--net/net.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/net/net.c b/net/net.c
index 47c2007..907cd73 100644
--- a/net/net.c
+++ b/net/net.c
@@ -323,7 +323,7 @@ restart:
* IP addr assigned to us by the BOOTP / RARP server
*/
NetOurIP = 0;
- NetServerIP = 0;
+ NetServerIP = getenv_IPaddr ("serverip");
break;
default:
break;
@@ -354,7 +354,7 @@ restart:
case DHCP:
/* Start with a clean slate... */
NetOurIP = 0;
- NetServerIP = 0;
+ NetServerIP = getenv_IPaddr ("serverip");
DhcpRequest(); /* Basically same as BOOTP */
break;
#endif /* CFG_CMD_DHCP */
@@ -832,7 +832,8 @@ NetReceive(volatile uchar * pkt, int len)
printf("invalid RARP header\n");
} else {
NetCopyIP(&NetOurIP, &arp->ar_data[16]);
- NetCopyIP(&NetServerIP, &arp->ar_data[ 6]);
+ if (NetServerIP == 0)
+ NetCopyIP(&NetServerIP, &arp->ar_data[ 6]);
memcpy (NetServerEther, &arp->ar_data[ 0], 6);
(*packetHandler)(0,0,0,0);