udev und kernel zeigen keine Ereignisse von USB-Geräten an

udev und kernel zeigen keine Ereignisse von USB-Geräten an

Ich verwende Embedded Linux auf einer Zedboard-ähnlichen Plattform. Ich muss Udev-Regeln für verschiedene Geräte erstellen, die daran angeschlossen werden.

Ich habe Gadgetfs und Configfs im Kernel aktiviert und sie als Module erstellt. Wenn ich die Module lade, kann ich ein entsprechendes USB-Gerät verwenden, z. B. Ethernet über USB an einen Laptop oder etwas anderes.

Das Problem beginnt, wenn ich Hot Plugging unterstützen möchte und daher Udev-Regeln verwenden muss. Ich habe also den Udevadm-Monitor ausgeführt, aber er zeigt keine Kernel- oder Udev-Trigger an, wenn ein USB-Gerät angeschlossen ist. Wenn ich ein Modul lade, kann ich die Kernel-/Udev-Trigger für das USB-Gerät sehen, während das Modul geladen wird.

Ist das normales Verhalten? Ich dachte, der Kernel sollte melden, dass ein USB-Gerät über einen Trigger angeschlossen ist, unabhängig davon, ob ich ein Modul habe, das dies unterstützt oder nicht. Normale USB-Treiber sind ebenfalls in den Kernel integriert, scheinen aber überhaupt nicht zu funktionieren, weshalb ich dazu übergegangen bin, Gadgetfs und Configfs zu verwenden.

Weiß jemand, warum mein Udev keine Trigger-Ereignisse anzeigt, wenn kein Gadget-Modul geladen ist? Ich kann Hot Plugging nicht automatisieren, wenn ich die Trigger-Ereignisse nicht sehen kann, wenn ein USB-Gerät angeschlossen ist.

Mein USB-Controller ist von Chipidea und ich verwende ihn im OTG-Modus.

verwandte Informationen