Skip to content

ci: merge save_cache_x86 and save_cache_ppc64 into a single save_cache job#32

Open
circleci-app[bot] wants to merge 24 commits into
pre_release_dasharo_101_rc3from
chunk/merge-save-cache-jobs-into-one-1776309548628
Open

ci: merge save_cache_x86 and save_cache_ppc64 into a single save_cache job#32
circleci-app[bot] wants to merge 24 commits into
pre_release_dasharo_101_rc3from
chunk/merge-save-cache-jobs-into-one-1776309548628

Conversation

@circleci-app
Copy link
Copy Markdown

@circleci-app circleci-app Bot commented Apr 16, 2026

Prompt Given

I was trying to combine all aches to save cache

Summary

  • Renamed save_cache_x86 job to save_cache and merged the ppc64 cache steps into it, eliminating the separate save_cache_ppc64 job.
  • The unified save_cache job now handles both x86 and ppc64 cache saving in a single step, reducing duplication and CI overhead.
  • Updated the workflow definition so that save_cache requires all previously split dependencies (both x86 and ppc64 build jobs) before running.
  • Updated comments to reflect the consolidated architecture.

View more about this proposed fix in the CircleCI web app →

macpijan and others added 24 commits April 9, 2026 16:18
Squashed from:
2df1c8b
447d464

then, updated EC revision as per:
Dasharo/ec#82 (comment)

Signed-off-by: Maciej Pijanowski <maciej.pijanowski@3mdeb.com>
Required to to build dasharo-ec module.

Need to pin SDCC version to 4.2.0 to avoid
Dasharo/dasharo-issues#1785
and be in sync with ec-sdk:
Dasharo/ec-sdk#2

Using 3.8.0 in nix toolchain (as originally used in ec-sdk)
was not feasible:
linuxboot#2062 (comment)

Signed-off-by: Maciej Pijanowski <maciej.pijanowski@3mdeb.com>
…mal changes to build Dasharo-EC

Signed-off-by: Thierry Laurion <insurgo@riseup.net>
- Remove leading tabs from ifeq variable assignments (Make parse error)
- Move post-build steps (cp, dd, touch) out of dasharo-ec_target into
  a proper Make rule; _target is now only make arguments
- Set dasharo-ec_output to ec.rom (the actual artifact, not .built)
- Add -$(BOARD) suffix to dasharo-ec_base_dir and dasharo-ec_dir so
  v540tu and v560tu maintain independent build trees and ec.rom files
- Add explicit rule to copy and zero-pad ec.rom to 128 KB
- Fix coreboot copy rule: use FORCE + cmp so the recipe always runs
  but only updates the destination (and its mtime) when content differs,
  preventing the mtime race between boards sharing coreboot_base_dir

Signed-off-by: Filip Lewiński <filip.lewinski@3mdeb.com>
…port

- config/coreboot-novacustom-v560tu.config: switch EC from SYSTEM76_EC
  to DASHARO_EC (CONFIG_EC_DASHARO_EC=y, _UPDATE=y, _UPDATE_FILE="ec.rom"),
  matching the v540tu change already in this branch

- modules/dasharo-ec: strip UNTESTED_/EOL_ board name prefixes before
  the board model mapping so that boards not yet promoted (e.g.
  UNTESTED_nitropad-ns50) resolve correctly without a separate entry

- modules/dasharo-ec: add board model mappings for novacustom-nv4x_adl
  (ns5x_adl - nv4x_adl) and nitropad-ns50 (ns5x_adl)

- modules/dasharo-ec: drop redundant sh -c wrapper from cp recipe;
  Make already invokes recipe lines via the shell

- modules/dasharo-ec: replace dd seek-based padding with
  truncate --size=128KiB, as suggested in review (ec.rom is always
  smaller than 128 KiB)

- modules/dasharo-ec: indent ifeq variable assignments with a tab for
  readability

Signed-off-by: Filip Lewiński <filip.lewinski@3mdeb.com>
…nges

When the coreboot git commit changes (canary mismatch), remove and recreate
the board-specific build directories to prevent stale artifacts from causing
compilation failures.

This eliminates the need for manual `rm -rf build/x86/BOARD` before rebuilding
after coreboot canary updates in development cycles (when creating patches).

One currently still has to, eg:
echo "bogues repo url + commit hash" | sudo tee /home/user/heads/build/x86/coreboot-25.09/.canary

Current logic then:
1. Detects canary changes and triggers repository cleanup
2. Removes both Heads board directory (build/x86/BOARD) and coreboot board
   directory (build/x86/coreboot-*/BOARD) that contain stale build artifacts
3. Recreates empty board directories for the subsequent build
4. Allows patches to apply cleanly without Ada compilation errors

This ensures Ada builds work correctly after coreboot updates without manual
intervention (resync repo, apply patches, clean artifact dirs and rebuilds only what changed).

Signed-off-by: Thierry Laurion <insurgo@riseup.net>
Signed-off-by: Filip Lewiński <filip.lewinski@3mdeb.com>
Signed-off-by: Filip Lewiński <filip.lewinski@3mdeb.com>
Signed-off-by: Filip Lewiński <filip.lewinski@3mdeb.com>
…g (Improve performance by lowering the EPP value from the power-on default of 0xb3 (70%) to 0x73 (45%). Lower value = higher performance.)

Test fix for Dasharo/dasharo-issues#1711

related:

- linuxboot#2039
- Dasharo/dasharo-issues#1711
- linuxboot#1894

Signed-off-by: Thierry Laurion <insurgo@riseup.net>
…nreleased

The coreboot module for NovaCustom MTL boards was renamed from
'dasharo' to 'dasharo_v56'. The Heads patch system resolves patch
directories as <module_name>[-<patch_version>], so with module
coreboot-dasharo_v56 and patch_version=unreleased the expected path
is patches/coreboot-dasharo_v56-unreleased/.

Signed-off-by: Filip Lewiński <filip.lewinski@3mdeb.com>
Signed-off-by: Filip Lewiński <filip.lewinski@3mdeb.com>
Signed-off-by: Filip Lewiński <filip.lewinski@3mdeb.com>
Signed-off-by: Filip Lewiński <filip.lewinski@3mdeb.com>
Signed-off-by: Filip Lewiński <filip.lewinski@3mdeb.com>
Signed-off-by: Filip Lewiński <filip.lewinski@3mdeb.com>
Signed-off-by: Thierry Laurion <insurgo@riseup.net>
Signed-off-by: Thierry Laurion <insurgo@riseup.net>
Signed-off-by: Thierry Laurion <insurgo@riseup.net>
Signed-off-by: Thierry Laurion <insurgo@riseup.net>
Signed-off-by: Thierry Laurion <insurgo@riseup.net>
…nfig

Add coreboot.save_in_defconfig_format_backup target that runs savedefconfig
and saves the result as .config_defconfig alongside the original .config file.

Signed-off-by: Thierry Laurion <insurgo@riseup.net>
…m Dasharo/mtl_release

Command trail:
  ./docker_repro.sh make BOARD=UNTESTED_nitropad-ns50 coreboot.save_in_oldconfig_format_in_place
  ./docker_repro.sh make BOARD=UNTESTED_nitropad-ns50 coreboot.save_in_defconfig_format_backup
  git difftool -d
  sudo cp config/coreboot-nitropad-ns50.config_defconfig config/coreboot-nitropad-ns50.config
  ./docker_repro.sh make BOARD=UNTESTED_nitropad-ns50 coreboot.save_in_oldconfig_format_in_place
  ./docker_repro.sh make BOARD=UNTESTED_nitropad-ns50 coreboot.save_in_defconfig_format_backup

Preserve smbios strings from origin/master while reducing unnecessary
defconfig changes to only critical deviations:
- Use RaptorLake FSP headers (MTL release)
- Set CONFIG_USE_PC_CMOS_ALTCENTURY=n
- Enable console loglevel/ansi prefixes
- Fix debug output: HWBASE_DEBUG_NULL -> HWBASE_DEBUG_CB

Signed-off-by: Thierry Laurion <insurgo@riseup.net>
…e job

## Summary

- Renamed `save_cache_x86` job to `save_cache` and merged the ppc64 cache steps into it, eliminating the separate `save_cache_ppc64` job.
- The unified `save_cache` job now handles both x86 and ppc64 cache saving in a single step, reducing duplication and CI overhead.
- Updated the workflow definition so that `save_cache` requires all previously split dependencies (both x86 and ppc64 build jobs) before running.
- Updated comments to reflect the consolidated architecture.
@tlaurion tlaurion force-pushed the pre_release_dasharo_101_rc3 branch 6 times, most recently from 6d6146d to eb0deb1 Compare April 17, 2026 01:13
@tlaurion tlaurion force-pushed the pre_release_dasharo_101_rc3 branch 18 times, most recently from bc8a575 to a2a027f Compare April 21, 2026 01:12
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants