From: Kim Phillips <kim.phillips@freescale.com>
Date: Mon, 24 Aug 2009 19:32:26 +0000 (-0500)
Subject: net: tsec - handle user interrupt while waiting for PHY auto negotiation to complete
X-Git-Tag: v2025.01-rc5-pxa1908~20908^2~33^2
X-Git-Url: http://git.dujemihanovic.xyz/contact?a=commitdiff_plain;h=0d071cdd782e917b43e04869843df31670231ffd;p=u-boot.git

net: tsec - handle user interrupt while waiting for PHY auto negotiation to complete

if you don't have firmware installed for the PHY to come to life, this
wait can be painful - let's give the option to avoid it if we want.

Signed-off-by: Kim Phillips <kim.phillips@freescale.com>
Acked-by: Andy Fleming <afleming@freescale.com>
Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
---

diff --git a/drivers/net/tsec.c b/drivers/net/tsec.c
index 9c9fd377c9..5c3d261ecd 100644
--- a/drivers/net/tsec.c
+++ b/drivers/net/tsec.c
@@ -17,6 +17,7 @@
 #include <net.h>
 #include <command.h>
 #include <tsec.h>
+#include <asm/errno.h>
 
 #include "miiphy.h"
 
@@ -380,6 +381,12 @@ uint mii_parse_sr(uint mii_reg, struct tsec_private * priv)
 				return 0;
 			}
 
+			if (ctrlc()) {
+				puts("user interrupt!\n");
+				priv->link = 0;
+				return -EINTR;
+			}
+
 			if ((i++ % 1000) == 0) {
 				putc('.');
 			}