diff --git a/docs/adding-a-new-board.md b/docs/adding-a-new-board.md index 0037b4c..1ff0e7f 100644 --- a/docs/adding-a-new-board.md +++ b/docs/adding-a-new-board.md @@ -29,53 +29,21 @@ sudo bash -c 'echo 1 > /sys/bus/pci/rescan' ## Generating required output -- Create a directory under `model/` -- Create `README.md.in` with basic info about the board - - Title should be "\ \ (\)" -- Generate `coreboot-collector.txt` using [coreboot-collector] +The `generate.sh` script will perform most steps for collecting the required +data for coreboot and EC firmware development. If regenerating for an existing +model, it will automatically overwrite the data. + +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 -sudo ./tools/coreboot-collector/target/release/coreboot-collector > models//coreboot-collector.txt +./scripts/generate.sh [ec.rom] ``` -- Generate `gpio.h` and `hda.h` - -``` -./scripts/coreboot-gpio.sh models//coreboot-collector.txt > models//gpio.h -./scripts/coreboot-hda.sh models//coreboot-collector.txt > models//hda.h -``` - -- Extract the flash descriptor and Intel ME - -``` -make -C coreboot/util/ifdtool -coreboot/util/ifdtool/ifdtool -x -mv flashregion_0_flashdescriptor.bin models//fd.rom -mv flashregion_2_intel_me.bin models//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//ecspy.txt -# Strip EC RAM entries -sed -i '/^0x/d' models//ecspy.txt -``` - -- Generate `microcode.rom` from the private [intel-microcode] repo - -- Generate the READMEs - -``` -./scripts/readmes.sh -``` +You will additionally need to generate the correct `microcode.rom` for the CPU +family from the private [intel-microcode] repo. ## 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 READMEs. -[coreboot-collector]: https://github.com/system76/coreboot-collector [intel-microcode]: https://github.com/system76/intel-microcode