Difference between revisions of "Intel Sandybridge Build Tutorial"

From coreboot
Jump to: navigation, search
(Tutorial for flashing coreboot on Intel Sandybridge systems WIP)
 
(added configure coreboot WIP)
Line 13: Line 13:
 
* Recovery and Debugging
 
* Recovery and Debugging
  
For more information have a look at https://www.coreboot.org/Build_HOWTO
+
For more information have a look at [[Build_HOWTO]]
  
 
== Get binary blobs ==
 
== Get binary blobs ==
Line 23: Line 23:
 
* Intel Flash descriptor (IFD)
 
* Intel Flash descriptor (IFD)
 
* Intel Gigabit Engine (GBE)
 
* Intel Gigabit Engine (GBE)
 +
 +
You may want to extract the VGA Option Rom, too: [[VGA_support]]
  
  
Line 54: Line 56:
 
* flashregion_2_intel_me.bin
 
* flashregion_2_intel_me.bin
 
* flashregion_3_gbe.bin
 
* flashregion_3_gbe.bin
 +
 +
== Configure Coreboot ==
 +
 +
Run:
 +
make menuconfig
 +
 +
In menu ''Mainboard'':
 +
Set "Mainboard Vendor" to "Lenovo"
 +
Set "Mainboard model" to "T520"
 +
 +
For other boards choose your settings here !
 +
 +
In menu ''Chipset'':
 +
Set "Add Intel descriptor.bin file" to "flashregion_0_flashdescriptor.bin"
 +
Set "Add Intel ME firmware" to "flashregion_2_intel_me.bin"
 +
Set "Add Gigabite Ethernet firmware" to "flashregion_3_gbe.bin"
 +
 +
In menu ''Devices'':
 +
Set "Use native graphics initialization"
 +
{{Warning|"native graphics initialization" is only supported on Intel mobile GPUs using LVDS and remove the need to run the Option Rom to get graphics output.}}
 +
 +
In case you want to run VGA Option Rom add it using:
 +
Set "Add a VGA BIOS image" to the VGA Option ROM file
 +
 +
In menu ''Payloads'':
 +
Set "Include generated option rom that implements legacy VGA BIOS"
 +
 +
'''Save the new config'''
 +
 +
Run:
 +
make
 +
 +
== Flashing coreboot ==
 +
TODO
 +
 +
== Recovery and Debugging ==
 +
TODO

Revision as of 10:52, 14 April 2016

Step by Step Tutorial How to flash coreboot onto Lenovo T520. Flashing coreboot on supported Intel SandyBridge / Ivybridge system is very similar to this one. Steps that need to be changed are marked as those.

Chapters:

  • Check the board status
  • Setup toolchain
  • Get binary blobs
  • Configure coreboot
  • Build coreboot
  • Flash coreboot
  • Recovery and Debugging

For more information have a look at Build_HOWTO

Get binary blobs

Coreboot needs some binary blobs. Here's a list of blobs required: Binary_situation

I'm going to use:

  • Intel Management Engine (ME)
  • Intel Flash descriptor (IFD)
  • Intel Gigabit Engine (GBE)

You may want to extract the VGA Option Rom, too: VGA_support


Warning: Remove all batteries and unplug the power connector. You have to make sure to supply enough current through the programmer.

The Beaglebone Black onboard voltage regulator doesn't supply enough current. Using an external power supply may be required.

Some flash chips can't be programmed while soldered, as the southbridge is powered, too, and communicates with the flash.

The T520 flash IC can be programmed in circuit.

I used the TIAO USB board to access the flash. You need a flashrom version supporting the "tumpa" programmer. Of course you can read the flash using the Raspberry or BeagleBone, too. To read the flash chip using tumpa programmer:

flashrom -p ft2232_spi:type=tumpa,port=A,divisor=4 -r T520.bin

To read the flash chip using raspberry pi:

flashrom -p linux_spi:dev=/dev/spidev0.0 -r T520.bin

Extract the binary blobs from the raw flash image:

cd ./util/ifdtool
make
./ifdtool -x T520.bin

The following files will show up:

  • flashregion_0_flashdescriptor.bin
  • flashregion_1_bios.bin
  • flashregion_2_intel_me.bin
  • flashregion_3_gbe.bin

Configure Coreboot

Run:

make menuconfig

In menu Mainboard:

Set "Mainboard Vendor" to "Lenovo"
Set "Mainboard model" to "T520"

For other boards choose your settings here !

In menu Chipset:

Set "Add Intel descriptor.bin file" to "flashregion_0_flashdescriptor.bin"
Set "Add Intel ME firmware" to "flashregion_2_intel_me.bin"
Set "Add Gigabite Ethernet firmware" to "flashregion_3_gbe.bin"

In menu Devices:

Set "Use native graphics initialization"
Warning: "native graphics initialization" is only supported on Intel mobile GPUs using LVDS and remove the need to run the Option Rom to get graphics output.

In case you want to run VGA Option Rom add it using:

Set "Add a VGA BIOS image" to the VGA Option ROM file

In menu Payloads:

Set "Include generated option rom that implements legacy VGA BIOS"

Save the new config

Run:

make

Flashing coreboot

TODO

Recovery and Debugging

TODO