836 Commits

Author SHA1 Message Date
Jeremy Soller
0c0980f11b Add intel-spi submodule 2024-03-19 13:28:33 -06:00
Jeremy Soller
f8ba050684 Update submodules 2024-03-19 13:28:33 -06:00
Tim Crawford
604f6629bc scripts: Remove explicit rustup self update
Commit 7d6a15e63c95 ("Convert toolchain file to TOML syntax") switched
from the bare toolchain file to the TOML-based one for better management
of the toolchain and components used.

Commit cf7fc2c540d5 ("scripts: Update rustup or inform user of env
vars") added an explicit `rustup self update` because there were still
cases, a year later, of people not having a rustup new enough to support
the TOML-based toolchain file.

Now 2 years after that, it should be safe to drop the explicit self
update. The TOML format has widespread adoption and rustup now self
updates by default. This should allow distro-provided rustup, which
disables the self update feature, to work if it is already installed in
place of the one downloaded from https://rustup.rs.

Signed-off-by: Tim Crawford <tcrawford@system76.com>
2024-03-18 14:20:15 -06:00
Jeremy Soller
4e3ade88d5
Update EC to improve fan curve for addw4 2024-03-11 08:55:52 -06:00
Tim Crawford
6f9bda722f
addw4: Update coreboot, ec
Signed-off-by: Tim Crawford <tcrawford@system76.com>
2024-03-08 07:59:48 -07:00
Tim Crawford
869f48eb66
apps: Update firmware-setup
Signed-off-by: Tim Crawford <tcrawford@system76.com>
2024-03-08 07:59:43 -07:00
Tim Crawford
b8f5c020dd
apps: Update gop-policy
Signed-off-by: Tim Crawford <tcrawford@system76.com>
2024-03-08 07:57:06 -07:00
Tim Crawford
13a2646415
apps: Update firmware-update
- Do cold reboot on success instead of shutting down
- Reboot on success after flashing all components
- Do not boot to firmware setup after MeSet
- Flash full EC ROM size instead of hard-coding to 128K
- Add addw4, lemp13, oryp12

Signed-off-by: Tim Crawford <tcrawford@system76.com>
2024-03-08 07:57:06 -07:00
Tim Crawford
a5437552e7
addw4: Update CSME
- Disable Boot Guard
- Disable PTT
- Disable locking the descriptor

Signed-off-by: Tim Crawford <tcrawford@system76.com>
2024-03-08 07:57:06 -07:00
Tim Crawford
9fe3a51ae3
addw4: Add Adder WS 4
Signed-off-by: Tim Crawford <tcrawford@system76.com>
2024-03-08 07:57:06 -07:00
Tim Crawford
7a60055f68 docs: Update CSME note about S0ix/TGL-U
CSME should be enabled when S0ix is used for power savings during
suspend. TGL-U is just one case where we default as our TGL-U models
do not support S3. Other models may use S0ix as well, such as darp8 and
darp9 due to new batches just not working with S3 anymore [1].

[1]: https://github.com/system76/firmware-open/issues/507

Signed-off-by: Tim Crawford <tcrawford@system76.com>
2024-03-01 12:36:53 -07:00
Tim Crawford
120c2fd271 coreboot: Fix RTC being reset on boot
Cherry-pick the following upstream commits:

- coreboot/coreboot@fb401e74da: soc/intel/alderlake: Sync UPD Usb4CmMode with Kconfig
- coreboot/coreboot@961ed9fe27: soc/intel/adl: Set slp-s0 counter frequency
- coreboot/coreboot@377845a9d4: soc/intel/tigerlake: Fix processor hang while plug unplug of TBT device
- coreboot/coreboot@354a54ac84: soc/intel/tigerlake: Remove IOM Mctp command from TCSS ASL
- coreboot/coreboot@adf042f6c6: lib/rtc: Fix off-by-one error in February day count in leap year

This also brings in the WIP addw4, but that will documented in the PR
that adds full support for the board.

Signed-off-by: Tim Crawford <tcrawford@system76.com>
2024-03-01 08:49:37 -07:00
Tim Crawford
0c3997ffb7 gaze16-3060-b: Fix CSME CLKOUT config
The CLKOUT config in FIT was misconfigured using the gaze16-3050 config.

Signed-off-by: Tim Crawford <tcrawford@system76.com>
2024-03-01 08:30:11 -07:00
Tim Crawford
7ab8b93ef3 gaze16-3060-b: Disable coreboot logging to EC
The config has been enabled since the board was added.

Signed-off-by: Tim Crawford <tcrawford@system76.com>
2024-03-01 08:30:11 -07:00
Tim Crawford
6aa0c14bbf models: Remove bonw14 HDA header
Commit 77581d11fcda ("models: Remove generated C files") removed the HDA
and GPIO files, but bonw14 had an odd named file that was not removed
with the `find` command.

Signed-off-by: Tim Crawford <tcrawford@system76.com>
2024-02-29 08:11:41 -07:00
Tim Crawford
7a2d4da31f docs: Move info from README to docs/
Signed-off-by: Tim Crawford <tcrawford@system76.com>
2024-02-28 13:22:54 -07:00
Tim Crawford
cab3891487 docs: Build with mdBook
Signed-off-by: Tim Crawford <tcrawford@system76.com>
2024-02-28 13:22:54 -07:00
Tim Crawford
6407caab03 edk2: Fix building with GCC 11+
Signed-off-by: Tim Crawford <tcrawford@system76.com>
2024-02-28 13:13:10 -07:00
Tim Crawford
b2416c4d01 Update coreboot to 24.02
Since 4.19-based releases took so long, we are already at the next
coreboot release. Update to this release for the slew of MTL fixes.

Signed-off-by: Tim Crawford <tcrawford@system76.com>
2024-02-28 13:13:10 -07:00
Tim Crawford
77581d11fc models: Remove generated C files
These files are generated while running proprietary firmware, but once
they are added to coreboot they are no longer needed. They also quickly
become stale as the files are always changed in coreboot.

    find models/ -name gpio.h -exec rm {} \;
    find models/ -name hda_verb.c -exec rm {} \;

Signed-off-by: Tim Crawford <tcrawford@system76.com>
2024-02-28 13:10:55 -07:00
Tim Crawford
e4960f163e scipts: Add the HDA reset verb to the generated file
I always add HDA reset to the coreboot file when upstreaming, so just
have the script do it.

- Proprietary firmware does it
- It fixed audio init on oryp5

Signed-off-by: Tim Crawford <tcrawford@system76.com>
2024-02-28 13:10:55 -07:00
Tim Crawford
c4b9a727c4 scripts: Update GPIO file generated for coreboot
The use of `gpio.h` has been replaced with `gpio.c` for a while.

Signed-off-by: Tim Crawford <tcrawford@system76.com>
2024-02-28 13:10:55 -07:00
Tim Crawford
269b537c00 docs: Update note about coreboot config
The whole coreboot generated `.config` has not been used since
ff0a27ad9c60 ("Use defconfig to generate .config"). The required
`coreboot.config` is much simpler now and can usually just be copied
from another model.

Signed-off-by: Tim Crawford <tcrawford@system76.com>
2024-02-21 07:35:52 -07:00
Tim Crawford
7d5a50d26b Remove devicetree script
This script is stale. It hasn't worked since TGL and only produced a few
useful values. The format of devicetree.cb also continues to change with
each SoC generation.

The removal of devmem2 should also fix setup on Debian, which does not
package it.

Signed-off-by: Tim Crawford <tcrawford@system76.com>
2024-02-21 07:35:52 -07:00
Tim Crawford
85896eca39 jenkins: Sync submodules
Always sync submodules before the SCM step to handle coreboot adding
new submodules. This is needed because coreboot uses relative paths for
submodules, so git tries to clone it from the System76 GitHub
organization. We are not mirroring submodules and want to clone from
gerrit.

Signed-off-by: Tim Crawford <tcrawford@system76.com>
2024-02-05 11:02:11 -07:00
Tim Crawford
1cbe7576ee Remove old RPL FSPs
Remove the local copy of the RPL FSPs as they are no longer used.

Signed-off-by: Tim Crawford <tcrawford@system76.com>
2024-02-05 11:02:11 -07:00
Tim Crawford
4618f2b0ed Update coreboot to 4.22
As part of this, the RPL boards now use the client FSP release from
Intel's public repo [1].

[1]: https://github.com/intel/fsp

Signed-off-by: Tim Crawford <tcrawford@system76.com>
2024-02-05 11:02:11 -07:00
Tim Crawford
3812485a04 scripts: Make FIRMWARE_OPEN_MODEL_DIR relative
coreboot expects paths to be relative to it, and vboot breaks include
paths that are absolute. Fixes compilation failing due to the addition
of `-Wmissing-include-dirs`.

Ref: https://review.coreboot.org/c/coreboot/+/70251
Signed-off-by: Tim Crawford <tcrawford@system76.com>
2024-02-05 11:02:11 -07:00
Tim Crawford
3e19b73397 darp9: Add SSD RTD3 configs
Fixes suspend with the following drives:

- Kingston KC3000 (SKC3000D/4096G)
- Kingston HyperX (SHPM2280P2H/240G)
- Solidigm P44 Pro (SSDPFKKW010X7)

Signed-off-by: Tim Crawford <tcrawford@system76.com>
2024-01-18 14:39:29 -07:00
Tim Crawford
6c402c3e17 darp8,darp9: Use S0ix by default
Avoid the issue on new boards where the PCH will not de-assert the
`PLTRST#` virtual wire on S3 resume, causing the unit to hang.

Signed-off-by: Tim Crawford <tcrawford@system76.com>
2024-01-10 14:06:47 -07:00
Tim Crawford
6f1e65308e docs: Update note about Secure Boot support
Secure Boot support is enabled. Make it clear in the doc that it was
enabled so Windows could be installed, and not as a means for securing
the system.

Signed-off-by: Tim Crawford <tcrawford@system76.com>
2023-12-12 11:45:08 -07:00
Tim Crawford
2e4e34bf83 coreboot: Fix bonw15, oryp11 speaker output
Signed-off-by: Tim Crawford <tcrawford@system76.com>
2023-10-20 15:06:52 -06:00
Tim Crawford
968a612824 scripts: Address shellcheck issues
Report issues by shell files with:

    git ls-files '*.sh' | xargs shellcheck --exclude=SC2162

Address the following:

- SC1087: Use braces when expanding arrays
- SC1091: Not following
- SC2004: `$`/`${}` is unnecessary on arithmetic variables
- SC2024: `sudo` doesn't affect redirects
- SC2034: foo appears unused. Verify it or export it
- SC2086: Double quote to prevent globbing and word splitting
- SC2087: Quote `EOF`
- SC2115: Use `"${var:?}"` to ensure this never expands to `/*`
- SC2148: Add a shebang

Addresses (at least partially) some POSIX/dash issues:

- SC2113: `function` keyword is non-standard
- SC3010: In POSIX sh, `[[` `]]` is undefined
- SC3014: In POSIX sh, `==` in place of `=` is undefined
- SC3020: In POSIX sh, `&>` is undefined
- SC3046: In POSIX sh, `source` in place of `.` is undefined

Does not address:

- SC2162: `read` without `-r` will mangle backslashes
- Any other POSIX/dash-specific issues

Signed-off-by: Tim Crawford <tcrawford@system76.com>
2023-10-19 14:45:22 -06:00
Tim Crawford
aa32ba26e1 coreboot: Fix LTR for card reader on TGL-U boards
Signed-off-by: Tim Crawford <tcrawford@system76.com>
2023-10-19 08:08:52 -06:00
Tim Crawford
38b6bdc6e9 Update Rust apps for new toolchain
Signed-off-by: Tim Crawford <tcrawford@system76.com>
2023-10-19 08:08:11 -06:00
Tim Crawford
48079c3de2 Update Rust toolchain to 2023-09-07
Signed-off-by: Tim Crawford <tcrawford@system76.com>
2023-10-19 08:08:11 -06:00
Tim Crawford
b379c94b76 Split building coreboot toolchains to a separate file
Specify dependencies specifically for building coreboot toolchains in
the file, so they are not conflated with the dependencies required for
building firmware-open.

Remove building the toolchain when building firmware, so that the new
script is the single source for building coreboot toolchains.

Signed-off-by: Tim Crawford <tcrawford@system76.com>
2023-10-19 08:08:02 -06:00
Tim Crawford
5fb1624187 Set and use XGCCPATH
Allow overriding the coreboot toolchain location with `XGCCPATH` so
that xgcc can be installed to a separate location, such as `/opt`.

Signed-off-by: Tim Crawford <tcrawford@system76.com>
2023-10-19 08:07:39 -06:00
Tim Crawford
5d997d1c41 coreboot: Fix OZ711LV2 LTR for galp5 3050 variant
Fix programming the LTR so that CPU can reach C-states deeper than C2.

Signed-off-by: Tim Crawford <tcrawford@system76.com>
2023-10-13 11:30:05 -06:00
Tim Crawford
c1dafbbfad scripts: Always set EC build dir
Building EC was broken as the build output from the previous board was
not being cleaned. `BUILD` is now always set, defaulting to "build",
instead of only when `BOARD` is specified. For good measure, add it
to the clean command in case a custom path is used.

Fixes: 569321f9ac79 ("scripts: Set EC build dir")
Signed-off-by: Tim Crawford <tcrawford@system76.com>
2023-10-12 13:27:55 -06:00
Tim Crawford
c4df2f4005 ec: Fix lock up during opportunistic suspend
Fix a potential lock up during S0ix opportunistic suspend, caused by
waiting indefinitely for a PECI command to complete when it is not
available.

Signed-off-by: Tim Crawford <tcrawford@system76.com>
2023-10-12 09:36:10 -06:00
Tim Crawford
569321f9ac scripts: Set EC build dir
Specify the EC build directory so that it does not require the model or
version to be determined in the script.

Signed-off-by: Tim Crawford <tcrawford@system76.com>
2023-10-11 19:05:16 -06:00
Tim Crawford
b22e8dee41 scripts: Split installing Rust to its own script
Signed-off-by: Tim Crawford <tcrawford@system76.com>
2023-10-03 14:04:54 -06:00
Tim Crawford
51e3e1a53a Jenkins: Misc changes
- Use `GIT_COMMIT` instead of stashing the commit
- Do not shadow built-in `GIT_BRANCH` variable with a parameter
- Update `scmGit` config based on docs

Signed-off-by: Tim Crawford <tcrawford@system76.com>
2023-10-02 09:51:15 -06:00
Tim Crawford
16ef69cb45 coreboot: rpl-hx: Add support for 5600 MHz RAM
Allow using 5600 MHz RAM on addw3, bonw15, and serw13.

Signed-off-by: Tim Crawford <tcrawford@system76.com>
2023-09-19 14:49:54 -06:00
Tim Crawford
42bf7a65d9 Update coreboot and ec
- coreboot: Fixed SMMSTORE init sometimes failing
- ec: Increased key debounce from 5ms to 10ms

Signed-off-by: Tim Crawford <tcrawford@system76.com>
2023-09-08 16:52:38 -04:00
Tim Crawford
5a9565a684 adl: Update CSME to 16.1.25.2124
Generate new CSME images from ADL-P MR5 BKC (Kit 766225).

Signed-off-by: Tim Crawford <tcrawford@system76.com>
2023-09-07 10:34:31 -06:00
Tim Crawford
52f6d72713 docs: Add note about checking CSME state
I had forgotten that CSME reporting an error was normal when disabled.
Document what is should report when enabled/disabled.

Signed-off-by: Tim Crawford <tcrawford@system76.com>
2023-09-07 10:24:10 -04:00
Tim Crawford
5844541031 jenkins: Add build duration to Slack notifications
The scripted projects using the default Slack notifications settings
report the time the build took. Add it to the declarative jobs as well.

Signed-off-by: Tim Crawford <tcrawford@system76.com>
2023-08-30 16:46:30 -04:00
Jeremy Soller
81731199f2 Update coreboot and changelog 2023-08-23 14:04:40 -06:00