Conditions requises de la gestion de l’alimentation USB4™
Les routeurs hôtes USB4 doivent prendre en charge de manière fiable la veille USB4, ainsi que l'entrée et la sortie. Les protocoles tunnellisés ne doivent pas signaler électriquement la déconnexion de leurs tunnels respectifs à l’entrée ou à la sortie de la veille USB4. En outre, le routeur hôte USB4 doit relancer la sortie de veille du protocole par le tunnel approprié une fois que le domaine USB4 sort de l’état de veille.
Les protocoles d’appareils tunnellisés (PCIe, USB 3.x et display) établissent des relations d’alimentation avec le périphérique de routeur hôte USB4 associé, ce qui permet au gestionnaire de connexions de lancer l’entrée en veille lorsque les appareils tunnellisés sont inactifs. Les pilotes de périphériques PCIe et USB 3.x à partir de Windows 11 sont capables d'identifier et de gérer l’alimentation du périphérique de routeur hôte USB4 associé en fonction du mappage de port ACPI (_DSD) décrit dans la configuration requise pour USB4 ACPI.
La pile graphique dans Windows 11 a également été mise à jour pour identifier l’appareil de routeur hôte USB4 et gérer l’alimentation du périphérique de routeur hôte USB4. Cela nécessite la prise en charge du pilote graphique fourni par IHV, comme décrit dans Configuration requise pour les pilotes graphiques. Le gestionnaire de connexions USB4 obtient l’ID d’appareil du routeur hôte à partir d’ACPI et écrit dans ADP_DP_CS_2.CM_ID dans l’espace de configuration de l’adaptateur DP-IN. Comme décrit dans les conditions requises pour ACPI, l’instance d’interface hôte doit toujours se terminer par un chiffre de 3 bits (0-7).
Configuration requise pour les pilotes graphiques
Pour garantir les associations correctes de gestion de l’alimentation, la pile graphique doit être en mesure d’identifier l’adaptateur USB4 DP-IN auquel le moniteur est connecté. Pour ce faire, le domaine USB4 définit le registre DPCD via l’adaptateur USB4 DP-IN que la pile graphique peut lire. Ces exigences sont définies dans la spécification DisplayPort™ 2.0 (Errata).
Nom du champ DPCD | Adresse du champ DPCD | Remarque |
---|---|---|
USB4_Driver_ID | E000Fh [3:0] | Identifie de façon unique le routeur hôte dans le système. Il est défini par l’écriture du gestionnaire de connexions USB4 qui obtient l’ID du périphérique routeur hôte obtenu par ACPI et l’écrit dans ADP_DP_CS_2.CM_ID dans l’espace de configuration de l’adaptateur DP IN. |
USB4_ROUTER_TOPOLOGY_ID | E001Bh - E001Fh | Identifie de manière unique le périphérique USB4 dans le domaine du routeur hôte. |
DP_IN_Adapter_Number | E000Eh [5:0] | Identifie de manière unique l’adaptateur DP-IN sur le périphérique USB4. |
Prise en charge de la tunnellisation DP | E000Dh [0] | La valeur 1 indique le tunneling USB4. |
La configuration requise pour le pilote graphique est la suivante :
- Pilote WDDM 3.0 ou version ultérieure
- Le pilote expose une nouvelle limite d’adaptateur pour indiquer la prise en charge USB4
- Toutes les cibles statiques du réseau de présentation vidéo (VidPN) exposées par le pilote doivent être signalées en tant que composants d’alimentation
- Chaque cible dynamique USB4 connectée à la même cible statique doit être connectée au même routeur hôte. Autrement dit, le champ USB4_Driver_ID doit avoir la même valeur. La connexion d’un moniteur USB4 DisplayPort à un pilote WDDM d’affichage seul ou indirect n’est pas prise en charge.
Fonctionnalités du pilote USB4
La fonctionnalité SupportUsb4Targets
a été ajoutée à la structure DXGK_DISPLAY_DRIVERCAPS_EXTENSION qui est demandée au pilote au moment du démarrage. Cette valeur n'est valable que pour les pilotes WDDM 3.0 et ne doit être définie que si le pilote répond à toutes les exigences répertoriées ci-dessus.
Rapport sur les valeurs DPCD du moniteur USB4
Dans WDDM 3.0, il existe un nouveau champ DXGK_CONNECTION_CHANGE.MonitorConnect.MonitorConnectFlags
doté d'un indicateur Usb4DisplayPortMonitor
que le pilote utilise pour indiquer que ce moniteur est un moniteur connecté via USB4.
typedef struct _DXGK_CONNECTION_MONITOR_CONNECT_FLAGS
{
union
{
struct
{
UINT Usb4DisplayPortMonitor : 1;
UINT Reserved :31;
};
UINT Value;
};
} DXGK_CONNECTION_MONITOR_CONNECT_FLAGS;
typedef struct _DXGK_CONNECTION_CHANGE {
ULONGLONG ConnectionChangeId;
D3DDDI_VIDEO_PRESENT_TARGET_ID TargetId :24;
DXGK_CONNECTION_STATUS ConnectionStatus : 4;
UINT Reserved : 4;
union {
struct {
D3DKMDT_VIDEO_OUTPUT_TECHNOLOGY LinkTargetType;
DXGK_CONNECTION_MONITOR_CONNECT_FLAGS MonitorConnectFlags;
} MonitorConnect;
struct {
D3DKMDT_VIDEO_OUTPUT_TECHNOLOGY BaseTargetType;
D3DDDI_VIDEO_PRESENT_TARGET_ID NewTargetId;
} TargetConnect;
struct {
D3DKMDT_VIDEO_OUTPUT_TECHNOLOGY BaseTargetType;
D3DDDI_VIDEO_PRESENT_TARGET_ID NewTargetId;
} TargetJoin;
};
} DXGK_CONNECTION_CHANGE, *PDXGK_CONNECTION_CHANGE;
typedef struct _DXGK_CONNECTION_USB4_INFO
{
UINT Dpcd_DP_IN_Adapter_Number;
UINT Dpcd_USB4_Driver_ID;
BYTE Dpcd_USB4_ROUTER_TOPOLOGY_ID[5];
} DXGK_CONNECTION_USB4_INFO, *PDXGK_CONNECTION_USB4_INFO;
typedef struct _DXGKARG_QUERYCONNECTIONCHANGE
{
DXGK_CONNECTION_CHANGE ConnectionChange; // out: Buffer into which the oldest available change is copied by driver
PDXGK_CONNECTION_USB4_INFO pUsb4MonitorInfo; // inout: Pointer to an operating system allocated structure driver should
// complete if MonitorConnect.Flags.Usb4DisplayPortMonitor was set
} DXGKARG_QUERYCONNECTIONCHANGE;
Lorsqu’un moniteur DisplayPort™ a été connecté à la cible VidPN (video present network) spécifiée et qu’il est connecté à un adaptateur USB4 DP-IN, le pilote doit :
- Définir
DXGK_CONNECTION_CHANGE.MonitorConnect.Flags.Usb4DisplayPortMonitor
- Renseigner les champs dans
DXGKARG_QUERYCONNECTIONCHANGE.pUsb4MonitorInfo
Toutes les cibles VidPN statiques signalées en tant que composants PoFx
Pour permettre une gestion correcte de l’alimentation entre la pile graphique et la pile USB, toutes les cibles VidPN statiques doivent être signalées en tant que composants PoFx (Power Management Framework) via DxgkDdiQueryAdapterInfo(DXGKQAITYPE_NUMPOWERCOMPONENTS)
et DxgkDdiQueryAdapterInfo(DXGKQAITYPE_POWERCOMPONENTINFO)
.
Toutes les cibles dynamiques créées à partir de la même cible VidPN statique
Les moniteurs USB4 connectés à des cibles VidPN dynamiques sont pris en charge. Mais toutes les cibles VidPN dynamiques USB4 connectées à une cible VidPN statique doivent avoir les mêmes valeurs USB4_Driver_ID values
, elles doivent être connectées au même routeur hôte USB4.
États d’alimentation faible CLx
Pour économiser de l’énergie et réduire la charge thermique, le gestionnaire de connexions permet aux liens de première profondeur d'entrer dans les CL0 et CL1, s'ils sont pris en charge par le matériel et les protocoles actuellement tunnellisés. Le port en amont (UFP) et le port en aval (DFP) doivent tous deux prendre en charge CL0s et CL1 pour que les états de faible alimentation soient activés sur la liaison. Par la suite, si les exigences de précision TMU et l’activité tunnellisée sur la liaison le permettent, la liaison peut entrer dans un état CL0s ou CL1 pour économiser de l’énergie.
Prise en charge du tunneling XHCI USB3
Pour économiser l'énergie du système en laissant les routeurs hôtes USB4 tourner au ralenti plus longtemps, le contrôleur XHCI associé au routeur hôte USB4 doit prendre en charge la spécification USB3 Tunneling Support ECN (prise en charge du mode tunnellisé bit et prise en charge du tunneling USB3). Un mécanisme propriétaire équivalent doit être disponible si USB3 Tunneling Support ECN n’est pas pris en charge. La prise en charge de l'USB3 Tunneling Support ECN permet aux routeurs hôtes USB4 de rester inactifs lorsqu’un port USB3 mappé à USB4 fonctionne en mode natif.
Voir aussi
- Universal Serial Bus 4
- Présentation du gestionnaire de connexions USB4 dans Windows
- Détails de la conception USB4 et exigences générales
- Configuration requise pour USB4 ACPI
- Connexions interdomaines USB4
- Test USB4 requis
- Débogage et résolution des problèmes d’USB4
Thunderbolt est une marque commerciale d’Intel Corporation ou de ses filiales.
« USB4™ » est une marque commerciale de USB Implementers Forum et est uniquement destiné à être utilisé avec des produits basés sur et conformes à la spécification USB4™.