device/pciexp: Add hot-plug capable helper function
[coreboot2.git] / Documentation / mainboard / gigabyte / ga-h61m-s2pv.md
blob824026fe726bed3b8778132faeaadf4557d91ba3
1 # Gigabyte GA-H61M-S2PV
3 This page describes how to run coreboot on the [Gigabyte GA-H61M-S2PV] desktop
4 from [Gigabyte].
6 ## Flashing coreboot
8 ```{eval-rst}
9 +---------------------+------------+
10 | Type                | Value      |
11 +=====================+============+
12 | Socketed flash      | No         |
13 +---------------------+------------+
14 | Model               | MX25L3206E |
15 +---------------------+------------+
16 | Size                | 4 MiB      |
17 +---------------------+------------+
18 | In circuit flashing | No         |
19 +---------------------+------------+
20 | Package             | SOIC-8     |
21 +---------------------+------------+
22 | Write protection    | No         |
23 +---------------------+------------+
24 | Dual BIOS feature   | Yes        |
25 +---------------------+------------+
26 | Internal flashing   | Yes        |
27 +---------------------+------------+
28 ```
30 ### Internal programming
32 The main SPI flash can be accessed using [flashrom]. The DualBIOS backup flash
33 chip is accessible as well using the `dualbiosindex` programmer parameter.
34 Since the flash recovery mechanism works even with coreboot installed on the
35 main flash chip (it still restores the vendor UEFI though), it is useful to
36 leave the backup chip untouched.
38 ### Notes about the original firmware
40 The original IFD defines the BIOS region as the whole flash chip. While this is
41 not an issue if flashing a complete image, it confuses flashrom and trashes the
42 flash chip's contents when using the `--ifd` option. A possible workaround is
43 to create a `layout.txt` file with a non-overlapping BIOS region:
45         00000000:00000fff fd
46         00180000:003fffff bios
47         00001000:0017ffff me
49 After that, use flashrom with the new layout file. For example, to create a
50 backup of the BIOS region and then flash a `coreboot.rom`, do:
52 ```bash
53 sudo flashrom -p internal -l layout.txt -i bios -r backup.rom
54 sudo flashrom -p internal -l layout.txt -i bios -w coreboot.rom
55 ```
57 Modifying the IFD so that the BIOS region does not overlap would work as well.
58 However, this makes DualBIOS unable to recover from a bad flash for some reason.
60 ## Technology
62 ```{eval-rst}
63 +------------------+--------------------------------------------------+
64 | Northbridge      | :doc:`../../northbridge/intel/sandybridge/index` |
65 +------------------+--------------------------------------------------+
66 | Southbridge      | bd82x6x                                          |
67 +------------------+--------------------------------------------------+
68 | CPU              | model_206ax                                      |
69 +------------------+--------------------------------------------------+
70 | SuperIO          | ITE IT8728F                                      |
71 +------------------+--------------------------------------------------+
72 | EC               | None                                             |
73 +------------------+--------------------------------------------------+
74 | Coprocessor      | Intel ME                                         |
75 +------------------+--------------------------------------------------+
76 ```
78 [Gigabyte GA-H61M-S2PV]: https://www.gigabyte.com/us/Motherboard/GA-H61M-S2PV-rev-10
79 [Gigabyte]: https://www.gigabyte.com
80 [flashrom]: https://flashrom.org/Flashrom