docs: Use generate.sh for board bringup

This commit is contained in:
Tim Crawford
2020-06-19 15:03:35 -06:00
committed by Jeremy Soller
parent bc1a6ca25b
commit 9ee2150d43

View File

@ -29,53 +29,21 @@ sudo bash -c 'echo 1 > /sys/bus/pci/rescan'
## Generating required output ## Generating required output
- Create a directory under `model/` The `generate.sh` script will perform most steps for collecting the required
- Create `README.md.in` with basic info about the board data for coreboot and EC firmware development. If regenerating for an existing
- Title should be "\<manufacturer\> \<product\> (\<version\>)" model, it will automatically overwrite the data.
- Generate `coreboot-collector.txt` using [coreboot-collector]
If planning to use System76 EC firmware, perform the following before running:
- Set keyboard backlight to full brightness and white light
- Set display backlight to full brightness
- Set CPU fan to full speed
``` ```
cargo build --release --manifest-path=tools/coreboot-collector/Cargo.toml ./scripts/generate.sh <model> <firmware.rom> [ec.rom]
sudo ./tools/coreboot-collector/target/release/coreboot-collector > models/<model>/coreboot-collector.txt
``` ```
- Generate `gpio.h` and `hda.h` You will additionally need to generate the correct `microcode.rom` for the CPU
family from the private [intel-microcode] repo.
```
./scripts/coreboot-gpio.sh models/<model>/coreboot-collector.txt > models/<model>/gpio.h
./scripts/coreboot-hda.sh models/<model>/coreboot-collector.txt > models/<model>/hda.h
```
- Extract the flash descriptor and Intel ME
```
make -C coreboot/util/ifdtool
coreboot/util/ifdtool/ifdtool -x <bios_image>
mv flashregion_0_flashdescriptor.bin models/<model>/fd.rom
mv flashregion_2_intel_me.bin models/<model>/me.rom
rm -f flashregion_*.bin
```
- If using the proprietary EC firmware, add it as `ec.rom`
- Otherwise, generate `ecspy.txt`
- Set keyboard backlight to full brightness, white color
- Set display backlight to full brightness
- Set fans to full speed
```
cargo build --release --manifest-path=ec/ecspy/Cargo.toml
sudo ./ec/ecspy/target/release/ecspy > models/<model>/ecspy.txt
# Strip EC RAM entries
sed -i '/^0x/d' models/<model>/ecspy.txt
```
- Generate `microcode.rom` from the private [intel-microcode] repo
- Generate the READMEs
```
./scripts/readmes.sh
```
## Porting coreboot ## Porting coreboot
@ -103,5 +71,4 @@ firmware-open (e.g., `galp3-c` used for `galp4`).
If the proprietary EC was previously used, remove `ec.rom` and regenerate the If the proprietary EC was previously used, remove `ec.rom` and regenerate the
READMEs. READMEs.
[coreboot-collector]: https://github.com/system76/coreboot-collector
[intel-microcode]: https://github.com/system76/intel-microcode [intel-microcode]: https://github.com/system76/intel-microcode