Author: bdubbs Date: Sun Mar 5 11:19:30 2017 New Revision: 18439 Log: Update firmware discussion for Intel CPUs
Modified: trunk/BOOK/introduction/welcome/changelog.xml trunk/BOOK/postlfs/config/firmware.xml Modified: trunk/BOOK/introduction/welcome/changelog.xml ============================================================================== --- trunk/BOOK/introduction/welcome/changelog.xml Sun Mar 5 10:35:44 2017 (r18438) +++ trunk/BOOK/introduction/welcome/changelog.xml Sun Mar 5 11:19:30 2017 (r18439) @@ -46,6 +46,10 @@ <para>March 5th, 2017</para> <itemizedlist> <listitem> + <para>[bdubbs] - Update firmware discussion for Intel CPUs . Partially fixes + <ulink url="&blfs-ticket-root;8929">#8929</ulink>.</para> + </listitem> + <listitem> <para>[bdubbs] - Update to mpg123 1.24.0. Fixes <ulink url="&blfs-ticket-root;8958">#8958</ulink>.</para> </listitem> Modified: trunk/BOOK/postlfs/config/firmware.xml ============================================================================== --- trunk/BOOK/postlfs/config/firmware.xml Sun Mar 5 10:35:44 2017 (r18438) +++ trunk/BOOK/postlfs/config/firmware.xml Sun Mar 5 11:19:30 2017 (r18439) @@ -125,7 +125,7 @@ <sect3 id="intel-microcode"> <title>Intel Microcode for the CPU</title> - +<!-- <bridgehead renderas="sect4">Required Package</bridgehead> <para role='required'> <ulink url='http://fedorahosted.org/released/microcode_ctl/'/></para> @@ -154,10 +154,52 @@ need to determine your processor's identity, to see if there is any microcode for it. Determine the decimal values of the cpu family, model and stepping by running:</para> +--> + + <bridgehead renderas="sect4">Required File</bridgehead> + <para role='required'> + <ulink url='&sources-anduin-http;/intel-microcode/intel-microcode2ucode.c'/> + </para> + + <para>For Intel CPUs an extra program, intel-microcode2ucode, is required. + This is done a little differently since it is only a single source + code file. The reason for this is that there are differnet versions + available, but most are specific to commercial distributions.</para> + + <para>This program reformats the microcode supplied by Intel into a + format which the kernel can apply. The program + <userinput>intel-microcode2ucode</userinput> is used create the + individual firmware blobs </para> + + <para>Create the program by downloading the source file and running:</para> + +<screen><userinput>gcc -g -Wall -O2 -o intel-microcode2ucode intel-microcode2ucode.c</userinput></screen> + + <para>Now install the program as the <systemitem class="username">root</systemitem> user:</para> + +<screen><userinput>install intel-microcode2ucode /usr/bin</userinput></screen> + + <para>The next step is to get the most recent version of the Intel + microcode. The must be done by navigating to + <ulink url='https://downloadcenter.intel.com/download/26400/Linux-Processor-Microcode-Data-File'/> + and following the instructions there. As of this writing the most recent + version of the microcode is <filename>microcode-20161104.tgz</filename>. + This file is a tar file, but expands to <filename>microcode.dat</filename> + in the current directory.</para> + + <para>Next, create various blobs with names in the form XX-YY-ZZ in a + subdirectory named <filename class="directory">intel-ucode/</filename>: + </para> + +<screen><userinput>intel-microcode2ucode microcode.dat</userinput></screen> + + <para>Now you need to determine your processor's identity to see if there + is any microcode for it. Determine the decimal values of the cpu family, + model and stepping by running:</para> <screen><userinput>head -n7 /proc/cpuinfo</userinput></screen> - <para>Now convert the cpu family, model and stepping to pairs of hexadecimal + <para>Convert the cpu family, model and stepping to pairs of hexadecimal digits. For a SandyBridge i3-2120 (described as Intel(R) Core(TM) i3-2120 CPU) the relevant values are cpu family 6, model 42, stepping 7 so in this case the required identification is 06-2a-07. A look at the blobs @@ -167,7 +209,7 @@ by the identifier for your machine) to where the kernel can find it:</para> <screen><userinput>mkdir -pv /lib/firmware/intel-ucode -cp -v <XX-YY-ZZ> /lib/firmware/intel-ucode</userinput></screen> +cp -v intel-ucode/<XX-YY-ZZ> /lib/firmware/intel-ucode</userinput></screen> <para>Now that the Intel microcode has been prepared, use the following options when you configure the kernel to try late loading of the Intel -- http://lists.linuxfromscratch.org/listinfo/blfs-book FAQ: http://www.linuxfromscratch.org/blfs/faq.html Unsubscribe: See the above information page