]> git.sur5r.net Git - u-boot/commitdiff
net: Refactor ping receive handler
authorJoe Hershberger <joe.hershberger@ni.com>
Wed, 23 May 2012 07:59:12 +0000 (07:59 +0000)
committerJoe Hershberger <joe.hershberger@ni.com>
Wed, 23 May 2012 22:46:20 +0000 (17:46 -0500)
There is no need to call through the handler... inline it

Signed-off-by: Joe Hershberger <joe.hershberger@ni.com>
Acked-by: Simon Glass <sjg@chromium.org>
Acked-by: Mike Frysinger <vapier@gentoo.org>
net/ping.c

index 939f8ff6fcea85a2f5598c63640dda12e02e06cb..0f4d99088e0efd4e3541c8ff10622d0c268e0e45 100644 (file)
@@ -75,20 +75,10 @@ static void ping_timeout(void)
        NetState = NETLOOP_FAIL;        /* we did not get the reply */
 }
 
-static void ping_handler(uchar *pkt, unsigned dest, IPaddr_t sip,
-           unsigned src, unsigned len)
-{
-       if (sip != NetPingIP)
-               return;
-
-       NetState = NETLOOP_SUCCESS;
-}
-
 void ping_start(void)
 {
        printf("Using %s device\n", eth_get_name());
        NetSetTimeout(10000UL, ping_timeout);
-       NetSetHandler(ping_handler);
 
        ping_send();
 }
@@ -100,13 +90,9 @@ void ping_receive(struct ethernet_hdr *et, struct ip_udp_hdr *ip, int len)
 
        switch (icmph->type) {
        case ICMP_ECHO_REPLY:
-               /*
-                * IP header OK.  Pass the packet to the
-                * current handler.
-                */
-               /* XXX point to ip packet */
                src_ip = NetReadIP((void *)&ip->ip_src);
-               NetGetHandler()((uchar *)ip, 0, src_ip, 0, 0);
+               if (src_ip == NetPingIP)
+                       NetState = NETLOOP_SUCCESS;
                return;
        case ICMP_ECHO_REQUEST:
                debug("Got ICMP ECHO REQUEST, return "