2018-08-04 10:04:45 +02:00
|
|
|
# Lenovo Sandy Bridge series
|
|
|
|
|
|
|
|
## Flashing coreboot
|
|
|
|
```eval_rst
|
|
|
|
+---------------------+--------------------+
|
|
|
|
| Type | Value |
|
|
|
|
+=====================+====================+
|
|
|
|
| Socketed flash | no |
|
|
|
|
+---------------------+--------------------+
|
|
|
|
| Size | 8 MiB |
|
|
|
|
+---------------------+--------------------+
|
|
|
|
| In circuit flashing | Yes |
|
|
|
|
+---------------------+--------------------+
|
|
|
|
| Package | SOIC-8 |
|
|
|
|
+---------------------+--------------------+
|
|
|
|
| Write protection | No |
|
|
|
|
+---------------------+--------------------+
|
|
|
|
| Dual BIOS feature | No |
|
|
|
|
+---------------------+--------------------+
|
|
|
|
| Internal flashing | Yes |
|
|
|
|
+---------------------+--------------------+
|
|
|
|
```
|
|
|
|
|
|
|
|
## Installation instructions
|
2021-01-22 19:14:07 +01:00
|
|
|
|
|
|
|
Flashing coreboot for the first time needs to be done using an external
|
|
|
|
programmer, because vendor firmware prevents rewriting the BIOS region.
|
|
|
|
|
2018-08-04 10:04:45 +02:00
|
|
|
* Update the EC firmware, as there's no support for EC updates in coreboot.
|
2021-01-22 19:11:02 +01:00
|
|
|
* Do **NOT** accidentally swap pins or power on the board while a SPI flasher
|
2018-08-04 10:04:45 +02:00
|
|
|
is connected. It will destroy your device.
|
|
|
|
* It's recommended to only flash the BIOS region. In that case you don't
|
2018-09-30 21:18:33 +02:00
|
|
|
need to extract blobs from vendor firmware.
|
|
|
|
If you want to flash the whole chip, you need blobs when building
|
2018-08-04 10:04:45 +02:00
|
|
|
coreboot.
|
|
|
|
* The shipped *Flash layout* allocates 3MiB to the BIOS region, which is the space
|
|
|
|
usable by coreboot.
|
|
|
|
* ROM chip size should be set to 8MiB.
|
|
|
|
|
2020-02-26 14:09:04 +01:00
|
|
|
Please also have a look at the [flashing tutorial]
|
2018-08-04 10:04:45 +02:00
|
|
|
|
|
|
|
## Flash layout
|
|
|
|
There's one 8MiB flash which contains IFD, GBE, ME and BIOS regions.
|
|
|
|
On Lenovo's UEFI the EC firmware update is placed at the start of the BIOS
|
|
|
|
region. The update is then written into the EC once.
|
|
|
|
|
|
|
|
![][fl]
|
|
|
|
|
2020-02-16 11:28:11 +01:00
|
|
|
[fl]: flashlayout_Sandy_Bridge.svg
|
2018-08-04 10:04:45 +02:00
|
|
|
|
2021-10-01 22:10:19 +02:00
|
|
|
## Reducing Intel Management Engine firmware size
|
2020-02-26 14:09:04 +01:00
|
|
|
|
|
|
|
It is possible to reduce the Intel ME firmware size to free additional
|
2020-03-17 10:55:04 +01:00
|
|
|
space for the `bios` region. This is usually referred to as *cleaning the ME* or
|
2020-02-26 14:09:04 +01:00
|
|
|
*stripping the ME*.
|
|
|
|
After reducing the Intel ME firmware size you must modify the original IFD
|
|
|
|
and then write a full ROM using an [external programmer].
|
2020-03-17 10:55:04 +01:00
|
|
|
Have a look at [me_cleaner] for more information.
|
2020-02-26 14:09:04 +01:00
|
|
|
|
|
|
|
Tests on Lenovo X220 showed no issues with a stripped ME firmware.
|
|
|
|
|
|
|
|
**Modified flash layout:**
|
|
|
|
|
|
|
|
![][fl2]
|
|
|
|
|
|
|
|
[fl2]: flashlayout_Sandy_Bridge_stripped_me.svg
|
|
|
|
|
|
|
|
The overall size of the `gbe`, `me,` `ifd` region is less than 128KiB, leaving
|
|
|
|
the remaining space for the `bios` partition.
|
|
|
|
|
|
|
|
|
|
|
|
[me_cleaner]: ../../northbridge/intel/sandybridge/me_cleaner.md
|
|
|
|
[external programmer]: ../../flash_tutorial/index.md
|
2020-05-04 00:23:41 +02:00
|
|
|
[flashing tutorial]: ../../flash_tutorial/index.md
|