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++)