[U-Boot] [RFC] - sanve the server's mac address...

Robin Getz rgetz at blackfin.uclinux.org
Wed Jul 8 20:50:16 CEST 2009


Linux's netconsole works much better when you can pass it the MAC address of
the server. (otherwise it just uses broadcast, which everyone else on my
network complains about :)

This sets the evn var "serveraddr" (to match ethaddr), so that you can pass
it to linux with whatever bootargs you want to....

addnetconsole=set bootargs $(bootargs) netconsole=@$(ipaddr)/eth0,@$(serverip)/$(serveraddr)

I'm sure this is white space damaged - but you get the idea...

Index: net/net.c
===================================================================
--- net/net.c   (revision 1961)
+++ net/net.c   (working copy)
@@ -1273,6 +1273,15 @@
                        /* are we waiting for a reply */
                        if (!NetArpWaitPacketIP || !NetArpWaitPacketMAC)
                                break;
+
+#ifdef CONFIG_KEEP_SERVERADDR
+                       if (NetServerIP == NetArpWaitPacketIP) {
+                               char buf[20];
+                               sprintf(buf, "%pM", arp->ar_data);
+                               setenv("serveraddr", buf);
+                       }
+#endif
+
 #ifdef ET_DEBUG
                        printf("Got ARP REPLY, set server/gtwy eth addr (%pM)\n",
                                arp->ar_data)


More information about the U-Boot mailing list