Journal Mise à jour de BIOS/EFI sur carte mère dont le fabriquant ne fournit qu’un .exe (MSI A88X-G43)

Posté par  . Licence CC By‑SA.
49
2
mai
2021

Bonjour à tous,

Voici l’histoire de ma petite galère de la journée d’hier : le fabriquant de la carte mère qui équipe mon petit serveur de données basse consommation, MSI pour ne pas le nommer, ne fournit pas les dernières images de ses EFI.
Les dernières versions ne sont disponibles que sous la forme d’un utilitaire windows (.exe), qui permet uniquement le flashage depuis cet OS. Cela malgré le fait que l’EFI de l’engin en question possède un outil de flashage intégré.
C’est dommage et pas très "other OS fiendly". Le problème je n’ai aucune envie de démonter la machine pour le moment, elle est occupée à faire du partage de fichiers et encore moins de devoir installer rapidement un windows pour cela (une blague est cachée dans cette phrase, sauras-tu la retrouver ?).
Le démontage est programmé pour la semaine prochaine lorsque les nouveaux disques NVMe et les cartes adaptatrices PCIe seront arrivées, raison même de la mise à jour du BIOS, la dernière version annonçant un meilleur support de ce type de matériel.

Souvent dans ce genre de cas il reste quelques solutions simples :

A. Il y a un paramètre à passer en ligne de commande pour extraire l’image du BIOS/EFI.

B. On lance avec WINE et on arrive à récupérer le fichier en question dans un dossier temporaire.

C. On ouvre le .exe avec un utilitaire d’archivage type 7z qui reconnaît la présence d’une archive et permet d’extraire le fichier.

Spoiler alert : aucune de ces méthodes ne fonctionne et Murphy fait sa loi.

A. Exécution du fichier depuis la console WINE avec /?, je tente aussi le traditionnel /extract, malheureusement il se lance systématiquement en mode graphique sans donner de réponse dans la console. Raté, trop simple.

B. Lors de l’exécution du fichier par WINE il m’affiche directement une popup qui me demande de le lancer depuis une clé USB. Allumage de KVM, recherche de clé USB, sauvegardage, formatage puis passage de cette dernière à la VM et éxécutage : Rien. C’était évident on est pas sur le bon modèle de carte mère. Aucun fichier temporaire à se mettre sous la dent, là j’ai du Garou qui m’arrive dans la tête "Si tu crois que c’est fini, JAMAAAIIIISSS ! C’est juste une pause un rééééépiiiss"… Bref je sens que ca va être long. Je profite de ce moment de calme et de zenitude pour envoyer une petite malédiction des familles aux ingés de chez MSI qui ont pris la décision de pondre cette mer…veille.

C. Aucun utilitaire n’a réussi à identifier une archive dans le .exe. À ce point là, je n’en doutais pas une seconde. Je me fais donc un grand café.

Changement de méthode. Approche dite de la débrouille pour rester poli, je vous ai déjà potentiellement mit du Garou dans la tête, on va pas en rajouter :

D.1. Analyse du fichier .exe avec wrestool pour voir si la ROM est liée comme une ressource de l’exe. Pas de bol aucun n’est assez gros pour correspondre.

D.2. Analyse du fichier .exe avec wxHexEditor. Première étape récupération d’une ancienne version de l’EFI disponible sous la forme d’une ROM pour savoir ce que l’on cherche. Petit tour sur le grand ternet et récupération sur un site sans aucun rapport avec MSI.
Ouverture du fichier avec l’éditeur hexa et on peut constater qu’on a du padding à base de 0xFF sur pas mal d’octets (128k très exactement) puis une séquence. Je copie la séquence dans la recherche de mon éditeur hexa et recherche "FF AA 55 AA 55 00 00 00 00 00 00 00 00 00 00 00 00". Ringo ! On a un match. Je relève la position du premier 0xAA, auquel je soustrais les 128k de 0xFF (2 999 197 - 131 072) et me rends donc à la position 2 868 125, re-ringo on est au premier 0xFF après une autre séquence et il n’y a que ça jusqu’à la position 2 999 197. On a trouvé le début de notre EFI.

Reste à voir où se trouve la fin. On reprend le fichier d’origine, il fait 8M. Donc on se rend à la position 11 256 733 (2 868 125, notre départ + 8 388 608, les 8Mo). Re-re-ringo on est pile poil à la fin du fichier .exe. L’EFI est donc empilé à la fin du fichier .exe contentant l’utilitaire. Extraction de cette partie, j’utilise un tail -c 8388608 > A88XG43-BIOSv3C.rom. Il ne reste plus qu’à vérifier le résultat, aucune envie de sortir la pince à griffe et le programmateur à la suite d’un mauvais flashage dans quelques jours. J’utilise donc un petit utilitaire disponible sur GitHub nommé UEFITool (https://github.com/LongSoft/UEFITool/). Là il est possible de vérifier que ce qui a été sorti du .exe correspond bien à ce que l’on attend en comparant avec l’ancienne version.

Le fichier de l’ancien EFI dans UEFITool :
Screenshot UEFITool de l'ancien bios

Le fichier extrait :
Screenshot UEFITool du fichier extrait

J’ai passé en revue les différentes entrées et on est très proche, bien entendu il y a un peu plus de contenu dans la nouvelle version mais tout me semble propre, je suis confiant pour flasher la semaine prochaine.

Et voilà comment une opération qui devait prendre moins de 2 minutes a pris au final près de 3 heures.

Pour résumer si vous devez flasher une carte mère MSI sans windows vous pourrez tenter de sortir le fichier rom de la fin de l’exe. Résultat à suivre ici week end prochain et j’en profiterai pour parler de l’ajout de disque NVMe dans une ancienne machine.

Bon dimanche à vous.

  • # La réponse D

    Posté par  (site Web personnel) . Évalué à 6 (+4/-0).

    Utiliser un utilitaire permettant d'extraire les ressources d'un fichier au format PE (.exe ou .dll) comme ResourceExtract ainsi que sa variante .Net

    • [^] # Re: La réponse D

      Posté par  . Évalué à 3 (+1/-0). Dernière modification le 02/05/21 à 15:47.

      C'est ce que j'ai tenté en D.1 avec wrestool, malheureusement il ne me listait aucune ressource de 8Mo, tout ce qui était dans le listing était bien plus petit.

      • [^] # Re: La réponse D

        Posté par  (site Web personnel) . Évalué à 2 (+0/-0).

        Je ne suis pas certains que wrestool gère les ressources embarquées .Net (d'où ma suggestion ;)).

        Par contre, si toutes les ressources faisaient moins de 8Mo, effectivement, elles ne devaient pas être là… Car les ressources embarquées .Net sont embarquées dans la partie "resources" d'un fichier au format PE, mais sont encapsulées (d'où la nécessite d'avoir un outil dédié qui les gère)

        • [^] # Re: La réponse D

          Posté par  . Évalué à 3 (+1/-0).

          Vu que le fichier .exe s'est lancé avec un profil WINE vierge qui n'a pas de framework .Net installé, comme dans la VM d'ailleurs j'avais éliminé directement cette possibilité.

          J'ai dû télécharger le framework .Net pour lancer l'utilitaire en lien afin de m'assurer de ne pas être passé à coté d'une méthode plus simple et comme attendu rien de concluant. Uniquement deux fichiers .ressources de 1ko.

  • # Si un modo passe par ici...

    Posté par  . Évalué à 4 (+2/-0).

    Deux petits loupés à corriger qui viennent de me sauter au visage :

    s/Exécution du fichier avec depuis la console WINE/Exécution du fichier depuis la console WINE/
    s/Extraction de cette partie, j’utilise avec un /Extraction de cette partie, j’utilise un/

    Merci d'avance.

  • # Hachoir-subfile

    Posté par  (site Web personnel) . Évalué à 6 (+5/-0).

    Tu as essaye de passer hachoir-subfile sur ton .exe pour voir si il trouve un .bin dedans?

    • [^] # Re: Hachoir-subfile

      Posté par  . Évalué à 7 (+5/-0).

      Non j'y avais pas pensé, je n’avais jamais utilisé hachoir même si j'en avais déjà entendu parler ici.

      Voilà ce que ça donne :

      hachoir-subfile E7793V3C.exe 
      [+] Start search on 11256733 bytes (10.7 MB)
      
      [+] File at 0 size=1716224 (1.6 MB): Microsoft Windows Portable Executable: Intel 80386, Windows GUI
      [+] File at 1716576 size=194329 (189.8 KB): MS-DOS executable
      [+] File at 1911072 size=270336 (264.0 KB): Microsoft Windows Portable Executable: Intel 80386, Windows CUI
      [+] File at 2181536 size=5760 (5760 bytes): Microsoft Windows Portable Executable: Intel 80386, Native
      [+] File at 2187296 size=1168 (1168 bytes): MS-DOS executable
      [err!] Error getting description of /: Can't get field "subsystem" from /pe_opt_header
      [+] File at 2195543 size=350208 (342.0 KB): Microsoft Windows Portable Executable
      [+] File at 2365346 size=7522816 (7.2 MB): MS-DOS executable
      [err!] Error getting description of /: Can't get field "subsystem" from /pe_opt_header
      [+] File at 2545879 size=9216 (9216 bytes): Microsoft Windows Portable Executable
      [+] File at 2601773 size=91648 (89.5 KB): Microsoft Windows Portable Executable: Intel 80386, Windows CUI
      [+] File at 2693421 size=90112 (88.0 KB): Microsoft Windows DLL: Intel 80386, Windows GUI
      [+] File at 2783533 size=30720 (30.0 KB): Microsoft Windows Portable Executable: Intel 80386, Native
      [err!] Error getting description of /: Can't get field "subsystem" from /pe_opt_header
      [+] File at 2821733 size=38912 (38.0 KB): Microsoft Windows Portable Executable
      [+] File at 3130269: EFI Platform Initialization Firmware Volume
      [+] File at 4506525: EFI Platform Initialization Firmware Volume
      [+] File at 9993940 size=7784960 (7.4 MB): MS-DOS executable
      [+] File at 9994066 size=7522816 (7.2 MB): MS-DOS executable
      [+] File at 9995308 size=12390400 (11.8 MB): MS-DOS executable
      
      [+] End of search -- offset=11256733 (10.7 MB)
      Total time: 773 ms -- global rate: 13.9 MB/sec
      

      Je ne retrouves malheureusement pas les positions sur lesquelles je suis tombé avec l'éditeur hexa.

      • [^] # Re: Hachoir-subfile

        Posté par  (site Web personnel) . Évalué à 5 (+4/-0). Dernière modification le 02/05/21 à 22:38.

        Peut-etre aussi avec uwfirmforce?

        http://uwfirmforce.wikidot.com/

        Il y a aussi binwalk:

        https://github.com/ReFirmLabs/binwalk

        • [^] # Re: Hachoir-subfile

          Posté par  . Évalué à 3 (+1/-0).

          J'ai testé pour voir.
          Malheureusement aucun des deux ne trouve les positions.

          binwalk :

          DECIMAL       HEXADECIMAL     DESCRIPTION
          --------------------------------------------------------------------------------
          0             0x0             Microsoft executable, portable (PE)
          1908091       0x1D1D7B        Copyright string: "Copyright (C)"
          1911072       0x1D2920        Microsoft executable, portable (PE)
          2164096       0x210580        Copyright string: "Copyright (C)"
          2181536       0x2149A0        Microsoft executable, portable (PE)
          2195543       0x218057        Microsoft executable, portable (PE)
          2426163       0x250533        UEFI PI Firmware Volume, volume size: 170812517, header size: 10, revision: 0, GUID: 75207965-6470-7461-2065-63616E63656C
          2440343       0x253C97        Copyright string: "Copyright (C)"
          2545879       0x26D8D7        Microsoft executable, portable (PE)
          2555103       0x26FCDF        Object signature in DER format (PKCS header length: 4, sequence length: 6753
          2555252       0x26FD74        Certificate in DER format (x509 v3), header length: 4, sequence length: 890
          2556146       0x2700F2        Certificate in DER format (x509 v3), header length: 4, sequence length: 964
          2557114       0x2704BA        Certificate in DER format (x509 v3), header length: 4, sequence length: 1276
          2558394       0x2709BA        Certificate in DER format (x509 v3), header length: 4, sequence length: 1283
          2559681       0x270EC1        Certificate in DER format (x509 v3), header length: 4, sequence length: 1300
          2559852       0x270F6C        Digi International firmware, load address: 0x204D6963, entry point: 0x66742053,
          2601773       0x27B32D        Microsoft executable, portable (PE)
          2675500       0x28D32C        Copyright string: "Copyright (C) 1992-1993 Jean-loup Gailly"
          2678981       0x28E0C5        CRC32 polynomial table, little endian
          2693421       0x29192D        Microsoft executable, portable (PE)
          2783533       0x2A792D        Microsoft executable, portable (PE)
          2802185       0x2AC209        Copyright string: "Copyright 2003 Compuware Corporation"
          2814261       0x2AF135        Object signature in DER format (PKCS header length: 4, sequence length: 7464
          2814410       0x2AF1CA        Certificate in DER format (x509 v3), header length: 4, sequence length: 890
          2815304       0x2AF548        Certificate in DER format (x509 v3), header length: 4, sequence length: 964
          2816272       0x2AF910        Certificate in DER format (x509 v3), header length: 4, sequence length: 1016
          2817292       0x2AFD0C        Certificate in DER format (x509 v3), header length: 4, sequence length: 1019
          2818315       0x2B010B        Certificate in DER format (x509 v3), header length: 4, sequence length: 1214
          2819533       0x2B05CD        Certificate in DER format (x509 v3), header length: 4, sequence length: 1407
          2821733       0x2B0E65        Microsoft executable, portable (PE)
          2846133       0x2B6DB5        Copyright string: "Copyright 2003 Compuware Corporation"
          2860653       0x2BA66D        Object signature in DER format (PKCS header length: 4, sequence length: 7464
          2860802       0x2BA702        Certificate in DER format (x509 v3), header length: 4, sequence length: 890
          2861696       0x2BAA80        Certificate in DER format (x509 v3), header length: 4, sequence length: 964
          2862664       0x2BAE48        Certificate in DER format (x509 v3), header length: 4, sequence length: 1016
          2863684       0x2BB244        Certificate in DER format (x509 v3), header length: 4, sequence length: 1019
          2864707       0x2BB643        Certificate in DER format (x509 v3), header length: 4, sequence length: 1214
          2865925       0x2BBB05        Certificate in DER format (x509 v3), header length: 4, sequence length: 1407
          3130269       0x2FC39D        UEFI PI Firmware Volume, volume size: 131072, header size: 0, revision: 0, EFI Firmware File System v2, GUID: 8C8CE578-8A3D-4F1C-3599-896185C32DD3
          3551125       0x362F95        SHA256 hash constants, little endian
          3924089       0x3BE079        SHA256 hash constants, little endian
          3929245       0x3BF49D        Zlib compressed data, best compression
          4007069       0x3D249D        Zlib compressed data, best compression
          4134045       0x3F149D        Zlib compressed data, best compression
          4224157       0x40749D        Zlib compressed data, best compression
          4252829       0x40E49D        Zlib compressed data, best compression
          4506525       0x44C39D        UEFI PI Firmware Volume, volume size: 5439488, header size: 0, revision: 0, EFI Firmware File System v2, GUID: 8C8CE578-8A3D-4F1C-3599-896185C32DD3
          4651056       0x46F830        gzip compressed data, last modified: 1971-05-24 23:51:22 (bogus date)
          5435225       0x52EF59        Microsoft executable, portable (PE)
          5440425       0x5303A9        Microsoft executable, portable (PE)
          5770057       0x580B49        Microsoft executable, portable (PE)
          5780193       0x5832E1        Microsoft executable, portable (PE)
          6925239       0x69ABB7        Copyright string: "Copyright (C) %04x American Megatrends, Inc."
          8621793       0x838EE1        Microsoft executable, portable (PE)
          9946013       0x97C39D        UEFI PI Firmware Volume, volume size: 1310720, header size: 0, revision: 0, EFI Firmware File System v2, GUID: 8C8CE578-8A3D-4F1C-3599-896185C32DD3
          9946137       0x97C419        Microsoft executable, portable (PE)
          9956005       0x97EAA5        Microsoft executable, portable (PE)
          9957877       0x97F1F5        Microsoft executable, portable (PE)
          9961909       0x9801B5        Microsoft executable, portable (PE)
          9966449       0x981371        Microsoft executable, portable (PE)
          9969033       0x981D89        Microsoft executable, portable (PE)
          10028205      0x9904AD        Microsoft executable, portable (PE)
          10029405      0x99095D        Microsoft executable, portable (PE)
          10035233      0x992021        Microsoft executable, portable (PE)
          10041173      0x993755        Microsoft executable, portable (PE)
          10044325      0x9943A5        Microsoft executable, portable (PE)
          10045425      0x9947F1        Microsoft executable, portable (PE)
          10047753      0x995109        Microsoft executable, portable (PE)
          10062261      0x9989B5        Microsoft executable, portable (PE)
          10064429      0x99922D        Microsoft executable, portable (PE)
          10067785      0x999F49        Microsoft executable, portable (PE)
          10072345      0x99B119        Microsoft executable, portable (PE)
          10077905      0x99C6D1        Microsoft executable, portable (PE)
          10085165      0x99E32D        Microsoft executable, portable (PE)
          10096745      0x9A1069        Microsoft executable, portable (PE)
          10100905      0x9A20A9        Microsoft executable, portable (PE)
          10102953      0x9A28A9        Microsoft executable, portable (PE)
          10104169      0x9A2D69        Microsoft executable, portable (PE)
          10939297      0xA6EBA1        Microsoft executable, portable (PE)
          10940109      0xA6EECD        Microsoft executable, portable (PE)
          10940889      0xA6F1D9        Microsoft executable, portable (PE)
          10941877      0xA6F5B5        Microsoft executable, portable (PE)
          10954577      0xA72751        Microsoft executable, portable (PE)
          10957121      0xA73141        Microsoft executable, portable (PE)
          10960889      0xA73FF9        Microsoft executable, portable (PE)
          10965161      0xA750A9        Microsoft executable, portable (PE)
          10987101      0xA7A65D        Microsoft executable, portable (PE)
          11010605      0xA8022D        SHA256 hash constants, little endian
          11017145      0xA81BB9        Microsoft executable, portable (PE)
          11019817      0xA82629        SHA256 hash constants, little endian
          11024601      0xA838D9        Microsoft executable, portable (PE)
          11025649      0xA83CF1        Microsoft executable, portable (PE)
          11027445      0xA843F5        Microsoft executable, portable (PE)
          11048325      0xA89585        SHA256 hash constants, little endian
          11066569      0xA8DCC9        Microsoft executable, portable (PE)
          11068273      0xA8E371        Microsoft executable, portable (PE)
          11069545      0xA8E869        Microsoft executable, portable (PE)
          11072177      0xA8F2B1        Microsoft executable, portable (PE)
          11073961      0xA8F9A9        Microsoft executable, portable (PE)
          11079141      0xA90DE5        Microsoft executable, portable (PE)
          11090057      0xA93889        Microsoft executable, portable (PE)
          11251673      0xABAFD9        Microsoft executable, portable (PE)
          

          Pour UWfirmforce je vais éviter de poster la sortie ici… elle fait 6 390 957 lignes.

  • # Donner le exe directement depuis le BIOS ?

    Posté par  . Évalué à 4 (+3/-0).

    Je comprend ton désarroi.

    Sur des machines HP, j'ai pu mettre à jour les images BIOS en allant dans le BIOS, puis en choisissant "flash bios image", et je lui donne le .exe qui est sur une clé USB. Cette combine fonctionne peut-être aussi sur ta carte MSI.

    • [^] # Re: Donner le exe directement depuis le BIOS ?

      Posté par  . Évalué à 4 (+2/-0).

      Je me suis posé la même question<… j'ai presque envie de tenter la semaine prochaine pour la science et voir si ça fonctionne mais je voulais avoir une solution toute faite sous la main car je ne suis sur place que quelque heures.
      Je ne te caches pas que j'ai peur qu'il le prenne, que ça déconne et que je doive tout de même sortir la pince a griffe.
      Je pense que je vais tenter si j'ai le temps et que la puce est bien listée comme supportée par le programmateur car j'ai pas spécialement envie de repartir pour 2h de galère sur le sujet ^^.

      • [^] # Re: Donner le exe directement depuis le BIOS ?

        Posté par  . Évalué à 5 (+4/-0).

        Tu ne dis pas quelle châssis accueille la carte mère, mais clairement si tu n'as que quelques heures, le plus prudent est d'avoir un châssis de rechange avec toi, quitte à échanger les disques d'un serveur à l'autre pendant l'opération.

        Flasher un binaire plus ou moins random sur une puce en mode speed, c'est… pas prudent. [mais super tentant ;) ]

        Ptet que le support MSI peut te fournir le bin ?

        • [^] # Re: Donner le exe directement depuis le BIOS ?

          Posté par  . Évalué à 7 (+5/-0).

          Je vais sauvegarder l'efi d'origine avant pour ne pas trop me mettre dedans. Malheureusement je n'ai pas de chassis de rechange et il faut que je case le nettoyage, le remplacement des ventillos qui hurlent a la mort et surtout le transfert du raid logiciel sur disque dur standard actuel vers le NVMe et que j'arrive à faire booter le système.

          J'aurai aimé pouvoir contacter le support mais il faut un compte et quand j'ai essayé de le créer hier j'ai eu droit à une erreur 500 du serveur j'avais oublié ça dans ma liste des galères.

  • # Aucun lien, fils unique

    Posté par  . Évalué à 8 (+6/-0). Dernière modification le 02/05/21 à 18:21.

    Alors ça va pas t'aider, mais la dernière carte mère que j'ai monté (marque ASRock, pub gratuite), je vais immédiatement dans l'UEFI lors du premier boot. Je me balade dans les différents menus, je fais 3 réglages comsétiques, et je vois l'option "mettre à jour UEFI".

    Sans trop savoir pourquoi j'y vais, alors que j'avais rien préparé de spécial… Et là j'ai le choix entre mettre à jour depuis une clé USB et mettre à jour directement depuis Internet.

    Quoi ????

    Je branche un câble réseau, je clique… 3mn plus tard je reboote avec le nouveau UEFI.

    Moi je dis : la classe.

    En théorie, la théorie et la pratique c'est pareil. En pratique c'est pas vrai.

    • [^] # Re: Aucun lien, fils unique

      Posté par  . Évalué à 3 (+1/-0). Dernière modification le 02/05/21 à 18:26.

      Oui c'est beau le progrès :) La CM est de 2014 donc pas d'option de ce type malheureusement.

  • # Blague à part

    Posté par  . Évalué à 2 (+1/-0).

    une blague est cachée dans cette phrase, sauras-tu la retrouver ?
    

    Non, je n'ai pas su. Je suis nul à ce genre de jeu, par contre je suis curieux.

    • [^] # Re: Blague à part

      Posté par  . Évalué à 7 (+5/-0). Dernière modification le 02/05/21 à 21:24.

      Tout est dans le mot clé rapidement. Il y a le temps d'installation et le temps d'installation une fois le système démarré.
      Le premier est tout à fait correct et comparable à nos habitudes sous Linux. Puis il y a le second avec les séries de questions sur la vie privée et des roues qui tournent avec des "veuillez patienter", "plus que quelques instant" (super longs) en dessous.
      Ça a été très long sur une machine moderne (3900x, 32Go DDR4, disques NVMe) alors sur un vieux vélo type APU AMD bi-coeur FM2+ équipé d'un ancien disque dur de récupération pour l'opération je n'ose même pas imaginer le temps que cela va prendre.

    • [^] # Re: Blague à part

      Posté par  . Évalué à 2 (+1/-0).

      moi j'ai trouvé ceci : « Windows … rapidement » (il y a donc eu du progrès depuis ?)

  • # Flashrom

    Posté par  . Évalué à -3 (+1/-0).

    Et en glissant l'exécutable dans flashrom ?

    https://www.flashrom.org/Flashrom

    • [^] # Re: Flashrom

      Posté par  . Évalué à 3 (+1/-0).

      Flashrom étant pas vraiment fait pour ça, il risque de flasher le contenu du .exe directement.

  • # Es-tu sûr ?

    Posté par  (site Web personnel) . Évalué à 1 (+1/-1).

    J'ai une carte mère MSI, une récente, et les mises à jour de BIOS/UEFI sont aussi fournies sous forme de fichier .zip, que tu mets sur n'importe quelle clé ou disque dur USB, tu rebootes et vas dans l'interface de l'UEFI, tu passes en mode "update" et il trouve le fichier tout seul.

    J'aurais cru qu'ils fournissent les upgrades de la sorte pour toutes leurs cartes mères, je suis étonné du contraire. Il y a aussi un upgradeur en .exe, pour Windows, mais la variante .zip marche très bien aussi (et pas besoin de Windows).

    Pour info, j'ai enregistré ma carte mère dans leur site de support, et depuis ce dernier, une fois connecté, les updates sont disponibles sous forme de fichier .zip.

    • [^] # Re: Es-tu sûr ?

      Posté par  . Évalué à 3 (+1/-0). Dernière modification le 04/05/21 à 02:59.

      Le seul fichier zip disponible sur leur site contient uniquement un .exe.

      Je vais même tenter de flasher le .exe (voir commentaire plus haut), le problème c'est que ce n'est documenté nulle part, la seule info bien visible dit :

      Note
      Please run this file in windows and then BIOS will be auto updated.
      

      https://www.msi.com/Motherboard/support/A88X-G43

      Avec un .exe le lancer sous windows ca me semble intuitif, le passer à un utilitaire de flash beaucoup moins.

  • # Fichier à flasher

    Posté par  . Évalué à -4 (+1/-1).

    Sur le site MSI, il y a un fichier .zip contenant un fichier .txt, un fichier .exe, et un fichier nommé E7793AMS.350.
    C'est ce dernier fichier qui est à flasher. Il n'a pas d'extension.

    C'est vrai que le flashage de carte mère avec MSI, ce n'est pas la panacée.
    Je préférai utiliser l'utilitaire AMI que leur propre utilitaire dédié sous Windows.

    Bon flashage.

    • [^] # Re: Fichier à flasher

      Posté par  . Évalué à 4 (+2/-0).

      Oui c'est une ancienne version il me faut la 3.C pas la 3.5, ce qui m'intéresse c'est "- Improved PCIE M.2 compatibility."
      La 3.5, c'est même la version que j'ai utilisé pour savoir quoi chercher et comparer.

      • [^] # Re: Fichier à flasher

        Posté par  . Évalué à -4 (+0/-0).

        Et en récupérant l'utilitaire AFUDE238 présent dans l'archive 7793v35.zip, puis en suivant la procédure indiquée par MSI ici : https://storage-asset.msi.com/files/pdf/How_to_flash_the_BIOS.pdf (deuxième partie)
        en vérifiant qu'il reconnait le fichier E7793V3C.exe

        Sinon, je m'adresserais directement au support de MSI pour savoir s'ils peuvent me fournir le fichier E7793AMS.3C0 à flasher.

        • [^] # Re: Fichier à flasher

          Posté par  . Évalué à -4 (+0/-0).

          En suivant la deuxième méthode de flashage, c'est à dire "Flash AMI UEFI BIOS by USB Disk Under DOS Mode", et après avoir extrait le fichier 7793v3C.zip à la racine de la clé USB bootable, la commande à exécuter devrait être la suivante :

          C:\7793v3C\E7793V3C

          À essayer.

          • [^] # Re: Fichier à flasher

            Posté par  . Évalué à 2 (+0/-0). Dernière modification le 04/05/21 à 18:01.

            La procédure en question prend une image de la rom, pas un exécutable windows. Tout le problème est que ce fichier n'existe pas dans l'archive.
            Pour l'utilitaire de flashage DOS je ne vois pas trop l'intérêt quand il y en a un intégré à l'EFI.

            • [^] # Re: Fichier à flasher

              Posté par  . Évalué à -4 (+0/-0).

              L'intérêt du flashage DOS, c'est justement de prendre en considération un exécutable Windows, quand le fichier du bios en question n'est pas extractible, mais présent dans l'exécutable lui-même.
              C'est une alternative sérieuse quand M-Flash ne peut pas avoir accès au fichier du BIOS, semble-t-il.
              Sinon, pourquoi donc MSI ne fournirait pas ce fichier binaire ?

              • [^] # Re: Fichier à flasher

                Posté par  . Évalué à 3 (+1/-0). Dernière modification le 04/05/21 à 20:27.

                Il faut faire attention avec ce genre de choses, tu spécules sur le fait que l'utilitaire DOS fournit avec une version précédente est capable de prendre en charge un .exe qui contient un utilitaire de flashage pour windows embarquant l'EFI d'une version suivante. Ce n'est pas ce qu'indique la documentation en lien où l'exemple donné prend une image de la ROM.

                Cette carte mère n'a pas de dual BIOS/EFI, donc si ça se passe mal, c'est à dire qu'un des utilitaires prend l'exe et écrit son contenu sans se poser de questions tu te retrouves avec une carte mère qui ne démarre plus.

                Je peux me permettre de prendre le risque de tenter de passer l'exe dans M-Flash car je suis équipé pour récupérer la situation si cela venait à mal tourner et encore je ne le ferai qu'après avoir vérifié que mon programmateur reconnait bien le modèle de la puce qui équipe la carte mère.

                Il ne faut pas jouer avec ce genre de choses et se dire que ça va passer au risque de se retrouver avec du matériel hors service.

                • [^] # Re: Fichier à flasher

                  Posté par  . Évalué à -3 (+1/-0).

                  Je suis entièrement d'accord avec toi.

                  Je contacterais le support MSI avant de procéder ainsi.

                  En tout cas merci, cela m'a permis de me mettre à niveau pour le flashage de carte MSI.

                  Si je me suis permis d'essayer de t'aiguiller, c'est que j'ai toujours flashé mes appareils, graveur DVD, cartes mère, routeur, composants PC et téléphone portable avec succès, de préférence à l'aide d'un onduleur.

                  On est jamais trop prudent.

                  Bonne continuation.

  • # Solution alternative

    Posté par  . Évalué à 2 (+2/-0).

    J'ai eu le même problème avec un portable Acer. Ça fait des années que je repousse le problème mais la lecture de ton journal m'a poussé à prendre le temps de faire la mise à jour. J'ai trouvé une solution utilisant une clé USB sous FreeDOS sur https://wiki.archlinux.org/title/Flashing_BIOS_from_Linux.
    Pour résumer les étapes, il faut:
    - Télécharger une image FreeDOS (c'est très léger)
    - La copier sur la clé USB (là aussi, c'est très rapide)
    - Copier le fichier sur la clé USB
    - Booter sur la clé
    - Choisir la langue
    - Lancer le .exe

    Ça a fonctionné parfaitement dans mon cas. C'est toujours trop d'efforts pour une simple mise à jour du BIOS, même sur un appareil un peu vieux, mais ça me semble plus simple et plus rapide que d'extraire le fichier rom.

    • [^] # Re: Solution alternative

      Posté par  . Évalué à 2 (+0/-0).

      Ça peut être une solution dans pas mal de cas oui, là malheureusement il s'agit d'un exécutable pour windows.

      • [^] # Re: Solution alternative

        Posté par  . Évalué à 1 (+0/-0).

        Peut-être qu'au lieu de se fader une install windows, un reactos sur un disque externe suffirait ?

        • [^] # Re: Solution alternative

          Posté par  . Évalué à 7 (+5/-0).

          Une fois que tu as la méthode, à savoir une simple ligne de commande pour extraire la rom du .exe, c'est hyper simple par rapport à une installation ou même un boot sur un windows pe.
          Spoiler alert tout à fonctionné à merveille avec le fichier extrait, les détails dans un prochain journal.

Envoyer un commentaire

Suivre le flux des commentaires

Note : les commentaires appartiennent à ceux qui les ont postés. Nous n’en sommes pas responsables.