Quels logiciels ou pilotes dois-je éteindre pour utiliser `flashrom`?

Je me suis soutenu dans un coin avec un nouveau système que je construis. Le BIOS actuel est complètement cassé (il se verrouille après avoir dessiné la moitié de l'écran si vous entrez les parameters pendant le POST, verrouille si un dispositif EUFI est présent dans le système, etc.). Je suis capable de démarrer dans un environnement Linux semi-fonctionnel en utilisant un cdrom GRUB.

En recherchant des moyens alternatifs pour éclairer ce bios , une option que j'ai trouvée était le flashrom utilitaire basé sur Linux.

Je suis capable d'exécuter l'utilitaire flashrom et il trouve le chipset et l'espace memory que j'ai besoin d'écrire. Cependant quand j'essaye de lire ou écrire ( -r / -w args), je suis accueilli avec un message disant que l'utilitaire est incapable de lire de la puce

Trouvé chipset "AMD SB7x0 / SB8x9 / SB9x0". Activation de l'écriture flash … OK.
Trouvé Winbod puce flash "W25Q64.V (8192 kB, SPI) à l'adresse physique 0xff800000.
Lecture de vieux contenus de puces flash … La corruption du pointeur FIFIO! Le pointeur est 0, voulu 3
Quelque chose d'autre est l'access à la puce chair et provoque une corruption random.
Veuillez arrêter toutes les applications et pilotes et IPMI qui accèdent à la puce flash.
ÉCHOUÉ.

J'ai été incapable de localiser quel logiciel, pilotes, modules de kernel ou autre devilry a l'appareil ouvert. De quoi ai-je besoin pour fermer ou comment puis-je find le coupable?

Voici quelques choses à essayer. Tout d'abord, j'ai trouvé cette page hors du site web flashrom: Random Notes . Pourrait être quelque chose qui pourrait aider.

Aussi au lieu d'utiliser flashrom peut-être que vous pourriez utiliser un de ces BIOS alternatifs »à la place?

  • Hack le BIOS de votre ordinateur pour déverrouiller les parameters cachés, overclocking et plus encore
  • Coreboot

Le 2ème lien est le nouveau nom du projet LinuxBIOS.

extrait

coreboot est un projet de logiciel libre visant à replace le BIOS (firmware) propriétaire de la plupart des ordinateurs. coreboot effectue un peu d'initialisation matérielle, puis exécute une logique de démarrage supplémentaire appelée charge utile.

Avec la séparation de l'initialisation matérielle et de la logique d'amorçage, coreboot peut évoluer à partir d'applications spécialisées fonctionnant directement à partir du micrologiciel, exécuter des systèmes d'exploitation en flash, charger des chargeurs d'amorçage personnalisés ou implémenter des standards de micrologiciel. Cela permet aux systèmes d'inclure uniquement les fonctionnalités nécessaires dans l'application cible, ce qui réduit la quantité de code et d'espace flash requirejs.

coreboot supporte actuellement plus de 230 maps mères différentes. Consultez la page Assistance pour voir si votre système est pris en charge.

Peut-être auriez-vous plus de chance avec une de ces alternatives?

Découvertes supplémentaires

Je suis tombé sur ce sujet du forum de Phoronix intitulé: Thread: Bios ou UEFI update using Linux . Dans ce fil de discussion, la question est posée et répond:

Q: Quelle est la situation concernant les possibilités de mise à jour du Bios ou de l'UEFI en utilisant uniquement Linux sur la nouvelle carte mère? C'est possible? Est-ce une procédure facile?

A quoi la réponse était:

A: flashrom de coreboot, et non, souvent, ne fonctionne pas sur les nouveaux forums.

Ce commentaire était de 2011, donc les choses ont peut-être changé.

Les references

  • Mise à jour du BIOS – Gentoo Wiki
  • HOWTO: BIOS Flash, la façon d'Ubuntu
  • BIOS clignotant depuis Linux – Wiki ArchLinux

Même avec les nombreuses grandes suggestions de slm et d'autres, je n'ai jamais pu flasher ce BIOS depuis le système. À la fin j'ai enlevé la puce et l'ai flashé extérieurement en utilisant flashrom sur un Raspberry Pi avec une pièce jointe EEPROM maison . Après avoir remis le système en état de fonctionnement complet, je peux maintenant le faire clignoter en interne en utilisant la même procédure qui échouait par ma question initiale.

En d'autres termes, le problème était ce que le message d'erreur signalait. Le problème était le BIOS étant tellement embêté que le système ne fonctionnait pas selon les spécifications en dépit d'avoir démarré linux.

C'était (probablement) un bug dans flashrom ou plutôt un changement imprévu par AMD. Devrait fonctionner avec flashrom 0.9.8 et au-dessus IIRC. Demander le canal de support approprié pour flashrom (IRC ou list de diffusion) aurait répondu de cette façon plus rapidement que dans 3 ans;)