mb/google/fatcat: Suppress unnecessary extra space in device trees
[coreboot2.git] / Documentation / mainboard / asrock / h81m-hds.md
blob5cbaa7fc5506d1b0927ea10975232ad457e9d32a
1 # ASRock H81M-HDS
3 This page describes how to run coreboot on the [ASRock H81M-HDS].
5 ## Required proprietary blobs
7 ```{eval-rst}
8 Please see :doc:`../../northbridge/intel/haswell/mrc.bin`.
9 ```
11 ## Building coreboot
13 A fully working image should be possible just by setting your MAC
14 address and obtaining the Haswell mrc. You can set the basic config
15 with the following commands. However, it is strongly advised to use
16 `make menuconfig` afterwards (or instead), so that you can see all of
17 the settings.
19 ```bash
20 make distclean # Note: this will remove your current config, if it exists.
21 touch .config
22 ./util/scripts/config --enable VENDOR_ASROCK
23 ./util/scripts/config --enable BOARD_ASROCK_H81M_HDS
24 ./util/scripts/config --enable HAVE_MRC
25 ./util/scripts/config --set-str REALTEK_8168_MACADDRESS "xx:xx:xx:xx:xx:xx" # Fill this in!
26 make olddefconfig
27 ```
29 If you don't plan on using coreboot's serial console to collect logs,
30 you might want to disable it at this point (`./util/scripts/config
31 --disable CONSOLE_SERIAL`). It should reduce the boot time by several
32 seconds. However, a more flexible method is to change the console log
33 level from within an OS using `util/nvramtool`, or with the `nvramcui`
34 payload.
36 Now, run `make` to build the coreboot image.
38 ## Flashing coreboot
40 ### Internal programming
42 The main SPI flash can be accessed using [flashrom]. By default, only
43 the BIOS region of the flash is writable. If you wish to change any
44 other region, such as the Management Engine or firmware descriptor, then
45 an external programmer is required (unless you find a clever way around
46 the flash protection).
48 The following command may be used to flash coreboot:
50 ```bash
51 sudo flashrom -p internal --ifd -i bios --noverify-all -w coreboot.rom
52 ```
54 The use of `--noverify-all` is required since the Management Engine
55 region is not readable even by the host.
57 ### External programming
59 The flash chip is a 4 MiB socketed DIP-8 chip. Specifically, it's a
60 Winbond W25Q32FV, whose datasheet can be found [here][W25Q32FV].
61 The chip is located to the bottom right-hand side of the board. For
62 a precise location, refer to section 1.4 (Motherboard Layout) of the
63 [board manual], where the chip is labelled "32Mb BIOS". Take note of
64 the chip's orientation, remove it from its socket, and flash it with
65 an external programmer. For reference, the notch in the chip should be
66 facing towards the bottom of the board.
68 ## Known issues
70 - The VGA port doesn't work until the OS reinitialises the display.
72 - There is no automatic, OS-independent fan control. This is because
73   the Super I/O hardware monitor can only obtain valid CPU temperature
74   readings from the PECI agent, but the required driver doesn't exist
75   in coreboot. The `coretemp` driver can still be used for accurate CPU
76   temperature readings from an OS.
78 ```{eval-rst}
79 Please also see :doc:`../../northbridge/intel/haswell/known-issues`.
80 ```
82 ## Untested
84 - parallel port
85 - PS/2 keyboard
86 - EHCI debug
87 - TPM
88 - infrared module
89 - chassis intrusion header
90 - chassis speaker header
92 ## Working
94 - USB
95 - S3 suspend/resume
96 - Gigabit Ethernet
97 - integrated graphics
98 - PCIe
99 - SATA
100 - PS/2 mouse
101 - serial port
102 - hardware monitor (see [Known issues](#known-issues))
103 - onboard audio
104 - front panel audio
105 - initialisation with Haswell mrc version 1.6.1 build 2
106 - graphics init with libgfxinit (see [Known issues](#known-issues))
107 - flashrom under the vendor firmware
108 - flashrom under coreboot
109 - Wake-on-LAN
110 - Using `me_cleaner`
112 ## Technology
114 ```{eval-rst}
115 +------------------+--------------------------------------------------+
116 | Northbridge      | :doc:`../../northbridge/intel/haswell/index`     |
117 +------------------+--------------------------------------------------+
118 | Southbridge      | Intel Lynx Point (H81)                           |
119 +------------------+--------------------------------------------------+
120 | CPU              | Intel Haswell (LGA1150)                          |
121 +------------------+--------------------------------------------------+
122 | Super I/O        | Nuvoton NCT6776                                  |
123 +------------------+--------------------------------------------------+
124 | EC               | None                                             |
125 +------------------+--------------------------------------------------+
126 | Coprocessor      | Intel Management Engine                          |
127 +------------------+--------------------------------------------------+
130 [ASRock H81M-HDS]: https://www.asrock.com/mb/Intel/H81M-HDS/
131 [W25Q32FV]: https://www.winbond.com/resource-files/w25q32fv%20revi%2010202015.pdf
132 [flashrom]: https://flashrom.org/Flashrom
133 [Board manual]: https://web.archive.org/web/20191231093418/http://asrock.pc.cdn.bitgravity.com/Manual/H81M-HDS.pdf