Remove relying on rustup updating PATH, because it only works for login
shells. Fixes building from the host with a volume mounted.
Signed-off-by: Tim Crawford <tcrawford@system76.com>
- Update image to debian:bookworm-20250520-slim
- Update coreboot to 25.03
- Use repo commit as tag
Signed-off-by: Tim Crawford <tcrawford@system76.com>
Disable feature as it causing GPU to fail under load, such as running
FurMark as part of Phoronix Test Suite.
Signed-off-by: Tim Crawford <tcrawford@system76.com>
Does Groovy parse the running script line-by-line? Apparently, `+` must
exist on the starting line for it to know that the next line is a
continuation.
Fixes: 99ffbf9bdb ("jenkins: Add darp11, darp11-b")
Signed-off-by: Tim Crawford <tcrawford@system76.com>
The NASM website has been offline for days. Use the coreboot mirror to
fix building the toolchain.
Signed-off-by: Tim Crawford <tcrawford@system76.com>
The USB image is not a required output, but becomes half of the total
size of the build artifacts as it creates copies of the firmware images.
Move the logic to a separate script so that CI will not contain it, but
users can create the image after building the firmware.
./scripts/build.sh <model>
./scripts/usb.sh <model>
Reduces the size of the ZIP archive created by Jenkins by ~50%.
Signed-off-by: Tim Crawford <tcrawford@system76.com>
- Change dynamic keymap to load/save to last sector of EC flash instead
of a hard-coded address of 128 KiB
- Add persistent battery charging thresholds by writing them to EC flash
- Change fan update interval to 1 second
- Change fan duty calculations to use a moving average of temperatures
over 1 second instead of instantaneous reads
- Add EC support for manual fan control via target PWM
Signed-off-by: Tim Crawford <tcrawford@system76.com>
Set `EFI_PATH` to `/boot/efi` as a default for systems that do not have
bootctl from systemd-boot.
Signed-off-by: Tim Crawford <tcrawford@system76.com>
We don't use coreboot's PAYLOAD_EDK2, so this option is not getting
selected by default. Replaces the stub PPI with the full implementation.
Signed-off-by: Tim Crawford <tcrawford@system76.com>
- Change image from trixie-20240701-slim to bookworm-20241016-slim
- unstable doesn't keep GNAT in sync with GCC, which causes problems
when compiling coreboot SDK
- Update coreboot SDK from 24.02 to 24.08
- Match coreboot submodule base
- Add workaround for bug in rustup 1.27
- Add link to firmware-setup issue to track toolchain blocker
- Put `&&` at beginning of all chained commands for consistency, and to
reduce the diff if commands are added/removed
Locally built image is 3.77 GiB.
Signed-off-by: Tim Crawford <tcrawford@system76.com>
Add a command to create a Debian-based container with the coreboot,
SDCC, and Rust toolchains installed in order to minimize the setup time
of a container-based workflow, such as CI.
make -C containers
podman run -it --rm \
-v $PWD:/workspace:Z \
-v ~/.ccache:/root/.ccache:Z \
system76/firmware-open:latest \
./scripts/build.sh oryp8
A locally built image is 2.46 GiB.
Signed-off-by: Tim Crawford <tcrawford@system76.com>
This change is made separately from the previous commit as it is a
significant change in behavior that affects all laptops. Copying the
message from the EC commit:
> Fan noise is one of the top complaints reported. The existing
> interpolation and smoothing logic has not sufficiently addressed the
> issues with fans changing speeds too quickly in response to rapid
> changes in thermals (particularly from PECI).
>
> This behavior can be observed by with very basic tasks, such as:
>
> - Powering on a system and logging into GNOME
> - Starting a GUI application such as Firefox
>
> Replace them with a fixed step update per event interval. Fans now have
> a maximum amount they change change over time (3.9%/sec) as they move
> towards a target duty.
Signed-off-by: Tim Crawford <tcrawford@system76.com>