Schritt 1:Busaufzählung
1. Der Host-Controller-Treiber zählt den USB-Bus auf.
2. Der Host-Controller-Treiber identifiziert alle USB-Geräte, die an den Bus angeschlossen sind.
3. Der Host-Controller-Treiber erstellt einen Gerätedeskriptor für jedes USB-Gerät.
4. Der Host-Controller-Treiber weist jedem USB-Gerät eine eindeutige Adresse zu.
Schritt 2:Geräteaufzählung
1. Der Host-Controller-Treiber lädt den Gerätetreiber für jedes USB-Gerät.
2. Der Gerätetreiber initialisiert das USB-Gerät.
3. Der Gerätetreiber erstellt ein Geräteobjekt für das USB-Gerät.
4. Das Geräteobjekt wird zum Gerätebaum hinzugefügt.
Schritt 3:Konfigurationsaufzählung
1. Der Host-Controller-Treiber lädt den Konfigurationsdeskriptor für jedes USB-Gerät.
2. Der Host-Controller-Treiber wählt eine Konfiguration für jedes USB-Gerät aus.
3. Der Host-Controller-Treiber weist jedem USB-Gerät eine Konfigurationsnummer zu.
Schritt 4:Schnittstellenaufzählung
1. Der Host-Controller-Treiber lädt den Schnittstellendeskriptor für jedes USB-Gerät.
2. Der Host-Controller-Treiber wählt eine Schnittstelle für jedes USB-Gerät aus.
3. Der Host-Controller-Treiber weist jedem USB-Gerät eine Schnittstellennummer zu.
Schritt 5:Endpunktaufzählung
1. Der Host-Controller-Treiber lädt den Endpunkt-Deskriptor für jedes USB-Gerät.
2. Der Host-Controller-Treiber identifiziert alle Endpunkte, die der ausgewählten Schnittstelle zugeordnet sind.
3. Der Host-Controller-Treiber erstellt für jeden Endpunkt ein Endpunktobjekt.
4. Das Endpunktobjekt wird zum Geräteobjekt hinzugefügt.
Der USB-Aufzählungsprozess ist abgeschlossen, wenn alle an den Bus angeschlossenen USB-Geräte gezählt wurden.