ESXI usb passthrough

De Linux Server Wiki
Sauter à la navigation Sauter à la recherche

1 Éviter la suppression automatique du device déconnecté

Éditez le fichier VMX de la VM (paramètre -> Options de la VM -> Avancé -> Paramètres de configuration).
Par exemple pour le device0 (ici sur un contrôleur usb3 :

usb_xhci.autoConnect.device0 -> vid:152d pid:0567 path:0/1/0/0/0 autoclean:1

Passez autoclean a 0 :

usb_xhci.autoConnect.device0 -> vid:152d pid:0567 path:0/1/0/0/0 autoclean:0

Source : https://kb.vmware.com/s/article/1648

2 Bug 'can't add hid device'

Dans la config de la VM :

usb.generic.allowHID = TRUE
usb.quirks.device0 = 0xXXXX:0xYYYY allow

Si vous avez configuré un port usb3, utilisez usb_xhci au lieu de usb

0xXXXX représente le vendorId et 0xYYYY le deviceId (vous pouvez les récupérer en shell sous ESXi avec un petit lsusb

2.1 Facultatif : configuration globale

Cela permet de ne pas avoir ç ajouter le quirks pour chaque VM indépendante.
Ajoutez ces quirks dans l'arbitrateur USB d'ESXi. Éditez le fichier /etc/vmware/config et ajoutez y :

usb.quirks.device0 = "0xXXXX:0xYYYY allow"

2.2 Facultatif

Étape 3, uniquement pour les souris/clavier, il faut empêcher le kernel de claim ces dispositifs USB :

  • Soit ajouter dans /bootbank/boot.cfg : CONFIG./USB/quirks=0xXXXX:0xYYYY::0xffff:UQ_KBD_IGNORE
  • Soit taper la ligne de code suivante au boot d'ESXi (shift + O) : CONFIG./USB/quirks=0xXXXX:0xYYYY::0xffff:UQ_KBD_IGNORE

Je vous recommande d'essayer la seconde manière dans un premier temps, pour voir si ça fonctionne

Enfin dans tous les cas, il faudra redémarrer l'hyperviseur pour appliquer la configuration de l'arbitrateur USB, et plus important, du kernel. Normalement si le kernel ne claim plus le device, il devrait apparaître dans esxcli hardware usb passthrough device list