docs: Add recommended hardware for porting

This commit is contained in:
Tim Crawford
2020-09-09 10:33:12 -06:00
committed by Jeremy Soller
parent 6c8d87381a
commit 124c9fd887

View File

@ -5,22 +5,37 @@ BIOS ROM, the schematics for the system, and, if porting System76 EC, the EC
specification document. While the BIOS ROM is available from the manufacturer,
board schematics and EC specification typically require NDAs to access.
## Recommended hardware
The presence of hardware will affect the output of the script used to generate
the GPIO configuration for coreboot. It is recommended to have enough spare
hardware to fill all available slots on the motherboard. This includes RAM
modules, SATA drives, and M.2 modules. If the system has a Thunderbolt port, a
dock will also be useful for verifying Thunderbolt and PCIe hotplug
functionality.
These should be ready before attempting to boot a new port:
- An [external programmer][external-programmer]; for flashing the BIOS chip
- A [Mega 2560][mega2560]; for flashing the EC and debug logging
## Configuring the system
Before starting the porting process, the system should be configured to
enable as many devices as possible to provide a more complete output for
coreboot.
1. Boot into the proprietary BIOS
2. Enable things such as
1. If the motherboard has open slots (RAM, M.2, SATA), fill them
2. Boot into the proprietary BIOS
3. Enable things such as
- TPM
- Network stack
- VT-d
3. Disable the Intel Management Engine (IME) if possible
4. Exit, saving changes
5. If the system is a laptop, connect to AC power with the adapter
6. If the device has a Thunderbolt port, attach and authorize a TBT device
7. If the device has a dGPU, ensure it present on the PCI bus
4. Disable the Intel Management Engine (IME) if possible
5. Exit, saving changes
6. If the system is a laptop, connect to AC power with the adapter
7. If the device has a Thunderbolt port, attach and authorize a TBT device
8. If the device has a dGPU, ensure it present on the PCI bus
- On Pop!\_OS, switch to NVIDIA graphics mode
```
@ -69,4 +84,6 @@ echo "BOARD=system76/<model>" > models/<model>/ec.config"
If the proprietary EC was previously used, remove `ec.rom` and regenerate the
READMEs.
[external-programmer]: ./flashing.md#external-programmer
[intel-microcode]: https://github.com/system76/intel-microcode
[mega2560]: https://github.com/system76/ec/blob/master/doc/mega2560.md