diff options
Diffstat (limited to 'net')
-rw-r--r-- | net/Makefile | 2 | ||||
-rw-r--r-- | net/bootp.c | 7 | ||||
-rw-r--r-- | net/eth.c | 16 |
3 files changed, 23 insertions, 2 deletions
diff --git a/net/Makefile b/net/Makefile index 6fe4002..d18460c 100644 --- a/net/Makefile +++ b/net/Makefile @@ -35,7 +35,7 @@ OBJS := $(addprefix $(obj),$(COBJS)) all: $(LIB) $(LIB): $(obj).depend $(OBJS) - $(AR) crv $@ $(OBJS) + $(AR) $(ARFLAGS) $@ $(OBJS) ######################################################################### diff --git a/net/bootp.c b/net/bootp.c index 669d74a..1de9a8f 100644 --- a/net/bootp.c +++ b/net/bootp.c @@ -851,7 +851,12 @@ static void DhcpSendRequestPkt(Bootp_t *bp_offer) NetCopyIP(&bp->bp_ciaddr, &bp_offer->bp_ciaddr); /* both in network byte order */ NetCopyIP(&bp->bp_yiaddr, &bp_offer->bp_yiaddr); NetCopyIP(&bp->bp_siaddr, &bp_offer->bp_siaddr); - NetCopyIP(&bp->bp_giaddr, &bp_offer->bp_giaddr); + /* + * RFC3046 requires Relay Agents to discard packets with + * nonzero and offered giaddr + */ + NetWriteIP(&bp->bp_giaddr, 0); + memcpy (bp->bp_chaddr, NetOurEther, 6); /* @@ -196,6 +196,22 @@ int eth_initialize(bd_t *bis) tsec_initialize(bis, 3, CONFIG_MPC83XX_TSEC4_NAME); # endif #endif +#if defined(CONFIG_MPC86XX_TSEC1) + tsec_initialize(bis, 0, CONFIG_MPC86XX_TSEC1_NAME); +#endif + +#if defined(CONFIG_MPC86XX_TSEC2) + tsec_initialize(bis, 1, CONFIG_MPC86XX_TSEC2_NAME); +#endif + +#if defined(CONFIG_MPC86XX_TSEC3) + tsec_initialize(bis, 2, CONFIG_MPC86XX_TSEC3_NAME); +#endif + +#if defined(CONFIG_MPC86XX_TSEC4) + tsec_initialize(bis, 3, CONFIG_MPC86XX_TSEC4_NAME); +#endif + #if defined(FEC_ENET) || defined(CONFIG_ETHER_ON_FCC) fec_initialize(bis); #endif |