
Hi,
Attached is a patch that fixes a problem i saw with a coldfire 5235 port. i'll include the patch here in the email as well since it describes the problem:
diff -purN u-boot-1.1.6/lib_m68k/board.c u-boot-1.1.6-pktfix/lib_m68k/ board.c --- u-boot-1.1.6/lib_m68k/board.c 2006-11-02 09:15:01.000000000 -0500 +++ u-boot-1.1.6-pktfix/lib_m68k/board.c 2007-06-28 11:07:19.000000000 -0400 @@ -642,6 +642,22 @@ void board_init_r (gd_t *id, ulong dest_ #if (CONFIG_COMMANDS & CFG_CMD_NET) && defined(FEC_ENET) WATCHDOG_RESET(); + + /* init NetRxPackets here otherwise eth_init() will cause + * buffer descriptors to use 0 as their buffer and overwrite lower memory. + * NetLoop() does this properly later. + * Cannot remove eth_init() call because linux driver assumes this + * happened, for MAC Address to be loaded into microcontroller + */ + { + int i; + static uchar pkt[(PKTBUFSRX+1) * PKTSIZE_ALIGN + PKTALIGN]; + uchar *tx = pkt + (PKTALIGN - 1); + tx -= (ulong) tx % PKTALIGN; + for (i = 0; i < PKTBUFSRX; i++) { + NetRxPackets[i] = tx + (i+1)*PKTSIZE_ALIGN; + } + } eth_init(bd); #endif