Documentation/nb/intel: Add Haswell documentation
At the moment, this just gives some details on the MRC. Change-Id: I84e8ca2543b2e19b84a24f7d7032a4aedb6e9272 Signed-off-by: Tristan Corrick <tristan@corrick.kiwi> Reviewed-on: https://review.coreboot.org/c/30356 Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: Nico Huber <nico.h@gmx.de>
This commit is contained in:
parent
a26b02466e
commit
cbc561f64a
|
@ -4,24 +4,10 @@ This page describes how to run coreboot on the [ASRock H81M-HDS].
|
||||||
|
|
||||||
## Required proprietary blobs
|
## Required proprietary blobs
|
||||||
|
|
||||||
This board currently requires a proprietary blob in order to initialise
|
```eval_rst
|
||||||
the RAM and a few other components. The blob largely consists of Intel's
|
Please see :doc:`../../northbridge/intel/haswell/mrc.bin`.
|
||||||
Memory Reference Code (shortened to mrc), and is just under 200 KiB
|
|
||||||
in size. It is also known as a system agent binary. Unfortunately,
|
|
||||||
it is not currently possible to distribute this as part of coreboot.
|
|
||||||
However, the mrc can be obtained from a Haswell Chromebook firmware
|
|
||||||
image, and you might find one online. The mrc from a ChromeOS image can
|
|
||||||
be extracted with the following command. If extracting from a "standard"
|
|
||||||
coreboot image, omit `-r RO_SECTION`.
|
|
||||||
|
|
||||||
```bash
|
|
||||||
cbfstool coreboot.rom extract -f mrc.bin -n mrc.bin -r RO_SECTION
|
|
||||||
```
|
```
|
||||||
|
|
||||||
Now, place mrc.bin in the root of the coreboot directory.
|
|
||||||
Alternatively, place it anywhere you want, and set `MRC_FILE` to its
|
|
||||||
location when building coreboot.
|
|
||||||
|
|
||||||
## Building coreboot
|
## Building coreboot
|
||||||
|
|
||||||
A fully working image should be possible just by setting your MAC
|
A fully working image should be possible just by setting your MAC
|
||||||
|
|
|
@ -0,0 +1,8 @@
|
||||||
|
# Intel Haswell documentation
|
||||||
|
|
||||||
|
This section describes the Intel Haswell architecture as it relates to
|
||||||
|
coreboot.
|
||||||
|
|
||||||
|
## Proprietary blobs
|
||||||
|
|
||||||
|
- [mrc.bin](mrc.bin.md)
|
|
@ -0,0 +1,35 @@
|
||||||
|
# mrc.bin
|
||||||
|
|
||||||
|
All Haswell boards supported by coreboot currently require a proprietary
|
||||||
|
blob in order to initialise the DRAM and a few other components. The
|
||||||
|
blob, named `mrc.bin`, largely consists of Intel's memory reference code
|
||||||
|
(MRC), but it has been tailored specifically for Chrome OS. It is just
|
||||||
|
under 200 KiB in size. Another name for `mrc.bin` is the system agent
|
||||||
|
binary.
|
||||||
|
|
||||||
|
Having a replacement for `mrc.bin` using native coreboot code is very
|
||||||
|
much desired, but it is not an easy task.
|
||||||
|
|
||||||
|
## Obtaining mrc.bin
|
||||||
|
|
||||||
|
Unfortunately, it is not currently possible to distribute `mrc.bin` as
|
||||||
|
part of coreboot. Though, it can be obtained from a Haswell Chromebook
|
||||||
|
or Chromebox firmware image, and you might find one online. `mrc.bin`
|
||||||
|
can be extracted with the following command. If extracting from a
|
||||||
|
"standard" coreboot image, omit `-r RO_SECTION`.
|
||||||
|
|
||||||
|
```bash
|
||||||
|
cbfstool coreboot.rom extract -f mrc.bin -n mrc.bin -r RO_SECTION
|
||||||
|
```
|
||||||
|
|
||||||
|
Now, place `mrc.bin` in the root of the coreboot directory.
|
||||||
|
Alternatively, place `mrc.bin` anywhere you want, and set `MRC_FILE` to
|
||||||
|
its location when building coreboot.
|
||||||
|
|
||||||
|
## ECC DRAM
|
||||||
|
|
||||||
|
When `mrc.bin` has finished executing, ECC is active on the channels
|
||||||
|
populated with ECC DIMMs. However, `mrc.bin` was tailored specifically
|
||||||
|
for Haswell Chromebooks and Chomeboxes, none of which support ECC DRAM.
|
||||||
|
While ECC likely functions correctly, it is advised to further validate
|
||||||
|
the correct operation of ECC if data integrity is absolutely critical.
|
|
@ -4,4 +4,5 @@ This section contains documentation about coreboot on specific Intel Northbridge
|
||||||
|
|
||||||
## Platforms
|
## Platforms
|
||||||
|
|
||||||
|
- [Haswell](haswell/index.md)
|
||||||
- [Sandy Bridge](sandybridge/index.md)
|
- [Sandy Bridge](sandybridge/index.md)
|
||||||
|
|
Loading…
Reference in New Issue