Hallo,
ich hab die Überwachung für MACON1 in master aufgenommen. Netzwerk hat bei
einem spontanem Test funktioniert, scheint also nichts kaputt zu machen.
Langzeitauswirkungen müsste man jetzt beobachten.
@taru: Kannst du noch den Code für den richtig implementierten errata fix
hier posten? Muss jetzt auch nicht unbedingt den ethersex patch Richtlinien
entsprechen, hauptsache dieser 3 Jahre alte, sehr nervige Bug ist endlich
behoben :D
Grüße,
David
-----Ursprüngliche Nachricht-----
From: taru
Sent: Sunday, April 17, 2011 1:50 PM
To: [email protected]
Subject: Re: [ethersex-devel] NET-IO Netzwerk fällt aus !!!SOLVED !!!
Hallo
wie ist der Prozess beim Code-Fix? Einen commit machen? Oder möchte
das jemand vorher nochmal testen? Ich kenne mich auch mit Git nicht aus.
Eine kurze Anleitung wäre schön.
Nach der Durchsicht von enc28j60.c bin ich der Meinung dass ein errata Fix
nicht richtig implementiert wurde. Ich habe das berichtigt und mein AVR
läuft jetzt seit Tagen ohne Netzwerkfehler durch, trotz ping-stress.
Die Funktion enc28j60_periodic(void) die auf die Bits im ENC aufpasst,
ist nun anscheinend auch arbeitslos - findet bei mir keine Fehler mehr.
(Weiss jemand warum die dazugekommen ist?)
Eventuell sehen wir auch 2 Fehler mit der gleichen Auswirkung.
Der Fehler oben tritt meine ich nur unter ping-stress auf (Receiver overrun)
Mein ursprünglicher Fehler trat aber auch ohne Netzwerklast auf,
ich kann mir nicht vorstellen dass da ein Receiver overrun stattgefunden
hat.
Allerdings habe ich auf meinen Boards den ENC mit Kondensatoren abgeblockt.
Es ist möglich dass das schon den ursprünglichen Fehler beseitigt hat, und
ich dann nur noch den zweiten Fehler sehe.
Frohes Basteln,
taru
Am 13.04.2011 10:14, schrieb [email protected]:
Hallo,
mit folgendem fix läuft jetzt mein Board durch (MACON1 Überwachung):
void enc28j60_periodic(void)
{
uint8_t mask = _BV(PADCFG0) | _BV(TXCRCEN) | _BV(FRMLNEN);
if ( (read_control_register(REG_MACON3)& mask) != mask
|| (read_control_register(REG_MACON1)) != 0x0D ) {
init_enc28j60();
}
}
Jetzt stellen sich natürlich neue Fragen:
Wer weiss wann/warum der erste Fix eingeführt wurde?
Müssen wir jetzt alle Register überwachen?
Wie wichtig sind die Blockkondesatoren ?
Viele Grüße,
taru
-------- Original-Nachricht --------
Datum: Tue, 12 Apr 2011 07:27:42 +0200
Von: taru<[email protected]>
An: [email protected]
Betreff: Re: [ethersex-devel] NET-IO Netzwerk fällt aus
Hallo,
hier ist mal ein Dump vom ENC, vielleicht kann das jemand interpretieren:
(bitte mit Courier formatieren, dann stimmen die Abstände)
running snapshot:
D: RevID: 0x06
D: Cntrl: ECON1 ECON2 ESTAT EIR EIE
D: 0x07 0x80 0x81 0x48 0xdb
D: MAC : MACON1 MACON2 MACON3 MACON4 MAC-Address
D: 0x0d 0x00 0x32 0x00 ac:de:48:10:97:27
D: Rx : ERXST ERXND ERXWRPT ERXRDPT ERXFCON EPKTCNT MAMXFL
D: 0x0000 0x0fff 0x05ca 0x0fcf 0x83 0x03 0x01f8
D: Tx : ETXST ETXND MACLCON1 MACLCON2 MAPHSUP
D: 0x1000 0x11f4 0x0f 0x37 0x10
D: DMA : EDMAST EDMAND
D: 0x0000 0x0000
Fehlerfall:
--------------------------------------------------------------------------------------
D: RevID: 0x06
D: Cntrl: ECON1 ECON2 ESTAT EIR EIE
D: 0x07 0x80 0x81 0x18 0xdb
D: MAC : MACON1 MACON2 MACON3 MACON4 MAC-Address
D: 0x00 0x00 0x32 0x00 ac:de:48:10:97:27
D: Rx : ERXST ERXND ERXWRPT ERXRDPT ERXFCON EPKTCNT MAMXFL
D: 0x0000 0x0fff 0x0000 0x0000 0x83 0x00 0x01f8
D: Tx : ETXST ETXND MACLCON1 MACLCON2 MAPHSUP
D: 0x1000 0x1036 0x0f 0x37 0x10
D: DMA : EDMAST EDMAND
D: 0x0000 0x0000
D: RevID: 0x06
D: Cntrl: ECON1 ECON2 ESTAT EIR EIE
D: 0x07 0x80 0x81 0x18 0xdb
D: MAC : MACON1 MACON2 MACON3 MACON4 MAC-Address
D: 0x00 0x00 0x32 0x00 ac:de:48:10:97:27
D: Rx : ERXST ERXND ERXWRPT ERXRDPT ERXFCON EPKTCNT MAMXFL
D: 0x0000 0x0fff 0x0000 0x0000 0x83 0x00 0x01f8
D: Tx : ETXST ETXND MACLCON1 MACLCON2 MAPHSUP
D: 0x1000 0x1036 0x0f 0x37 0x10
D: DMA : EDMAST EDMAND
D: 0x0000 0x0000
nach Reset:
------------------------------------------------------------------------------------
D: RevID: 0x06
D: Cntrl: ECON1 ECON2 ESTAT EIR EIE
D: 0x07 0x80 0x81 0x10 0xdb
D: MAC : MACON1 MACON2 MACON3 MACON4 MAC-Address
D: 0x0d 0x00 0x32 0x00 ac:de:48:10:97:27
D: Rx : ERXST ERXND ERXWRPT ERXRDPT ERXFCON EPKTCNT MAMXFL
D: 0x0000 0x0fff 0x0000 0x0000 0x83 0x00 0x01f8
D: Tx : ETXST ETXND MACLCON1 MACLCON2 MAPHSUP
D: 0x1000 0x0000 0x0f 0x37 0x10
D: DMA : EDMAST EDMAND
D: 0x0000 0x0000
OK
Fragen an die Experten:
sollte der ERXRDPT nach den errata-Liste nicht immer ungerade sein?
kann jemand die Dumps interpretieren was da zum Ausfall führt?
Ich habe gesehen, dass es auch im Bugtracker einen Eintrag
zu einem Hänger mit 1w gibt: http://bugs.ethersex.de/view.php?id=128
viele Grüße,
taru
_______________________________________________
Ethersex-devel mailing list
[email protected]
https://list.zerties.org/cgi-bin/mailman/listinfo/ethersex-devel
_______________________________________________
Ethersex-devel mailing list
[email protected]
https://list.zerties.org/cgi-bin/mailman/listinfo/ethersex-devel
_______________________________________________
Ethersex-devel mailing list
[email protected]
https://list.zerties.org/cgi-bin/mailman/listinfo/ethersex-devel