USB2.0-Treiber EHCI

07/03/2008 - 15:06 von Dominik Pusch | Report spam
Hallo,

ich habe mir für mein altes Board nun mal eine USB2.0 PCI-Karte
zugelegt. Ich hatte die Wahl zwischen VIA und NEC Chipsatz und habe
mich für NEC entschieden.
Bisher hatte ich immer das uhci-hcd Modul genutzt (Kernel 2.6.20).
Habe vorher im Bios das On-Chip USB disabled und die Karte eingebaut.

Nachkompiliert und geladen habe ich das ehci-hcd Modul, dass ja für
USB2.0 sein soll. Mit einer externen Festplatte und USB-Stick
funktioniert es. Mit einem USB-Aufnahmegeràt und einem
USB-Kartenlesen (beides angeblich auch USB2.0) funktionierte es
nicht!

Nun habe ich nach viel rumràtseln und probieren (u.a. mit Knoppix)
festgestellt, dass man auch das ohci-hcd Modul braucht. Das auch noch
nachkompiliert und die Geràte werden direkt erkannt. Nur warum ist
das so? Es handelt sich laut Spezifikation der Geràte definitv um
USB2.0 Geràte! Wieso laufen die nur, wenn der OHCI-Treiber noch
zusàtzlich geladen wird zum EHCI-Treiber und andere USB2.0-Geràte
laufen wiederum nur mit dem EHCI-Treiber?

Beim Kernel steht zum OHCI-Treiber:
The Open Host Controller Interface (OHCI) is a standard for accessing
USB 1.1 host controller hardware. It does more in hardware than
Intel's UHCI specification. If your USB host controller follows the
OHCI spec, say Y. On most non-x86 systems, and on x86 hardware
that's not using a USB controller from Intel or VIA, this is
appropriate. If your host controller doesn't use PCI, this is
probably appropriate. For a PCI based system where you're not sure,
the "lspci -v" entry will list the right "prog-if" for your USB
controller(s): EHCI, OHCI, or UHCI.


lspci -v gibt auch zwei OHCI-Controller aus. Aber der soll ja _nur_
für USB 1.1 sein?


TIA,
Dominik
 

Lesen sie die antworten

#1 Henning Paul
07/03/2008 - 15:15 | Warnen spam
Dominik Pusch wrote:

ich habe mir für mein altes Board nun mal eine USB2.0 PCI-Karte
zugelegt. Ich hatte die Wahl zwischen VIA und NEC Chipsatz und habe
mich für NEC entschieden.
Bisher hatte ich immer das uhci-hcd Modul genutzt (Kernel 2.6.20).
Habe vorher im Bios das On-Chip USB disabled und die Karte eingebaut.

Nachkompiliert und geladen habe ich das ehci-hcd Modul, dass ja für
USB2.0 sein soll. Mit einer externen Festplatte und USB-Stick
funktioniert es. Mit einem USB-Aufnahmegeràt und einem
USB-Kartenlesen (beides angeblich auch USB2.0) funktionierte es
nicht!

Nun habe ich nach viel rumràtseln und probieren (u.a. mit Knoppix)
festgestellt, dass man auch das ohci-hcd Modul braucht. Das auch noch
nachkompiliert und die Geràte werden direkt erkannt. Nur warum ist
das so? Es handelt sich laut Spezifikation der Geràte definitv um
USB2.0 Geràte! Wieso laufen die nur, wenn der OHCI-Treiber noch
zusàtzlich geladen wird zum EHCI-Treiber und andere USB2.0-Geràte
laufen wiederum nur mit dem EHCI-Treiber?



Der EHCI-Treiber ist nur für den High-Speed-Modus von USB 2.0 zustàndig.
Den Full-Speed- und Low-Speed-Modus von USB 2.0 (ja, die gibt es da
immer noch!) verwalten weiterhin OHCI-/UHCI-(je nach
Hersteller)-Treiber.

Wenn "USB 2.0" auf einem USB-Device drauf steht, heißt das ja noch lange
nicht, daß das auch den 480MBit/s-High-Speed-Modus beherrscht.

Gruß
Henning

Ähnliche fragen