Hallo Leute, kennt jemand von euch einen (freien) Treiber für EHCI kompatible USB-Controller. Dieser sollte ohne Betriebssystem auf einem ARM laufen. Grüße
Was soll er denn können? Ohne Betriebssystem auf dem ARM sicher nicht viel... Reicht Ein-/Ausschalten => IO-Port togglen, kein "Treiber" nötig? Soll er Geräte enummerieren? Zugriff auf verschiedene Device-Klassen bieten wie z.B. CDC(-Ethernet), USB-Storage? Und dann vielleicht auch noch TCP-Stack, Firewall, SCSI-Blockdevice, Filesysteme usw mitbringen, die auf dem EHCI-Treiber aufsetzen? Und überhaupt, welcher EHCI-Chip soll es werden, über PCI-Bus wirst du den ja kaum an den ARM anschließen, oder? Die Linux-Treiber hast du dir sicher schon angeschaut, oder? Die sind aber recht verzahnt mit den ganzen usbcore-Geschichten, wird nicht leicht die zu transplantieren.
>Was soll er denn können? Ohne Betriebssystem auf dem ARM sicher nicht >viel... Wieso? >Reicht Ein-/Ausschalten => IO-Port togglen, kein "Treiber" nötig? >Soll er Geräte enummerieren? Reset/Suspend und eine QueueURP Funktion würden schon reichen. >Zugriff auf verschiedene Device-Klassen bieten wie z.B. CDC(-Ethernet), >USB-Storage? >Und dann vielleicht auch noch TCP-Stack, Firewall, SCSI-Blockdevice, >Filesysteme usw mitbringen, die auf dem EHCI-Treiber aufsetzen? Wir wollen mal nicht übertreiben. >Und überhaupt, welcher EHCI-Chip soll es werden, über PCI-Bus wirst du >den ja kaum an den ARM anschließen, oder? Die LPC31xx haben einen EHCI-kompatiblen Controller an Bord. >Die Linux-Treiber hast du dir sicher schon angeschaut, oder? Die sind >aber recht verzahnt mit den ganzen usbcore-Geschichten, wird nicht >leicht die zu transplantieren. Ja, die habe ich mir bereits angeschaut. Leider gibt es keine LowLevel Doku - zumindest habe ich keine gefunden. Abgesehen davon doch sehr mit dem restlichen Kernel verzahnt.
Also sowas hier: http://www.thesycon.com/eng/embusbhost.shtml (http://www.thesycon.com/deu/embusbhost_de.shtml) bzw davon nur die untersten Layer. erfüllt halt nicht die "frei"-Anforderung, die du oben in Klammern gesetzt hattest. Edit: Ach ja, NXP selber wirbt für die LPC31xx mit: "Free USB Host Stack w/ Mass Storage Driver online for LPC devices"... Habs auf die schnelle nicht auf deren Webseite gefunden, vielleicht in der "LPC313x Common Driver Library (CDL)" ?
Danke für deine Mühe. In der "LPC313x Common Driver Library" habe ich nur ein USB Device Demo gefunden, was allerdings nicht funktioniert (Windows meldet Fehler beim Enummerieren...). Abgesehen davon, schaut mir der Sourcecode so aus, als hätte den ein IT-Inder zusammengefrickelt. thesycon hat deren Treiber leider nicht für den LPC31xx im Angebot und so wie es aussieht bisher auch nur mit Fullspeed-Controllern getestet.
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.