en to fr translation catalogue (80 entries)

note: type: Content of: <sect1><title>
en: About Firmware
fr: À propos des Firmwares

note: type: Content of: <sect1><para>
en: On some recent PCs it can be necessary, or desirable, to load firmware to make them work at their best. There is a directory, <filename class="directory">/lib/firmware</filename>, where the kernel or kernel drivers look for firmware images.
fr: Sur certains PCs actuels il peut être nécessaire, ou désirable, de charger des firmwares pour faire travailler les PC au maximum de leurs possibilités. Le noyau contient un répertoire, <filename class="directory">/lib/firmware</filename>, ou le noyau ou les pilotes du noyau cherche des images de firmware.

note: type: Content of: <sect1><para>
en: Currently, most firmware can be found at a <userinput>git</userinput> repository which can be viewed in the browser with the URL <ulink url="&linux-firmware-git;/plain"/>.  For convenience, the LFS Project has created a mirror, updated daily, where these firmware files can be accessed via <userinput>wget</userinput> or a web browser at <ulink url="&sources-anduin-http;/linux-firmware/"/>.
fr: Actuellement, on peut trouver la plupart des firmwares sur un dépôt <userinput>git</userinput> qui peut être visualisé dans le navigateur avec l'URL <ulink url="&linux-firmware-git;/plain"/>. Par commodité, le projet LFS a créé un miroir, mis à jour quotidiennement, où on peut accéder à ces fichiers de firmwares via <userinput>wget</userinput> ou un navigateur web sur <ulink url="&sources-anduin-http;/linux-firmware/"/>.

note: type: Content of: <sect1><para>
en: To get the firmware, either point a browser to one of the above repositories and then download the item(s) which you need.  If you want all these firmware files (for example you are distributing the system onto multiple hardware systems), install <xref linkend="git"/> and clone <ulink url='&linux-firmware-git;'/>, or open this URL in a browser and download the latest snapshot listed in the <literal>Tag</literal> table.
fr: Pour récupérer le micrologiciel, pointez votre navigateur vers l'un des dépôts ci-dessus et télécharger les éléments souhaités. Si vous voulez tous les fichiers de micrologiciel (par exemple si vous distribuez le système sur plusieurs systèmes matériels), installez <xref linkend="git"/> et clonez <ulink url='&linux-firmware-git;'/> ou ouvrez cette URL dans un navigateur et télécharger la dernière image listée dans l'onglet <literal>Tag</literal>.

note: type: Content of: <sect1><para>
en: For some other firmware, particularly for Intel microcode and certain wifi devices, the needed firmware is not available in the above repository.  Some of this will be addressed below, but a search of the Internet for needed firmware is sometimes necessary.
fr: Pour certains autres firmwares, particulièrement pour les micro-codes d'Intel, et certains périphériques wi-fi, le firmware recherché n'est pas disponible dans le dépôt précédent. Certains d'entre eux seront ajouté ensuite, mais il est parfois nécessaire de faire une recherche sur internet pour les firmwares souhaités.

note: type: Content of: <sect1><para>
en: Firmware files are conventionally referred to as blobs because you cannot determine what they will do. Note that firmware is distributed under various different licenses which do not permit disassembly or reverse-engineering.
fr: Les fichiers firmwares sont par convention référencés comme des blobs car vous ne pouvez pas déterminer ce qu'ils font. Notez que ces firmwares sont distribués sous des licences différentes et variées qui ne permettent pas le désassemblage ou la retro ingénierie.

note: type: Content of: <sect1><para>
en: Firmware for PCs falls into four categories:
fr: Les firmwares pour PC tombent dans 4 catégories&nbsp;:

note: type: Content of: <sect1><itemizedlist><listitem><para>
en: Updates to the CPU to work around errata, usually referred to as microcode.
fr: Les firmwares mettant à jour le processeur pour travailler correctement, couramment appelé micro-code.

note: type: Content of: <sect1><itemizedlist><listitem><para>
en: Firmware for video controllers. On x86 machines this is required for ATI devices (Radeon and AMDGPU chips) and may be useful for Intel (Skylake and later) and Nvidia (Kepler and later) GPUs.
fr: Microprogramme pour les contrôleurs vidéo. Sur les machines x86 ils sont requis pour les périphériques ATI (puces Radeon et AMDGPU) et peuvent être utiles pour les GPU Intel (Skylake et ultérieur) et Nvidia (Kepler et ultérieurs).

note: type: Content of: <sect1><itemizedlist><listitem><para>
en: ATI Radeon and AMDGPU devices all require firmware to be able to use KMS (kernel modesetting - the preferred option) as well as for Xorg. For old radeon chips (before the R600), the firmware is still in the kernel source.
fr: Les périphériques ATI Radeom et AMDGPU demandent des microprogrammes pour pouvoir utiliser le KMS (kernel modesetting &mdash; l'option préférée) ainsi que Xorg. Pour les anciennes puces radeon (avant R600), le microprogramme est toujours dans les sources du noyau.

note: type: Content of: <sect1><itemizedlist><listitem><para>
en: Intel integrated GPUs from Skylake onwards can use firmware for GuC (the Graphics microcontroller), and also for the HuC (HEVC/H265 microcontroller which offloads to the GPU) and the DMC (Display Microcontroller) to provide additional low-power states. The GuC and HuC have had a chequered history in the kernel and updated firmware may be disabled by default, depending on your kernel version. Further details may be found at <ulink url="https://01.org/linuxgraphics/downloads/firmware/">01.org</ulink> and <ulink url="https://wiki.archlinux.org/index.php/intel_graphics">Arch linux</ulink>.
fr: Les GPU intégrés d'Intel de Skylake et supérieur peuvent utiliser le microprogramme pour GuC (the microcontrôleur graphique), et le le HuC (le microcontrôleur HEVC/H265 qui décharge vers le GPU) et DMC (microcontrôleur pour l'affichage) pour fournir des états à basse consommation supplémentaires. Le GuC et HuC ont un historique mouvementé dans le noyau et les microprogrammes à jour peuvent être désactivés par défaut, en fonction de la version de votre noyau. Des détails supplémentaires se trouvent sur <ulink url="https://01.org/linuxgraphics/downloads/firmware/">01.org</ulink> et <ulink url="https://wiki.archlinux.org/index.php/intel_graphics">Arch linux</ulink>.

note: type: Content of: <sect1><itemizedlist><listitem><para>
en: Nvidia GPUs from Kepler onwards require signed firmware, otherwise the nouveau driver is unable to provide hardware acceleration. Nvidia has now released firmware up to Ampere (GeForce30 series) to linux-firmware.  Note that faster clocks than the default are not enabled by the released firmware.
fr: Les GPU Nvidia à partir de Kepler ont besoin d'un microprogramme signé, sinon le pilote nouveau est incapable de fournir l'accélération matérielle. Nvidia a maintenant fourni des microprogrammes jusqu'à Ampere (la séie GeForce30) dans linux-firmware. Remarquez que les horloges plus rapides que par défaut ne sont pas activées dans le microprogramme publié.

note: type: Content of: <sect1><itemizedlist><listitem><para>
en: Firmware updates for wired network ports. Most of them work even without the updates, but they will probably work better with the updated firmware. For some modern laptops, firmware for both wired ethernet (e.g. rtl_nic) and also for bluetooth devices (e.g. qca)  is <emphasis>required</emphasis> before the wired network can be used.
fr: Mises à jour des firmware pour les interfaces réseaux filaires. La plupart fonctionnent sans mise à jour, mais elles fonctionneront sans doute mieux avec un firmware à jour. Pour certains ordinateurs portables récentes, les firmware pour le port ethernet (p. ex. rtl_nic) mais aussi pour les périphériques bluetooth (p. ex. qca) sont <emphasis>requis</emphasis> avant de pouvoir utiliser les réseau filaire.

note: type: Content of: <sect1><itemizedlist><listitem><para>
en: Firmware for other devices, such as wireless NICs. These devices are not required for the PC to boot, but need the firmware before these devices can be used.
fr: Les Firmwares pour les autres périphériques, comme le réseau sans fil. Ces périphériques ne sont pas requis pour que le PC démarre, mais demande un firmware avant que ces périphériques puissent être utilisés.

note: type: Content of: <sect1><note><para>
en: Although not needed to load a firmware blob, the following tools may be useful for determining, obtaining, or preparing the needed firmware in order to load it into the system: <xref linkend="cpio"/>, <xref linkend="git"/>, <xref linkend="pciutils"/>, and <xref linkend="wget"/>
fr: Bien qu’ils soient inutiles pour charger un firmware fermé (blob), les outils suivants peuvent être utiles pour déterminer, obtenir, ou préparer le firmware à utiliser afin de le charger dans le système&nbsp;: <xref linkend="cpio"/>, <xref linkend="git"/>, <xref linkend="pciutils"/> et <xref linkend="wget"/>

note: type: Content of: <sect1><sect2><title>
en: Microcode updates for CPUs
fr: Mise à jour de micro-codes pour les CPU

note: type: Content of: <sect1><sect2><para>
en: In general, microcode can be loaded by the BIOS or UEFI, and it might be updated by upgrading to a newer version of those. On linux, you can also load the microcode from the kernel if you are using an AMD family 10h or later processor (first introduced late 2007), or an Intel processor from 1998 and later (Pentium4, Core, etc), if updated microcode has been released. These updates only last until the machine is powered off, so they need to be applied on every boot.
fr: En général, le micro-code peut être chargé par le BIOS ou l'UEFI, et il peut être mis à jour en passant à une nouvelle version de celui-ci. Sur Linux, vous pouvez également charger le micro-code depuis le noyau si vous utilisez au moins un AMD de la famille 10h ou un plus récent (introduit après fin 2007), ou un processeur Intel de 1998 et plus (Pentium4, Core, etc), si un micro-code mis à jour a été publié. Ces mises à jour sont actives seulement jusqu'à ce que la machine soit éteinte, il est donc nécessaire de les appliquer à chaque démarrage.

note: type: Content of: <sect1><sect2><para>
en: Intel provide updates of their microcode for Skylake and later processors as new vulnerabilities come to light, and have in the past provided updates for processors from SandyBridge onwards, although those are no-longer supported for new fixes. New versions of AMD firmware are rare and usually only apply to a few models, although motherboard manufacturers get AGESA (AMD Generic Encapsulated Software Architecture) updates to change BIOS values, e.g. to support more memory variants, new vulnerability fixes or newer CPUs.
fr: Intel fournit des mises à jour de leur microcode pour les versions Skylake et ultérieures de leurs processeurs quand de nouvelles vulnérabilités sont découvertes, et l'ont fait pour les processeurs SandyBridge et ultérieurs par le passé, bien qu'ils ne soient plus pris en charge pour les nouvelles corrections. Les nouvelles versions de microprogramme d'AMD sont rares et ne s'appliquent qu'à quelques modèles, bien que les fabricants de carte mères obtiennent des mises à jour AGESA (AMD Generic Encapsulated Software Architecture) pour changer les valeurs du BIOS, par exemple pour prendre en charge plus de variantes de mémoire, de nouvelles vulnérabilités ou de nouveaux CPU.

note: type: Content of: <sect1><sect2><para>
en: There were two ways of loading the microcode, described as 'early' and 'late'. Early loading happens before userspace has been started, late loading happens after userspace has started. However, late loading is known to be problematic and not supported anymore (see the kernel commit <ulink url="https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=d23d33e"> x86/microcode: Taint and warn on late loading</ulink>.)  Indeed, early loading is needed to work around one particular erratum in early Intel Haswell processors which had TSX enabled.  (See <ulink url= "https://www.anandtech.com/show/8376/intel-disables-tsx-instructions-erratum-found-in-haswell-haswelleep-broadwelly/"> Intel Disables TSX Instructions: Erratum Found in Haswell, Haswell-E/EP, Broadwell-Y</ulink>.)  Without this update glibc can do the wrong thing in uncommon situations.
fr: Il y avait deux façons de charger le microcode, décrites comme «&nbsp;au plus tôt&nbsp;» et «&nbsp;au plus tard&nbsp;». Le chargement «&nbsp;au plus tôt&nbsp;» arrive avant que l'espace utilisateur ne démarre, le chargement «&nbsp;au plus tard&nbsp;» arrive quand l'espace utilisateur est démarré. Cependant, le chargement au plus tard est problématique et n'est plus pris en charge (voir l commit du noyau noté <ulink url="https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=d23d33e">x86/microcode: Taint and warn on late loading</ulink>). En effet, il est nécessaire de contourner une erreur particulière dans les premiers processeurs Intel Haswell qui ont le TSX d'activé. (Voir <ulink url= "https://www.anandtech.com/show/8376/intel-disables-tsx-instructions-erratum-found-in-haswell-haswelleep-broadwelly/">Intel Disables TSX Instructions: Erratum Found in Haswell, Haswell-E/EP, Broadwell-Y</ulink>). Sans cette mise à jour glibc peut produire des erreurs dans des situations particulières.

note: type: Content of: <sect1><sect2><para>
en: In previous versions of this book, late loading of microcode to see if it gets applied was recommended, followed by using an initrd to force early loading. But now that the contents of the Intel microcode tarball is documented, and AMD microcode can be read by a Python script to determine which machines it covers, there is no real reason to use late loading.
fr: Dans les versions précédentes de ce livre, nous recommandions le chargement au plus tard pour voir s'il était appliqué, suivi par l'utilisation d'un initrd pour forcer le chargement au plus tôt. Mais maintenant que le contenu de l'archive de microcode Intel est documenté, et que le microcode AMD peut être lu par un script Python pour déterminer les machines qu'il couvre, il n'y a plus de raison d'utiliser le chargement au plus tard.

note: type: Content of: <sect1><sect2><para>
en: It might be still possible to manually force late loading of microcode.  But it may cause kernel malfunction and you should take the risk yourself.  You will need to reconfigure your kernel for late loading, but early loading is always supported by Linux kernel version 6.6 or later on a x86 (no matter 32-bit or 64-bit) system.  The instructions here will show you how to create an initrd for early loading. It is also possible to build the same microcode bin file into the kernel, which allows early loading but requires the kernel to be recompiled to update the microcode.
fr: Il reste peut-être possible de manuellement forcer le chargement «&nbsp;au plus tard&nbsp;» du microcode, mais cela pourrait occasionner une malfonction du noyau et vous devez être conscient·e du risque. Vous devrez reconfigurer votre noyau pour le chargement «&nbsp;au plus tard&nbsp;», mais le chargement «&nbsp;au plus tôt&nbsp;» est toujours pris en charge par le noyau Linux version 6.6 et supérieur pour les systèmes x86 (peu importe qu'ils soient en 32 ou en 64 bits). Les instructions ici montrent comment créer un initrd pour un chargement «&nbsp;au plus tôt&nbsp;». Il est aussi possible d'intégrer le même fichier binaire de microcode dans le noyau, ce qui permet le chargement au plus tôt mais nécessite de recompiler le noyau pour mettre à jour le microcode.

note: type: Content of: <sect1><sect2><para>
en: To confirm what processor(s) you have (if more than one, they will be identical) look in /proc/cpuinfo. Determine the decimal values of the cpu family, model and stepping by running the following command (it will also report the current microcode version):
fr: Pour déterminer l'identité de votre processeur (s'il y en a plus d'un, ils seront identiques) regardez dans /proc/cpuinfo. Déterminez les valeurs décimales de la famille du processeur, le modèle, et le pas en exécutant la commande suivante (elle rapportera aussi la version actuelle du micro-code)&nbsp;:

note: type: Content of: <sect1><sect2><para>
en: Convert the cpu family, model and stepping to pairs of hexadecimal digits, and remember the value of the <quote>microcode</quote> field.  You can now check if there is any microcode available.
fr: Convertissez la famille, le modèle et le pas du processeur en paires de nombre hexadécimaux et rappelez-vous la valeur du champ <quote>microcode</quote>. Vous pouvez maintenant vérifier si un microcode est disponible.

note: type: Content of: <sect1><sect2><para>
en: If you are creating an initrd to update firmware for different machines, as a distro would do, go down to 'Early loading of microcode' and cat all the Intel blobs to GenuineIntel.bin or cat all the AMD blobs to AuthenticAMD.bin. This creates a larger initrd - for all Intel machines in the 20200609 update the size was 3.0 MB compared to typically 24 KB for one machine.
fr: Si vous créez un initrd pour mettre à jour le microcode de différentes machines, comme le ferait une distro, regardez «&nbsp;Chargement du microcode au plus tôt&nbsp;» et concaténez tous les blobs Intel dans GenuineIntel.bin ou tous ceux de AMD dans AUthenticAMD.bin. Cela crée un initrd plus gros — pour toutes les machines Intel dans la mise à jour 20200609 la taille est de 3,0&nbsp;Mo par rapport à 24 Ko pour une seule machine.

note: type: Content of: <sect1><sect2><sect3><title>
en: Intel Microcode for the CPU
fr: Micro-code Intel pour le processeur

note: at one time, some skylakes had problems with a certain revision secure version of the microcode, for those machines which can boot it, type: Content of: <sect1><sect2><sect3><para>
en: The first step is to get the most recent version of the Intel microcode.  This must be done by navigating to <ulink url= 'https://github.com/intel/Intel-Linux-Processor-Microcode-Data-Files/releases/'/> and downloading the latest file there.  As of this writing the most secure version of the microcode is microcode-20231114.  Extract this file in the normal way, the microcode is in the <filename>intel-ucode </filename> directory, containing various blobs with names in the form XX-YY-ZZ. There are also various other files, and a releasenote.
fr: La première étape consiste à obtenir la version la plus récente du microcode d'Intel. Vous devez pour cela aller sur <ulink url= 'https://github.com/intel/Intel-Linux-Processor-Microcode-Data-Files/releases/'/> et télécharger le fichier le plus récent. Au moment de l'écriture de ces lignes la version la plus sure du micro-code est microcode-20231114. Extrayez ce fichier normalement, le microcode se trouve dans le répertoire <filename>intel-ucode</filename> qui contient les divers blobs avec des noms de la forme XX-YY-ZZ. Il y a aussi d'autres fichiers divers et un fichier releasenote.

note: type: Content of: <sect1><sect2><sect3><para>
en: In the past, intel did not provide any details of which blobs had changed versions, but now the releasenote details this.  You can compare the microcode version in <filename>/proc/cpuinfo</filename> with the version for your CPU model in the releasenote to know if there is an update.
fr: Par le passé, Intel ne fournissait aucun détails sur les blobs dont la version changeait, mais maintenant les releasenote en parlent. Vous pouvez comparer la version du microcode dans <filename>/proc/cpuinfo</filename> avec la version pour votre modèle de CPU dans les releasenote pour savoir s'il y a une mise à jour.

note: type: Content of: <sect1><sect2><sect3><para>
en: The recent firmware for older processors is provided to deal with vulnerabilities which have now been made public, and for some of these such as Microarchitectural Data Sampling (MDS) you might wish to increase the protection by disabling hyperthreading, or alternatively to disable the kernel's default mitigation because of its impact on compile times. Please read the online documentation at <ulink url= 'https://www.kernel.org/doc/html/latest/admin-guide/hw-vuln/index.html'/>.
fr: Le firmware récent pour les processeurs les plus anciens est fournit pour traiter des vulnérabilités qui ont été rendue publiques, et pour certains d'entre eux comme le <foreignphrase>Microarchitectural Data Sampling</foreignphrase> (MDS) vous pourriez vouloir augmenter la protection en désactivant l'hyperthreading ou en désactivant les contournements par défaut du noyau à cause de son impact sur les temps de compilation. Lisez bien la documentation en ligne sur <ulink url= 'https://www.kernel.org/doc/html/latest/admin-guide/hw-vuln/index.html'/>.

note: type: Content of: <sect1><sect2><sect3><para>
en: For an Tigerlake mobile (described as Intel(R) Core(TM) i5-11300H CPU) the relevant values are cpu family 6, model 140, stepping 1 so in this case the required identification is 06-8c-01. The releasenote says the latest microcode for it is versioned 0xb4.  If the value of the <quote>microcode</quote> field in <filename>/proc/cpuinfo</filename> is 0xb4 or greater, it indicates the microcode update is already applied by the BIOS.  Otherwise, proceed to <xref linkend='early-microcode'/>.
fr: Pour un mobile Tigerlake (décrit comme Intel(R) Core(TM) i5-1300H CPU) les valeurs utiles sont famille CPU 6, modèle 140, pas 1, donc dans ce cas l'identifiant requis est 06-8c-01. Les releasenote disent que le dernier microcode pour ce CPU est la version 0xb4. Si la valeur du champ <quote>microcode</quote> dans <filename>/proc/cpuinfo</filename> est 0xb4 ou plus, cela signifie que la mise à jour du microcode est déjà appliquée par le BIOS. Sinon, consultez <xref linkend='early-microcode'/>.

note: type: Content of: <sect1><sect2><sect3><title>
en: AMD Microcode for the CPU
fr: Micro-code AMD pour le processeur

note: type: Content of: <sect1><sect2><sect3><para>
en: Begin by downloading a container of firmware for your CPU family from <ulink url= '&sources-anduin-http;/linux-firmware/amd-ucode/'/>.  The family is always specified in hex. Families 10h to 14h (16 to 20)  are in microcode_amd.bin.  Families 15h, 16h, 17h (Zen, Zen+, Zen2) and 19h (Zen3) have their own containers, but very few machines are likely to get updated microcode. Instead, AMD provide an updated AGESA to the motherboard makers, who may provide an updated BIOS using this.  There is a Python3 script at <ulink url= 'https://github.com/AMDESE/amd_ucode_info/blob/master/amd_ucode_info.py'/>.  Download that script and run it against the bin file to check which processors have updates.
fr: Commencez par télécharger un paquet de firmware pour votre famille de CPU sur <ulink url= '&sources-anduin-http;/linux-firmware/amd-ucode/'/>. La famille est toujours spécifiée en hexadécimal. Les familles 10h à 14h (16 à 20) sont dans microcode_amd.bin. Les familles 15h, 16h, 17h (Zen, Zen+, Zen2) et 19h (Zen3) ont leur propre conteneur. Seules quelques machines sont susceptibles de recevoir une mise à jour du microcode. Au lieu de cela, AMD fournit un AGESA à jour aux constructeurs de cartes mères qui peuvent l'utiliser pour proposer une mise à jour du BIOS. Il y a un script Python3 sur <ulink url= 'https://github.com/AMDESE/amd_ucode_info/blob/master/amd_ucode_info.py'/>. Téléchargez ce script et lancez-le avec le fichier binaire pour vérifier si vos processeurs ont une mise à jour.

note: type: Content of: <sect1><sect2><sect3><para>
en: For the very old Athlon(tm) II X2 in these examples the values were cpu family 16, model 5, stepping 3 giving an identification of Family=0x10 Model=0x05 Stepping=0x03.  One line of the <command>amd_ucode_info.py</command> script output describes the microcode version for it:
fr: Pour le très vieil Athlon(tm) II X2 de ces exemples, les valeurs étaient famille CPU 16, modèle 5, pas 3, ce qui donne un identifiant Family=0x10 Model=0x05 Stepping=0x03. Une ligne de la sortie du script <command>amd_ucode_info.py</command> décrit la version du microcode pour ce CPU&nbsp;:

note: type: Content of: <sect1><sect2><sect3><title>
en: Early loading of microcode
fr: Chargement "tôt" du micro-code

note: type: Content of: <sect1><sect2><sect3><para>
en: If you have established that updated microcode is available for your system, it is time to prepare it for early loading. This requires an additional package, <xref linkend='cpio'/> and the creation of an initrd which will need to be added to grub.cfg.
fr: Si vous avez établi qu'un micro-code mis à jour est disponible pour votre système, il est temps de le préparer pour un chargement "tôt". Cela demande un paquet supplémentaire, <xref linkend='cpio'/> et la création d'un initrd qui devra être ajouté à grub.cfg.

note: type: Content of: <sect1><sect2><sect3><para>
en: It does not matter where you prepare the initrd, and once it is working you can apply the same initrd to later LFS systems or newer kernels on this same machine, at least until any newer microcode is released. Use the following commands:
fr: L'endroit ou vous préparez l'initrd n'est pas important, et une fois fonctionnel vous pouvez appliquer le même initrd aux versions futures de LFS ou aux nouveaux noyaux sur cette même machine, au moins jusqu'à ce qu'une nouvelle version du micro-code soit publiée. Utiliser la suite&nbsp;:

note: type: Content of: <sect1><sect2><sect3><para>
en: For an AMD machine, use the following command (replace &lt;MYCONTAINER&gt; with the name of the container for your CPU's family):
fr: Pour une machine AMD, utilisez la commande suivante (remplacez &lt;MYCONTAINER&gt; par le nom du paquet de votre famille de CPU)&nbsp;:

note: type: Content of: <sect1><sect2><sect3><para>
en: Or for an Intel machine copy the appropriate blob using this command:
fr: Ou pour une machine Intel copiez le blob approprié en utilisant cette commande&nbsp;:

note: type: Content of: <sect1><sect2><sect3><para>
en: Now prepare the initrd:
fr: Maintenant préparez l'initrd&nbsp;:

note: type: Content of: <sect1><sect2><sect3><para>
en: You now need to add a new entry to /boot/grub/grub.cfg and here you should add a new line after the linux line within the stanza.  If /boot is a separate mountpoint:
fr: Vous devrez également ajouter une nouvelle entrée à /boot/grub/grub.cfg et vous devrez ajouter une ligne après la ligne linux entre les apostrophes. Si /boot est dans une partition séparée&nbsp;:

note: type: Content of: <sect1><sect2><sect3><para>
en: or this if it is not:
fr: ou sinon&nbsp;:

note: type: Content of: <sect1><sect2><sect3><para>
en: If you are already booting with an initrd (see <xref linkend="initramfs"/>), you should run <command>mkinitramfs</command> again after putting the appropriate blob or container into <filename class="directory">/lib/firmware</filename>. More precisely, put an intel blob in a <filename class="directory">/lib/firmware/intel-ucode</filename> directory or an AMD container in a <filename class="directory">/lib/firmware/amd-ucode</filename> directory before running <command>mkinitramfs</command>.  Alternatively, you can have both initrd on the same line, such as <userinput>initrd /microcode.img /other-initrd.img</userinput> (adapt that as above if /boot is not a separate mountpoint).
fr: Si vous avez déjà démarré avec un initrd (voir <xref linkend="initramfs"/>) vous deviez de nouveau lancer <command>mkinitramfs</command> après avoir placé le blob ou le conteneur approprié dans <filename class="directory">/lib/firmware</filename>. Plus précisément, placez le blob Intel dans le répertoire <filename class="directory">/lib/firmware/intel-ucode</filename> ou le conteneur AMD dans <filename class="directory">/lib/firmware/amd-ucode</filename> avant d'exécuter <command>mkinitramfs</command>. Autrement, vous pouvez avoir les deux initrd sur la même ligne, comme dans <userinput>initrd /microcode.img /other-initrd.img</userinput> (adaptez comme ci-dessus si /boot n'est pas dans une partition séparée).

note: type: Content of: <sect1><sect2><sect3><para>
en: You can now reboot with the added initrd, and then use the following command to check that the early load worked:
fr: Vous pouvez maintenant redémarrer avec l'initrd supplémentaire, puis utiliser la même commande pour vérifier que le chargement «&nbsp;au plus tôt&nbsp;» a fonctionné.

note: type: Content of: <sect1><sect2><sect3><para>
en: If you updated to address vulnerabilities, you can look at the output of the <command>lscpu</command> command to see what is now reported.
fr: Si vous avez mis à jour pour corriger des vulnérabilités, vous pouvez regarder la sortie de la commande <command>lscpu</command> pour voir ce qu'il rapporte maintenant.

note: type: Content of: <sect1><sect2><sect3><para>
en: The places and times where early loading happens are very different in AMD and Intel machines. First, an example of an Intel (Tigerlake mobile) with early loading:
fr: Les endroits et les moments où le chargement au plus tôt se passent sont très différents entre les machines AMD et Intel. En premier, un exemple d'Intel (mobile Tigerlake) avec le chargement au plus tôt&nbsp;:

note: type: Content of: <sect1><sect2><sect3><para>
en: A historic AMD example:
fr: Un exemple historique pour AMD&nbsp;:

note: type: Content of: <sect1><sect2><title>
en: Firmware for Video Cards
fr: Firmware pour les cartes vidéo

note: type: Content of: <sect1><sect2><sect3><title>
en: Firmware for ATI video chips (R600 and later)
fr: Firmware pour les puces vidéo ATI (R600 et plus)

note: type: Content of: <sect1><sect2><sect3><para>
en: These instructions do NOT apply to old radeons before the R600 family. For those, the firmware is in the kernel's <filename class='directory'>/lib/firmware/</filename> directory. Nor do they apply if you intend to avoid a graphical setup such as Xorg and are content to use the default 80x25 display rather than a framebuffer.
fr: Ces instructions NE s'appliquent PAS aux anciennes radeons avant la famille R600. Pour elles, le firmware est dans le répertoire du noyau <filename class='directory'>/lib/firmware/</filename>. Appliquez-les seulement si vous prévoyez d'éviter une configuration graphique tels que Xorg et que vous voulez vous contenter d'utiliser l'affichage 80x25 par défaut plutôt qu'un framebuffer.

note: type: Content of: <sect1><sect2><sect3><para>
en: Early radeon devices only needed a single 2K blob of firmware. Recent devices need several different blobs, and some of them are much bigger.  The total size of the radeon firmware directory is over 500K &mdash; on a large modern system you can probably spare the space, but it is still redundant to install all the unused files each time you build a system.
fr: Les périphériques radeon plus anciens demandaient seulement un simple blob de 2&nbsp;Ko. Les périphériques récents ont besoin de plusieurs blobs différents, et certains d'entre eux sont bien plus gros. La taille totale du répertoire des firmwares radeon est de plus de 500&nbsp;Ko — sur un gros système moderne vous pouvez probablement utiliser cet espace, mais cela reste redondant d'installer tous les fichiers inutiles chaque fois que vous construisez un système.

note: type: Content of: <sect1><sect2><sect3><para>
en: A better approach is to install <xref linkend='pciutils'/> and then use <userinput>lspci</userinput> to identify which VGA controller is installed.
fr: Une meilleure approche est d'installer<xref linkend='pciutils'/> et ensuite utiliser <userinput>lspci</userinput> pour identifier quel controleur VGA est installé.

note: type: Content of: <sect1><sect2><sect3><para>
en: With that information, check the RadeonFeature page of the Xorg wiki for <ulink url="https://wiki.x.org/wiki/RadeonFeature/#index5h2">Decoder ring for engineering vs marketing names</ulink> to identify the family (you may need to know this for the Xorg driver in BLFS &mdash; Southern Islands and Sea Islands use the radeonsi driver) and the specific model.
fr: Avec cette information, vérifiez la page RadeonFeature du wiki Xorg <ulink url="https://wiki.x.org/wiki/RadeonFeature/#index5h2">Decoder ring for engineering vs marketing names</ulink> pour identifier la famille (vous aurez besoin de savoir cela pour identifier le pilote Xorg dans BLFS — Southern Islands et Sea Islands utilise le pilote radeonsi) et le modèle spécifique.

note: type: Content of: <sect1><sect2><sect3><para>
en: Now that you know which controller you are using, consult the <ulink url="https://wiki.gentoo.org/wiki/Radeon#Firmware"> Radeon</ulink> page of the Gentoo wiki which has a table listing the required firmware blobs for the various chipsets. Note that Southern Islands and Sea Islands chips use different firmware for kernel 3.17 and later compared to earlier kernels. Identify and download the required blobs then install them:
fr: Maintenant que vous savez quel contrôleur vous allez utiliser, consultez la page <ulink url="https://wiki.gentoo.org/wiki/Radeon#Firmware">Radeon</ulink> du wiki de Gentoo qui a un tableau listant les blobs de firmware requis pour les différentes puces. Notez que les puces Southern Islands et Sea Islands utilisent des firmwares différents pour les noyaux 3.17 et supérieur par rapport aux noyaux antérieurs. Identifiez et téléchargez les blobs requis et ensuite installez les&nbsp;:

note: type: Content of: <sect1><sect2><sect3><para>
en: Building the kernel amdgpu driver as a module is recommended because the firmware files need to be accessible at the time it is loaded.  If you are building it as a part of the kernel image for any reason, you need to either include the firmware files in the initramfs (read <xref linkend='initramfs'/> for details), or include them in the kernel image itself (read <xref linkend='firmware-in-kernel-image'/> for details).
fr: Construire le pilote amdgpu du noyau en tant que module est recommandé car les fichiers du micrologiciel doivent être accessibles au moment du chargement. Si vous le construisez dans l'image du noyau pour quelque raison que ce soit, vous devez inclure les fichiers du micrologiciel dans l'initramfs (consultez <xref linkend='initramfs'/> pour les détails) ou les inclure dans l'image du noyau directement (consultez <xref linkend='firmware-in-kernel-image'/> pour les détails).

note: type: Content of: <sect1><sect2><sect3><title>
en: Firmware for AMD/ATI amdgpu video chips
fr: Firmware pour les puces vidéo amdgp AMD/ATI

note: type: Content of: <sect1><sect2><sect3><para>
en: All video controllers using the amdgpu kernel driver require firmware, whether you will be using the xorg amdgpu driver, the xserver's modesetting driver, or just kernel modesetting to get a console framebuffer larger than 80x25.
fr: Tous les controlleurs vidéo qui utilisent le pilote amdgpu du noyau ont besoin d'un firmware, que vous utilisiez le pilote amdgpu de xorg, le pilote modesetting de xserver, ou juste de modesetting du noyau pour avoir un framebuffer de console plus grand que 80x25.

note: type: Content of: <sect1><sect2><sect3><para>
en: Install <xref linkend="pciutils"/> and use that to check the model name (look for 'VGA compatible controller:'). If you have an APU (Accelerated Processing Unit, i.e. CPU and video on the same chip) that will probably tell you the name. If you have a separate amdgpu video card you will need to search to determine which name it uses (e.g. a card described as Advanced Micro Devices, Inc. [AMD/ATI] Baffin [Radeon RX 550 640SP / RX 560/560X] needs Polaris11 firmware.  There is a table of "Family, Chipset name, Product name and Firmware" at the end of the Kernel sections in <ulink url="https://wiki.gentoo.org/wiki/AMDGPU#Known_firmware_blobs"> AMDGPU</ulink> page of the Gentoo wiki.
fr: Installez <xref linkend="pciutils"/> et utilisez-le pour vérifier le nom du modèle (cherchez «&nbsp;VGA compatible controller:&nbsp;»). Si vous ave un APU (unité de traitement accélérée, c'est-à-dire le CPU et la carte vidéo sur la même puce), cela vous en dira sans doute le nom. Si vous avez une carte vidéo amdgpu séparée vous devrez chercher pour déterminer le nom qu'elle utilise (p.&nbsp;ex. une carte décrite comme Advanced Micro Devices, Inc. [AMD/ATI] Baffin [Radeon RX 550 640SP / RX 560/560X] a besoin du pilote Polaris11). Il y a une table de correspondance «&nbsp;Famille, nom de puce, nom de produit et firmware&nbsp;» à la fin des sections du noyau sur la page <ulink url="https://wiki.gentoo.org/wiki/AMDGPU#Known_firmware_blobs">AMDGPU</ulink> du wiki de Gentoo.

note: type: Content of: <sect1><sect2><sect3><para>
en: Once you have identified the firmware name, install all the relevant files for it. For example, the Baffin card mentioned above has 21 different polaris11* files, APUs such as renoir and picasso have at least 12 files and might gain more in future updates (e.g. the raven APU now has a 13th file, raven_ta.bin).
fr: Une fois que vous avez identifié le nom du firmware, installez tous les fichiers utiles. Par exemple, la carte Baffin mentionnée plus tôt a 21 fichiers polaris11* différents, les APU comme renoir et picasso ont au moins 12 fichiers et pourront en avoir plus dans les mises à jour futures (p.&nbsp;ex. l'APU raven a maintenant un 13ème fichier, raven_ta.bin).

note: type: Content of: <sect1><sect2><sect3><para>
en: If disk space is not a problem, you could install all the current amdgpu firmware files and not worry about exactly which chipset is installed.
fr: Si l'espace disque n'est pas un problème, vous pouvez installer tous les fichiers de firmware actuel sans vous soucier de savoir quelle puce est installée.

note: type: Content of: <sect1><sect2><sect3><title>
en: Firmware for Nvidia video chips
fr: Firmware pour les puces vidéo Nvidia

note: type: Content of: <sect1><sect2><sect3><para>
en: Nvidia has released basic signed firmware for recent graphics chips, but significantly after the chips and its own binary drivers were first available. For other chips it has been necessary to extract the firmware from the binary driver.
fr: Nvidia a publié des firmware de base signés pour les puces graphiques récentes, mais bien après que les puces et ses propres pilotes binaires ne soient disponibles. Pour les autres puces il était nécessaire d'extraire le firmware du pilote binaire.

note: type: Content of: <sect1><sect2><sect3><para>
en: For more exact information about which chips need extracted firmware, see <ulink url= "https://nouveau.freedesktop.org/VideoAcceleration.html"/>.
fr: Pour des informations précises sur les puces qui ont besoin d'un firmware extrait, voir <ulink url= "https://nouveau.freedesktop.org/VideoAcceleration.html"/>.

note: type: Content of: <sect1><sect2><sect3><para>
en: If the necessary firmware is available in the <filename class="directory">nvidia/</filename> directory of linux-firmware, copy it to <filename class="directory">/lib/firmware/nouveau</filename>.
fr: Si le firmware requis est disponible dans le répertoire <filename class="directory">nvidia/</filename> de linux-firmware, copiez-le dans <filename class="directory">/lib/firmware/nouveau</filename>.

note: type: Content of: <sect1><sect2><sect3><para>
en: If the firmware has not been made available in linux-firmware, for the old chips mentioned in the nouveau wiki link above run the following commands:
fr: Si le firmware n'a pas été mis à disposition dans linux-firmware, pour les anciennes puces mentionnées dans le lien vers le wiki de nouveau ci-dessus, exécutez les commandes suivantes&nbsp;:

note: type: Content of: <sect1><sect2><title>
en: Firmware for Network Interfaces
fr: Firmware pour les interfaces réseaux

note: type: Content of: <sect1><sect2><para>
en: The kernel likes to load firmware for some network drivers, particularly those from Realtek (the /lib/linux-firmware/rtl_nic/) directory, but they generally appear to work without it. Therefore, you can boot the kernel, check dmesg for messages about this missing firmware, and if necessary download the firmware and put it in the specified directory in <filename class="directory">/lib/firmware</filename> so that it will be found on subsequent boots. Note that with current kernels this works whether or not the driver is compiled in or built as a module, there is no need to build this firmware into the kernel.  Here is an example where the R8169 driver has been compiled in but the firmware was not made available. Once the firmware had been provided, there was no mention of it on later boots.
fr: Le noyau aime charger des firmware pour quelques pilotes réseaux, particulièrement ceux du répertoire Realtek (/lib/linux-firmware/rtl_nic/), mais il apparaît généralement que cela fonctionne sans. Cependant, vous pouvez démarrer le noyau, vérifier si dmesg contient des messages à propos de firmwares manquants, et si nécessaire télécharger les firmwares et les mettre dans un répertoire spécifique dans <filename class="directory">/lib/firmware</filename> afin qu'ils puissent être trouvés lors des prochains démarrages. Notez qu'avec les noyaux actuels cela fonctionne que le pilote soit compilé dedans ou construit comme un module, il n'est pas utile de construire ce firmware dans le noyau. Ici un exemple ou le pilote R8169 a été compilé dedans mais le firmware n'est pas disponible. Une fois que le firmware a été fourni, il n'y est plus fait mention dans les démarrages suivants.

note: type: Content of: <sect1><sect2><title>
en: Firmware for Regulatory Database of Wireless Devices
fr: Micrologiciel pour les bases de données légales pour les périphériques sans fil

note: type: Content of: <sect1><sect2><para>
en: Different countries have different regulations on the radio spectrum usage of wireless devices.  You can install a firmware to make the wireless devices obey local spectrum regulations, so you won't be inquired by local authority or find your wireless NIC jamming the frequencies of other devices (for example, remote controllers).  The regulatory database firmware can be downloaded from <ulink url = 'https://kernel.org/pub/software/network/wireless-regdb/'/>.  To install it, simply extract <filename>regulatory.db</filename> and <filename>regulatory.db.p7s</filename> from the tarball into <filename class="directory">/lib/firmware</filename>. Note that either the <option>cfg80211</option> driver needs to be selected as a module for the <filename>regulatory.*</filename> files to be loaded, or those files need to be included as firmware into the kernel, as explained above in <xref linkend="video-firmware"/>.
fr: Plusieurs pays ont des réglementations différentes sur l'utilisation du spectre radio des appareils sans-fil. Vous pouvez installer un microprogramme pour qu'un appareil sans-fil obéisse aux réglementations sur les émissions, pour ne pas être inquiété par les autorités ou découvrir que votre wifi brouille les fréquences d'autres appareils (par exemple des télécommandes). Le microprogramme qui contient la base de régulations se trouve sur <ulink url = 'https://kernel.org/pub/software/network/wireless-regdb/'/>. Pour l'installer, extrayez simplement <filename>regulatory.db</filename> et <filename>regulatory.db.p7s</filename> de l'archive vers <filename class="directory">/lib/firmware</filename>. Remarquez que vous devez soit sélectionner le pilote <option>cfg80211</option> en tant que module pour que les fichiers <filename>regulatory.*</filename> soient chargés, soit inclure ces fichiers directement comme un micrologiciel dans le noyau, comme expliqué plus haut dans <xref linkend="video-firmware"/>.

note: type: Content of: <sect1><sect2><para>
en: The access point (AP) would send a country code to your wireless NIC, and <xref linkend='wpa_supplicant'/> would tell the kernel to load the regulation of this country from <filename>regulatory.db</filename>, and enforce it. Note that several AP don't send this country code, so you may be locked to a rather restricted usage (specially if you want to use your interface as an AP).
fr: Le point d'accès (AP) enverrait un code de pays à votre carte sans fil, et <xref linkend='wpa_supplicant'/> dirait au noyau de charger les règles pour ce pays à partir de <filename>regulatory.db</filename> et de les utiliser. Remarquez que de nombreux points d'accès n'envoient pas de code de pays, donc vous pourriez être bloqué dans une utilisation restreinte (surtout si vous voulez utiliser votre interface comme point d'accès).

note: type: Content of: <sect1><sect2><title>
en: Sound Open Firmware
fr: Micrologiciels libres pour l'audio

note: type: Content of: <sect1><sect2><para>
en: <xref linkend="alsa-lib"/> needs Use Case Manager configuration files for the systems using Sound Open Firmware as well.  The ALSA UCM configuration files can be downloaded from <ulink url='https://www.alsa-project.org/files/pub/lib/alsa-ucm-conf-&alsa-lib-version;.tar.bz2'/>.  Extract the tarball and changing into the extracted directory, then as the &root; user install the configuration files:
fr: <xref linkend="alsa-lib"/> nécessite des fichiers de configuration de type «&nbsp;Use Case Manager&nbsp;» pour que le système utilise également ce micrologiciel. Les fichiers de configuration UCM d'ALSA peuvent être téléchargés sur <ulink url='https://www.alsa-project.org/files/pub/lib/alsa-ucm-conf-&alsa-lib-version;.tar.bz2'/>. Extrayez l'archive et rendez-vous dans le répertoire extrait, puis en tant qu'utilisateur &root; installez les fichiers de configuration&nbsp;:

note: type: Content of: <sect1><sect2><para>
en: Once the firmware is loaded (you may need a reboot so the kernel will load them) and the UCM configuration files are installed, following <xref linkend="alsa-utils-config-sect"/> to set up your sound card for ALSA properly.
fr: Une fois le micrologiciel chargé (vous devrez peut-être redémarrer pour que le noyau les charge) et les fichiers de configuration UCM installés, suivez <xref linkend="alsa-utils-config-sect"/> pour configurer votre carte son avec ALSA correctement.

note: type: Content of: <sect1><sect2><title>
en: Firmware for Other Devices
fr: Firmware pour les autres périphériques

note: type: Content of: <sect1><sect2><para>
en: Identifying the correct firmware will typically require you to install <xref linkend='pciutils'/>, and then use <userinput>lspci</userinput> to identify the device. You should then search online to check which module it uses, which firmware, and where to obtain the firmware &mdash; not all of it is in linux-firmware.
fr: Pour identifier le bon firmware vous devrez normallement install <xref linkend='pciutils'/> puis utiliser <userinput>lspci</userinput> pour identifier le matériel. Vous devriez ensuite chercher en ligne pour vérifier le module qu’il utilise, quel firmware et où obtenir le firmware &mdash; ils ne sont pas tous dans linux-firmware.

note: type: Content of: <sect1><sect2><para>
en: If possible, you should begin by using a wired connection when you first boot your LFS system. To use a wireless connection you will need to use a network tools such as <xref linkend="iw"/>, <xref linkend='wireless_tools'/>, or <xref linkend='wpa_supplicant'/>.
fr: Si possible, vous pouvez commencer par utiliser une connexion filaire quand vous démarrez la première fois votre système LFS. Pour utiliser une connexion sans fils vous aurez besoin d'utiliser des outils réseau tels que <xref linkend="iw"/>, <xref linkend='wireless_tools'/> ou <xref linkend='wpa_supplicant'/>.

note: type: Content of: <sect1><sect2><para>
en: Firmware may also be needed for other devices such as some SCSI controllers, bluetooth adaptors, or TV recorders. The same principles apply.
fr: Les firmwares peuvent aussi être utiles pour d'autres périphériques comme les contrôleurs SCSI, les adaptateurs Bluetooth, ou les enregistreurs TV. Les mêmes principes s'appliquent.

note: type: Content of: <sect1><sect2><title>
en: Include Firmware Blobs in the Kernel Image
fr: Inclure les blobs des micrologiciels dans l'image du noyau

note: type: Content of: <sect1><sect2><para>
en: Some drivers, notably the drivers for ATI or AMD GPU, requires the firmware files accessible at the time it is loaded.  The easiest method to handle these drivers is building them as a kernel module.  An alternative method is creating an initramfs (read <xref linkend='initramfs'/> for details) including the firmware files.  If you don't want to use either methods, you may include the firmware files in the kernel image itself.  Install the needed firmware files into <filename class='directory'>/lib/firmware</filename> first, then set the following kernel configuration and rebuild the kernel:
fr: Certains pilotes, surtout les pilotes pour les GPU ATI ou AMD, ont besoin que des fichiers de micrologiciel soient accessibles au chargement. La méthode la plus facile de gérer ces pilotes est de les construire en tant que module du noyau. Une autre méthode consiste à créer un initramfs (consultez <xref linkend='initramfs'/> pour les détails) qui contiendrait les fichiers du micrologiciel. Si vous ne voulez pas utiliser ces méthodes, vous pouvez inclure directement les fichiers du micrologiciel dans l'image du noyau. Installez d'abord les fichiers de micrologiciel requis dans <filename class='directory'>/lib/firmware</filename>, puis configurez le noyau et reconstruisez-le&nbsp;:

note: type: Content of: <sect1><sect2><para>
en: Replace <replaceable>xx/aa.bin xx/bb.bin</replaceable> with a whitespace-separated list of paths to the needed firmware files, relative to <filename class='directory'>/lib/firmware</filename>.  A method easier than manually typing the list (it may be long) is running the following command:
fr: Remplacez <replaceable>xx/aa.bin xx/bb.bin</replaceable> par une liste de chemins séparés par des espaces vers les fichiers requis, relativement à <filename class='directory'>/lib/firmware</filename>. Une méthode plus simple que de taper la liste complète à la main (ça peut être long) consiste à exécuter la commande suivante&nbsp;:

note: type: Content of: <sect1><sect2><para>
en: Replace <replaceable>amdgpu/*</replaceable> with a shell pattern matching the needed firmware files.
fr: Remplacez <replaceable>amdgpu/*</replaceable> par un motif shell correspondant aux fichiers de micrologiciel requis.

note: type: Content of: <sect1><sect2><warning><para>
en: Do not distribute a kernel image containing the firmware to others or you may violate the GPL.
fr: Ne distribuez pas une image du noyau contenant les micrologiciels à d'autres personnes ou vous pourriez violer la licence GPL.
