GNU/Linux >> Tutoriels Linux >  >> Linux

Comment réinitialiser/cycler l'alimentation d'un périphérique PCIe ?

J'ai un périphérique PCIe qui ne fonctionne correctement que lorsque l'ordinateur est complètement éteint puis rallumé. Lancer un simple reboot ou reboot -p La commande ne semble pas remettre sous tension la carte PCIe, ce qui l'empêche de fonctionner après le redémarrage.

Existe-t-il un moyen, à partir du système d'exploitation, de mettre sous tension un périphérique dans un emplacement PCIe ? Je peux le trouver dans /sys/bus/pci/devices/0000*/ , mais je n'arrive pas à comprendre comment réinitialiser correctement la carte. Basculer le pouvoir semble être le seul moyen.

À défaut, puis-je modifier quelque part un paramètre qui entraînera un cycle d'alimentation complet lors d'un reboot commande ?

J'utilise Ubuntu 12.10 au fait.

Réponse acceptée :

Méthode potentielle #1

Je pense que vous pouvez le faire avec ces commandes :

désactiver

echo 0 > /sys/bus/pci/slots/$NUMBER/power

activer

echo 1 > /sys/bus/pci/slots/$NUMBER/power

$NUMBER est le numéro de l'emplacement PCI.

lspci -vv peut aider à identifier l'appareil. Ce n'est pas très bien documenté…

Méthode potentielle #2

Je suis tombé sur ce fil sur U&L, problème similaire :certaines réponses à cette question indiquent que vous pouvez réinitialiser avec cette commande :

echo "1" > /sys/bus/pci/devices/$NUMBER/reset

Cependant, je lirais les réponses là-bas! Il y a des conditions pour le faire de cette façon ! Plus précisément, je lirais cette réponse !

Méthode potentielle #3

Il existe une commande Unix, setpci , cela peut vous donner une méthode pour réinitialiser un périphérique dans le bus PCI.

Je n'ai pas vu d'exemples spécifiques avec cette commande, vous devrez donc rechercher des exemples sur Google et consulter la page de manuel. Je marcherais légèrement avec cette commande jusqu'à ce que vous soyez sûr de son utilisation. D'après ce que j'ai lu à ce sujet, il s'agit de manipuler directement le matériel et il y a donc toujours des risques à le faire soi-même plutôt qu'à utiliser un outil qui expose ce type de fonctionnalité !


Linux
  1. Comment installer un pilote de périphérique sous Linux

  2. Linux - Comment basculer de manière robuste le périphérique de sortie Pulseaudio à partir de la ligne de commande ?

  3. Comment quitter si une commande a échoué ?

  4. gdb s'arrête dans un fichier de commandes s'il y a une erreur. Comment continuer malgré l'erreur ?

  5. Sudo - existe-t-il une commande pour vérifier si j'ai sudo et/ou combien de temps il me reste ?

Comment utiliser la commande Disown sous Linux

Comment réinitialiser la grille des applications dans GNOME 3.38

Comment utiliser la commande PS

Comment utiliser la commande TOP

Comment réinitialiser le mot de passe administrateur NextCloud à l'aide de la commande

Comment vérifier la puissance qu'un port USB peut fournir ?