web-dev-qa-db-fra.com

Déclassement de iwlwifi

J'ai demandé cette question , mais je suis de plus en plus certain que mon problème provient d'une version de microprogramme iwlwifi défectueuse. Plutôt que de brouiller les cartes là-bas, je voudrais demander s’il est possible de rétrograder mon micrologiciel islwifi à une version antérieure.

Si c'est possible, pouvez-vous me dire précisément comment? Je ne suis pas vraiment génial avec les instructions génériques. Ou y a-t-il un site Web que j'ai raté?

4
algebralives

Les sources de microprogrammes Linux sont en cours de développement dans un référentiel Git, il est donc facile de remonter dans le temps pour toutes les versions plus anciennes du microprogramme.

  1. Installer git Install git
  2. Cloner le référentiel ( page Web cgit ):

    git clone http://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git
    
  3. cd dans le référentiel:

    cd linux-firmware
    
  4. Localisez le micrologiciel de votre appareil conformément à page de développement iwlwifi (défilez vers le bas), par exemple. iwlwifi-3945-2.ucode.

    find . -name "iwlwifi*"
    

    Notez que pour certains périphériques, plusieurs versions sont conservées dans des fichiers distincts, afin de garantir la compatibilité des anciennes versions du noyau.

  5. Regardez l'historique du fichier:

    git log iwlwifi-3945-2.ucode
    

    montre (supprime quelques lignes inutiles):

    commit d90a18c9e7eef19ab978c4c0bb2d2d4b8fa49dce
    Date:   Thu May 14 18:15:50 2009 +0100
    
        linux-firmware: Update Intel Wireless Wifi 3945 firmware
    
        Version is now 15.32.2.9
    
    commit caef650a8c909f557ed7f6b23c413401d6994fdb
    Date:   Tue Jan 20 21:37:48 2009 +0000
    
        linux-firmware: Add Intel Wireless Wifi firmware
    
  6. La révision en haut est la version de votre répertoire de travail. Pour récupérer une ancienne version du même fichier, procédez comme suit:

    git show caef650a8c909f557ed7f6b23c413401d6994fdb iwlwifi-3945-2.ucode > ~/some/destination/iwlwifi-3945-2.ucode
    

    voir aussi: Comment récupérer un seul fichier d'une révision spécifique dans Git?

    Cependant, la plupart des fichiers de microprogramme ne comportent qu'une seule révision dans le référentiel et sont versionnés en ne possédant que plusieurs noms de fichiers.

  7. Installez le firmware dans /usr/local/lib/firmware (emplacement des fichiers de firmware installés manuellement) en copiant le fichier à cet emplacement:

    Sudo cp /path/to/iwlwifi-3945-2.ucode /usr/local/lib/firmware/
    
  8. Retirez et réinsérez le (s) module (s) du noyau:

    rmmod iwldvm && rmmod iwlwifi
    modprobe iwlwifi && modprobe iwldvm
    

    Et regardez dmesg pour voir si le firmware est chargé.


Si vous vous demandez si des fichiers ont été supprimés du référentiel, essayez ceci:

git log --diff-filter=D --summary | grep delete

Au moment de la rédaction de ce document, aucun micrologiciel Intel n'a encore été supprimé.

3
gertvdijk

À

http://wireless.kernel.org/en/users/Drivers/iwlwifi

vous pouvez trouver un firmware pour les puces sans fil Intel.

Mais je ne sais pas si vous pouvez trouver une version plus ancienne pour votre puce spécifique.

1
user58634