Paul Menzel has uploaded this change for review. ( https://review.coreboot.org/c/coreboot/+/38391 )
Change subject: drivers/i2c/at24rf08c: Correctly format short multi-line comments
......................................................................
drivers/i2c/at24rf08c: Correctly format short multi-line comments
Change-Id: I84e09706aceae69671ce429d77e7874128468307
Signed-off-by: Paul Menzel <paulepanter(a)users.sourceforge.net>
---
M src/drivers/i2c/at24rf08c/at24rf08c.c
1 file changed, 2 insertions(+), 3 deletions(-)
git pull ssh://review.coreboot.org:29418/coreboot refs/changes/91/38391/1
diff --git a/src/drivers/i2c/at24rf08c/at24rf08c.c b/src/drivers/i2c/at24rf08c/at24rf08c.c
index 102e0e8..daf04a9 100644
--- a/src/drivers/i2c/at24rf08c/at24rf08c.c
+++ b/src/drivers/i2c/at24rf08c/at24rf08c.c
@@ -25,7 +25,7 @@
return;
/* Ensure that EEPROM/RFID chip is not accessible through RFID.
- Need to do it only on 5c. */
+ Need to do it only on 5c. */
if (dev->path.type != DEVICE_PATH_I2C || dev->path.i2c.device != 0x5c)
return;
@@ -34,8 +34,7 @@
for (i = 0; i < 8; i++)
{
/* After a register write AT24RF08C sometimes stops responding.
- Retry several times in case of failure.
- */
+ Retry several times in case of failure. */
for (j = 0; j < 100; j++)
if (smbus_write_byte(dev, i, 0x0f) >= 0)
break;
--
To view, visit https://review.coreboot.org/c/coreboot/+/38391
To unsubscribe, or for help writing mail filters, visit https://review.coreboot.org/settings
Gerrit-Project: coreboot
Gerrit-Branch: master
Gerrit-Change-Id: I84e09706aceae69671ce429d77e7874128468307
Gerrit-Change-Number: 38391
Gerrit-PatchSet: 1
Gerrit-Owner: Paul Menzel <paulepanter(a)users.sourceforge.net>
Gerrit-MessageType: newchange
Patrick Rudolph has uploaded this change for review. ( https://review.coreboot.org/c/coreboot/+/39150 )
Change subject: Documentation: Add Heads to payloads
......................................................................
Documentation: Add Heads to payloads
Add a small description about Heads.
Change-Id: I2e768a640751fee1b1b5df4401205e24cde0607c
Signed-off-by: Patrick Rudolph <patrick.rudolph(a)9elements.com>
---
M Documentation/payloads.md
1 file changed, 12 insertions(+), 0 deletions(-)
git pull ssh://review.coreboot.org:29418/coreboot refs/changes/50/39150/1
diff --git a/Documentation/payloads.md b/Documentation/payloads.md
index b1eae61..eee841e 100644
--- a/Documentation/payloads.md
+++ b/Documentation/payloads.md
@@ -40,3 +40,15 @@
firmware project drivers that often reinvent the wheel) and the ability to
define boot policy with familiar tools, no matter if those are shell scripts
or compiled userland programs written in C, Go or other programming languages.
+
+## Heads
+
+[Heads] is a distribution that bundles coreboot, Linux, busybox and custom
+tools to provide reproducible ROMs. [Heads] aims to provide a secure and
+flexible boot environment for laptops and servers.
+It supports features like measured boot, kexec, GPG, OTP, TLS, firmware
+updates, but only works on a limited amount of mainboards.
+For more details have a look at [heads-wiki].
+
+[Heads]: https://github.com/osresearch/heads
+[heads-wiki]: http://osresearch.net/
\ No newline at end of file
--
To view, visit https://review.coreboot.org/c/coreboot/+/39150
To unsubscribe, or for help writing mail filters, visit https://review.coreboot.org/settings
Gerrit-Project: coreboot
Gerrit-Branch: master
Gerrit-Change-Id: I2e768a640751fee1b1b5df4401205e24cde0607c
Gerrit-Change-Number: 39150
Gerrit-PatchSet: 1
Gerrit-Owner: Patrick Rudolph <patrick.rudolph(a)9elements.com>
Gerrit-MessageType: newchange
Patrick Rudolph has uploaded this change for review. ( https://review.coreboot.org/c/coreboot/+/39129 )
Change subject: Documentation: Tutorial me_cleaner on Lenovo devices
......................................................................
Documentation: Tutorial me_cleaner on Lenovo devices
Add a tutorial how to use ME cleaner, and give some basic steps to
strip the ME.
Tested on Lenovo X220 with stripped ME and found no issues:
* Displayport
* VGA
* USB
* Bluetooth
* Wifi
* Wifi-kill switch
* libgfxinit
* SATA
* Audio
* SD-card
* Ethernet
* Keyboard
* Fn-Keys
* Display brightness
* S3 resume
* Battery events
* CPU temperature reporting
* FAN managment
* Stress test stable
* Youtube videos over Wifi
* stress -c 2 -m 1 -d 1
* glxgears
Change-Id: I0b1d04f00b5dbb38cf04333f2b345749b740a375
Signed-off-by: Patrick Rudolph <patrick.rudolph(a)9elements.com>
---
M Documentation/mainboard/index.md
M Documentation/mainboard/lenovo/Sandy_Bridge_series.md
A Documentation/mainboard/lenovo/flashlayout_Sandy_Bridge_stripped_me.svg
A Documentation/mainboard/lenovo/stripping_me.md
4 files changed, 154 insertions(+), 3 deletions(-)
git pull ssh://review.coreboot.org:29418/coreboot refs/changes/29/39129/1
diff --git a/Documentation/mainboard/index.md b/Documentation/mainboard/index.md
index 126a8fb..413bf03 100644
--- a/Documentation/mainboard/index.md
+++ b/Documentation/mainboard/index.md
@@ -66,6 +66,7 @@
## Lenovo
- [Mainboard codenames](lenovo/codenames.md)
+- [Stripping ME](lenovo/stripping_me.md)
- [Hardware Maintenance Manual of ThinkPads](lenovo/thinkpad_hmm.md)
- [R60](lenovo/r60.md)
- [T4xx common](lenovo/t4xx_series.md)
diff --git a/Documentation/mainboard/lenovo/Sandy_Bridge_series.md b/Documentation/mainboard/lenovo/Sandy_Bridge_series.md
index 0b833f5..cba9a06 100644
--- a/Documentation/mainboard/lenovo/Sandy_Bridge_series.md
+++ b/Documentation/mainboard/lenovo/Sandy_Bridge_series.md
@@ -33,9 +33,7 @@
usable by coreboot.
* ROM chip size should be set to 8MiB.
-```eval_rst
-Please also have a look at :doc:`../../flash_tutorial/index`.
-```
+Please also have a look at the [flashing tutorial]
## Flash layout
There's one 8MiB flash which contains IFD, GBE, ME and BIOS regions.
@@ -46,3 +44,27 @@
[fl]: flashlayout_Sandy_Bridge.svg
+## Reducing Intel Managment Engine firmware size
+
+It is possible to reduce the Intel ME firmware size to free additional
+space for the `bios` region. This is usually refered to as *cleaning the ME* or
+*stripping the ME*. See general notes on [me_cleaner].
+
+With the reduced Intel ME firmware the IFD, GbE and ME regions require
+less than 128 KiB of space in the ROM.
+
+The modified flash layout needs to be written to IFD!
+Have a look at the [ME tutorial] for more information.
+
+Tests on Lenovo X220 showed no issues with a stripped ME firmware.
+
+
+**Modified flash layout:**
+
+![][fl2]
+
+[fl2]: flashlayout_Sandy_Bridge_stripped_me.svg
+
+[ME tutorial]: stripping_me.md
+[me_cleaner]: ../../northbridge/intel/sandybridge/me_cleaner.md
+[flashing tutorial]: ../../flash_tutorial/ext_power.md
diff --git a/Documentation/mainboard/lenovo/flashlayout_Sandy_Bridge_stripped_me.svg b/Documentation/mainboard/lenovo/flashlayout_Sandy_Bridge_stripped_me.svg
new file mode 100644
index 0000000..d8d8213
--- /dev/null
+++ b/Documentation/mainboard/lenovo/flashlayout_Sandy_Bridge_stripped_me.svg
@@ -0,0 +1,74 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.0//EN" "http://www.w3.org/TR/2001/PR-SVG-20010719/DTD/svg10.dtd">
+<svg width="9cm" height="8cm" viewBox="268 -156 168 158" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
+ <g>
+ <g>
+ <g>
+ <rect style="fill: #ffffff" x="307.888" y="-152.131" width="49.1438" height="30.4667"/>
+ <rect style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #ffffff" x="307.888" y="-152.131" width="49.1438" height="30.4667"/>
+ </g>
+ <rect style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #ffffff" x="307.888" y="-152.131" width="49.1438" height="30.4667"/>
+ </g>
+ <rect style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" x="307.888" y="-152.131" width="49.1438" height="30.4667"/>
+ <text font-size="6.77323" style="fill: #000000;text-anchor:middle;font-family:sans-serif;font-style:normal;font-weight:normal" x="332.46" y="-134.831">
+ <tspan x="332.46" y="-134.831">IFD</tspan>
+ </text>
+ </g>
+ <g>
+ <g>
+ <rect style="fill: #ffffff" x="307.934" y="-56.9106" width="49.1438" height="56.1492"/>
+ <rect style="fill: none; fill-opacity:0; stroke-width: 0.02; stroke: #ffffff" x="307.934" y="-56.9106" width="49.1438" height="56.1492"/>
+ </g>
+ <rect style="fill: none; fill-opacity:0; stroke-width: 0.02; stroke: #ffffff" x="307.934" y="-56.9106" width="49.1438" height="56.1492"/>
+ </g>
+ <rect style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" x="308.096" y="-57.559" width="49.1438" height="57.2839"/>
+ <text font-size="6.77323" style="fill: #000000;text-anchor:middle;font-family:sans-serif;font-style:normal;font-weight:normal" x="332.182" y="-24.0245">
+ <tspan x="332.182" y="-24.0245">BIOS</tspan>
+ </text>
+ <g>
+ <g>
+ <g>
+ <rect style="fill: #ffffff" x="308" y="-121.59" width="49.1438" height="30.4667"/>
+ <rect style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #ffffff" x="308" y="-121.59" width="49.1438" height="30.4667"/>
+ </g>
+ <rect style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #ffffff" x="308" y="-121.59" width="49.1438" height="30.4667"/>
+ </g>
+ <rect style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" x="308" y="-121.59" width="49.1438" height="30.4667"/>
+ <text font-size="6.77323" style="fill: #000000;text-anchor:middle;font-family:sans-serif;font-style:normal;font-weight:normal" x="332.572" y="-104.29">
+ <tspan x="332.572" y="-104.29">GBE</tspan>
+ </text>
+ </g>
+ <text font-size="7.15705" style="fill: #000000;text-anchor:start;font-family:sans-serif;font-style:normal;font-weight:normal" x="268.961" y="-148.674">
+ <tspan x="268.961" y="-148.674">0x000000</tspan>
+ </text>
+ <text font-size="6.77323" style="fill: #000000;text-anchor:start;font-family:sans-serif;font-style:normal;font-weight:normal" x="269.152" y="-120.399">
+ <tspan x="269.152" y="-120.399">0x001000</tspan>
+ </text>
+ <text font-size="6.77323" style="fill: #000000;text-anchor:start;font-family:sans-serif;font-style:normal;font-weight:normal" x="269.155" y="-90.6472">
+ <tspan x="269.155" y="-90.6472">0x003000</tspan>
+ </text>
+ <text font-size="6.77323" style="fill: #000000;text-anchor:start;font-family:sans-serif;font-style:normal;font-weight:normal" x="269.461" y="-56.4289">
+ <tspan x="269.461" y="-56.4289">0x020000</tspan>
+ </text>
+ <text font-size="6.77323" style="fill: #000000;text-anchor:start;font-family:sans-serif;font-style:normal;font-weight:normal" x="270.008" y="0.198407">
+ <tspan x="270.008" y="0.198407">0x800000</tspan>
+ </text>
+ <path style="fill: none; fill-opacity:0; stroke-width: 1; stroke: #000000" d="M 380.877 -151.013 C 401.876,-151.013 379.377,-73.513 400.627,-72.513"/>
+ <path style="fill: none; fill-opacity:0; stroke-width: 1; stroke: #000000" d="M 381.377 -0.763268 C 395.238,-0.763268 387.016,-72.763 400.877,-72.763"/>
+ <text font-size="6.77323" style="fill: #000000;text-anchor:start;font-family:sans-serif;font-style:normal;font-weight:normal" x="406.127" y="-68.513">
+ <tspan x="406.127" y="-68.513">Flash #0</tspan>
+ </text>
+ <g>
+ <g>
+ <g>
+ <rect style="fill: #ffffff" x="308.189" y="-90.5898" width="49.1438" height="33.4161"/>
+ <rect style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #ffffff" x="308.189" y="-90.5898" width="49.1438" height="33.4161"/>
+ </g>
+ <rect style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #ffffff" x="308.189" y="-90.5898" width="49.1438" height="33.4161"/>
+ </g>
+ <rect style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" x="308.189" y="-90.5898" width="49.1438" height="32.8215"/>
+ <text font-size="6.77323" style="fill: #000000;text-anchor:middle;font-family:sans-serif;font-style:normal;font-weight:normal" x="331.572" y="-70.23">
+ <tspan x="331.572" y="-70.23">ME</tspan>
+ </text>
+ </g>
+</svg>
diff --git a/Documentation/mainboard/lenovo/stripping_me.md b/Documentation/mainboard/lenovo/stripping_me.md
new file mode 100644
index 0000000..00cb2e0
--- /dev/null
+++ b/Documentation/mainboard/lenovo/stripping_me.md
@@ -0,0 +1,54 @@
+# Tutorial reducing the Intel ME firmware size
+
+This tutorial is written for the Lenovo Intel Sandy Bridge/Ivy Bridge devices,
+but applies to additional platforms with slightly differences.
+
+It is possible to reduce the Intel ME firmware size to free additional
+space for the `bios` region. This is usually refered to as *cleaning the ME* or
+*stripping the ME*. The ME is forced into a non-functional recovery state,
+which sets the platform in an undefined state.
+See general notes on [me_cleaner].
+
+With the reduced Intel ME firmware the `ifd`, `gbe` and `me` regions require
+less than 128 KiB of space in the ROM, which leaves the remaining for the
+`bios` region.
+
+This tutorial will guide through the steps necessary.
+
+## Obtain a full ROM
+
+You need a full and working ROM with a full Intel ME firmware.
+
+## Running me_cleaner
+
+You need to run the me_cleaner on a full ROM, here called `fulldump.rom`:
+
+It will then generate 2 new files:
+```console
+./util/me_cleaner/me_cleaner.py -D patched_desciptor.bin -M stripped_me.bin fulldump.rom -t -r -S
+```
+It will then generate 2 new files:
+* a patched IFD called `patched_desciptor.bin`
+* stripped Intel ME called `stripped_me.bin`
+
+The patched IFD has the `AltMeDisable` bit set and a modified flash layout.
+
+## Build coreboot
+
+1. Now include the two new files into coreboot's build system.
+2. Make sure to also increase the CBFS size
+ * 0x7E0000 for a 8MiB ROM
+ * 0xBE0000 for a 12MiB ROM
+ * 0xFE0000 for a 16MiB ROM
+
+## Flashing the ROM
+
+As you have modified the layout you need to write the **full ROM** to flash.
+Make sure to include all partitions into the ROM:
+* IFD
+* EC (might be unused)
+* GbE (might be unused)
+* ME
+* BIOS
+
+[me_cleaner]: ../../northbridge/intel/sandybridge/me_cleaner.md
--
To view, visit https://review.coreboot.org/c/coreboot/+/39129
To unsubscribe, or for help writing mail filters, visit https://review.coreboot.org/settings
Gerrit-Project: coreboot
Gerrit-Branch: master
Gerrit-Change-Id: I0b1d04f00b5dbb38cf04333f2b345749b740a375
Gerrit-Change-Number: 39129
Gerrit-PatchSet: 1
Gerrit-Owner: Patrick Rudolph <patrick.rudolph(a)9elements.com>
Gerrit-MessageType: newchange