[U-Boot-Users] [PATCH] m68k fix for Ethernet Buffers at address 0
Wilson Callan
wcallan at savantav.com
Fri Jun 29 16:22:48 CEST 2007
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
-------------- next part --------------
A non-text attachment was scrubbed...
Name: pktfix.patch
Type: application/octet-stream
Size: 953 bytes
Desc: not available
Url : http://lists.denx.de/pipermail/u-boot/attachments/20070629/f5cbe197/attachment.obj
More information about the U-Boot
mailing list