shithub: riscv

Download patch

ref: 09d3dbc74199e0c181e09f51c8f88e94c1c6adcb
parent: 5fce388abfaf774d31937a4bcef490c6ce0db994
author: cinap_lenrek <[email protected]>
date: Sun Aug 11 14:32:42 EDT 2013

ether6105m: increase timeouts for Soekris 5501s (from sources)

--- a/sys/src/9/pc/ethervt6105m.c
+++ b/sys/src/9/pc/ethervt6105m.c
@@ -1025,12 +1025,13 @@
 	 */
 	csr16w(ctlr, Cr, Stop);
 	csr16w(ctlr, Cr, Stop|Sfrst);
-	for(timeo = 0; timeo < 10000; timeo++){
+	/* limit used to be 10000, but that wasn't enough for our Soekris 5501s */
+	for(timeo = 0; timeo < 100000; timeo++){
 		if(!(csr16r(ctlr, Cr) & Sfrst))
 			break;
 		microdelay(1);
 	}
-	if(timeo >= 1000)
+	if(timeo >= 100000)
 		return -1;
 
 	return 0;
@@ -1051,12 +1052,13 @@
 	 */
 	r = csr8r(ctlr, Eecsr);
 	csr8w(ctlr, Eecsr, Autold|r);
-	for(timeo = 0; timeo < 100; timeo++){
+	/* limit used to be 100, but that wasn't enough for our Soekris 5501s */
+	for(timeo = 0; timeo < 100000; timeo++){
 		if(!(csr8r(ctlr, Cr) & Autold))
 			break;
 		microdelay(1);
 	}
-	if(timeo >= 100)
+	if(timeo >= 100000)
 		return -1;
 
 	for(i = 0; i < Eaddrlen; i++)