Forum: Mikrocontroller und Digitale Elektronik DM9000 auto-negotiation funktioniert nicht / Doku ist nutzlos


von Bri (Gast)


Angehängte Dateien:

Lesenswert?

Ich habe ein ARM7 Board von Olimex mit einem DM9000 als 
Ethernetcontroller. Nun versuche ich grad, LWIP als TCP/IP Stack mit dem 
DM9000 unter FreeRTOS zu verwenden. Mein Problem ist nun die 
Initialisierung des DM9000. Ich habe mir den Linux- und den eCos-Treiber 
und ein Beispiel für uIp von Olimex angeschaut. Im eCos Treiber wird die 
auto-negotiation aktiviert und gewartet, bis sie beendet ist. Bei mir 
funktioniert das aber nicht. Das Hauptproblem ist, das die Dokumentation 
des DM9000 ziemlich scheiße ist. Zumindest hab ich ein Bit gefunden, das 
anzeigen sollte, ob die auto-negotiation verfügbar ist. (Bit 
Auto-Negotiation Ability im Register BMSR) Dieses sagt mir immer, das 
sie nicht verfügbar ist. Das kommt mir bissl seltsam vor. Im Handbuch 
steht dazu nichts weiter. Gibt es verschiedene DM9000, wo bei manchen 
diese Funktion enthalten ist und bei manchen nicht? Oder gibts das 
grundsätzlich nur bei Verwendung eines externen PHY? (was immer das 
bedeutet, aber das gibts als Option beim DM9000)
Wie initialisiert ihr den DM9000? Wo gibts noch brauchbare Infos zum 
DM9000? (Bei google jedenfalls nicht)

von Bri (Gast)


Lesenswert?

Ich hab noch bissl weiter geforscht und noch ein Register gefunden, das 
Debug-Informationen zum auto-negotiation Ablauf enthält: DSCSR.
Die Monitor-Bits sollen mir laut Datenblatt folgendes sagen:
"Parallel Detects Signal_link_ready Fail"
Weiß jemand, was das bedeuten soll?

von Bri (Gast)


Lesenswert?

Wow, ich hätte nicht gedacht, das ich mal ne Frage habe, die hier 
niemand beantworten kann. :-)

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.