There is no need to call through the handler when we can handle
it inline

Signed-off-by: Joe Hershberger <joe.hershber...@ni.com>
Cc: Joe Hershberger <joe.hershber...@gmail.com>
Cc: Wolfgang Denk <w...@denx.de>
---
 net/ping.c |   19 ++-----------------
 1 files changed, 2 insertions(+), 17 deletions(-)

diff --git a/net/ping.c b/net/ping.c
index 12f9185..e4a7a21 100644
--- a/net/ping.c
+++ b/net/ping.c
@@ -76,22 +76,11 @@ PingTimeout(void)
        NetState = NETLOOP_FAIL;        /* we did not get the reply */
 }
 
-static void
-PingHandler(uchar *pkt, unsigned dest, IPaddr_t sip, unsigned src,
-           unsigned len)
-{
-       if (sip != NetPingIP)
-               return;
-
-       NetState = NETLOOP_SUCCESS;
-}
-
 void
 PingStart(void)
 {
        printf("Using %s device\n", eth_get_name());
        NetSetTimeout(10000UL, PingTimeout);
-       NetSetHandler(PingHandler);
 
        PingSend();
 }
@@ -103,13 +92,9 @@ void PingReceive(struct Ethernet_t *et, struct IP_UDP_t 
*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 "
-- 
1.6.0.2

_______________________________________________
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot

Reply via email to