Es wurde ein Problem festgestellt, bei dem das einfache RGMII-Sockelserver-Beispiel mit dem Cyclone® III 3c120 Entwicklungs-Mainboard. Der Grund dafür liegt daran, dass die RGMII-Schnittstelle zeitlich nicht mit der Konfiguration des Ethernet-Treibers der PHY kompatibel ist.
Um eine funktionelle RGMII-Schnittstelle zu erhalten, ist eine Änderung der Altera® Avalon®TSE-Treibercode, um zu verhindern, dass die RGMII-Zeitsteuerung während der Schnittstelleninitialisierung geändert wird.
Um dieses Problem zu beheben, ändern Sie die folgende Datei im Mainboard-Support-Paket: /drivers/src/altera_avalon_tse.c
Kommentieren Sie in der Funktion "marvell_cfg_rgmii" die folgende Zeile auf oder in der Nähe von Zeile 2235 der Datei:
IOWR(&pmac->mdio1.reg14, 0, pdf);
An
IOWR(&pmac->mdio1.reg14, 0, pdf);
Dies führt dazu, dass die Ethernet-PHY mit unveränderter RGMII-Zeitsteuerung funktioniert und das Problem behebt.