850 Commits

Author SHA1 Message Date
Tim Crawford
15016a0ccd coreboot: Fix CMOS options checksum
Caching ramtop does not update the checksum, causing CMOS options to not
work. Fixes CSME not being disabled on first boot.

Signed-off-by: Tim Crawford <tcrawford@system76.com>
2024-04-29 08:36:02 -06:00
Daniel Sutton
4b32a3e9f5
Add Debian and Fedora dependencies (#541)
Add Debian (pkgconf/libssl-dev) and Fedora (openssl-devel) dependencies for firmware build.
2024-04-17 11:40:51 -06:00
Jeremy Soller
2c6913bc0a
lemp13: Update coreboot to fix power LED flicker 2024-03-25 14:30:56 -06:00
Jeremy Soller
0456f19d21
lemp13: Update coreboot to fix security screen 2024-03-22 10:32:59 -06:00
Jeremy Soller
bf2eee4fea
Update firmware-update 2024-03-21 18:56:18 -06:00
Tim Crawford
263c8ffd1e oryp12: Fix certification issues
- coreboot: Disable AER on TBT port to avoid UnsupReq error
- ec: Select the correct smart charger to fix charging issue

Signed-off-by: Tim Crawford <tcrawford@system76.com>
2024-03-21 14:40:50 -06:00
Jeremy Soller
f18364f358
lemp13: Update coreboot to fix memory init 2024-03-21 11:48:02 -06:00
Tim Crawford
ce7315a0f9 oryp12: Enable security
Signed-off-by: Tim Crawford <tcrawford@system76.com>
2024-03-19 17:50:58 -06:00
Tim Crawford
bb2d84c152 jenkins: Add addw4, lemp13, oryp12
Signed-off-by: Tim Crawford <tcrawford@system76.com>
2024-03-19 15:38:57 -06:00
Tim Crawford
c1e0662679 oryp12: Update coreboot, ec
Signed-off-by: Tim Crawford <tcrawford@system76.com>
2024-03-19 15:38:57 -06:00
Tim Crawford
d5af945751 oryp12: Update CSME
- Disable Boot Guard
- Disable PTT
- Disable locking the descriptor

Signed-off-by: Tim Crawford <tcrawford@system76.com>
2024-03-19 15:38:57 -06:00
Tim Crawford
241570f50a oryp12: Add Oryx Pro 12
Signed-off-by: Tim Crawford <tcrawford@system76.com>
2024-03-19 15:38:57 -06:00
Jeremy Soller
14aee2d11a Add lemp13 2024-03-19 13:28:33 -06:00
Jeremy Soller
bd4d0333b6 Use rsync to transfer firmware to spipi 2024-03-19 13:28:33 -06:00
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