Skip to content

Commit 439eb35

Browse files
committed
Merge remote-tracking branch 'osresearch/master' into HEAD
2 parents 3b66c53 + 2ea14bc commit 439eb35

79 files changed

Lines changed: 1712 additions & 320 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.circleci/config.yml

Lines changed: 62 additions & 73 deletions
Original file line numberDiff line numberDiff line change
@@ -11,41 +11,41 @@ commands:
1111
type: string
1212
steps:
1313
- run:
14-
name: Make Board (console logs not contiguous because multiple CPUS used to build under CircleCI, see logs in artifacts or Output build failing logs below in case of failed step)
14+
name: Make Board (console logs not contiguous because multiple CPUs used to build under CircleCI, see logs in artifacts or Output build failing logs below in case of failed step)
1515
command: |
1616
echo "Sourcing /devenv.sh since docker entrypoint doesn't do it as expected"
1717
source /devenv.sh
18-
rm -rf build/<<parameters.arch>>/<<parameters.target>>/* build/<<parameters.arch>>/log/*
19-
make V=1 BOARD=<<parameters.target>> <<parameters.subcommand>> || touch ./tmpDir/failed_build
18+
rm -rf build/<< parameters.arch >>/<< parameters.target >>/* build/<< parameters.arch >>/log/*
19+
make V=1 BOARD=<< parameters.target >> << parameters.subcommand >> | ts || touch ./tmpDir/failed_build
2020
no_output_timeout: 3h
2121
- run:
2222
name: Output hashes
2323
command: |
24-
cat build/<<parameters.arch>>/<<parameters.target>>/hashes.txt || echo "No hashes.txt for this build step..."
24+
cat build/<< parameters.arch >>/<< parameters.target >>/hashes.txt || echo "No hashes.txt for this build step..."
2525
- run:
2626
name: Output sizes
2727
command: |
28-
cat build/<<parameters.arch>>/<<parameters.target>>/sizes.txt || echo "No sizes.txt for this build step..."
28+
cat build/<< parameters.arch >>/<< parameters.target >>/sizes.txt || echo "No sizes.txt for this build step..."
2929
- run:
3030
name: Archiving build logs.
3131
command: |
32-
tar zcvf build/<<parameters.arch>>/<<parameters.target>>/logs.tar.gz $(find build/ -name "*.log")
32+
tar zcvf build/<< parameters.arch >>/<< parameters.target >>/logs.tar.gz $(find build/ -name "*.log")
3333
- run:
3434
name: Output build failing logs
3535
command: |
3636
if [[ -f ./tmpDir/failed_build ]]; then
37-
find "./build/<<parameters.arch>>/" -name "*.log" -type f -mmin -1 -exec tail -n +1 '{}' +
38-
exit 1
37+
find "./build/<< parameters.arch >>/" -name "*.log" -type f -mmin -1 -exec tail -n +1 '{}' +
38+
exit 1
3939
else
40-
echo "Step hasn't failed. Continuing with next step..."
40+
echo "Step hasn't failed. Continuing with next step..."
4141
fi
4242
- store_artifacts:
43-
path: build/<<parameters.arch>>/<<parameters.target>>
43+
path: build/<< parameters.arch >>/<< parameters.target >>
4444

4545
jobs:
4646
prep_env:
4747
docker:
48-
- image: tlaurion/heads-dev-env:v0.2.0
48+
- image: tlaurion/heads-dev-env:v0.2.1
4949
resource_class: large
5050
working_directory: ~/heads
5151
steps:
@@ -73,7 +73,7 @@ jobs:
7373
- restore_cache:
7474
# First matched/found key wins and following keys are not tried
7575
keys:
76-
# Cache for matching modules digest, validated to be exactly the same as in github current commit.
76+
# Cache for matching modules digest, validated to be exactly the same as in GitHub current commit.
7777
# This cache was made on top of below caches, if previously existing.
7878
# If no module definition changed, we reuse this one
7979
- nix-docker-heads-modules-and-patches-{{ checksum "./tmpDir/all_modules_and_patches.sha256sums" }}{{ .Environment.CACHE_VERSION }}
@@ -111,7 +111,7 @@ jobs:
111111

112112
build_and_persist:
113113
docker:
114-
- image: tlaurion/heads-dev-env:v0.2.0
114+
- image: tlaurion/heads-dev-env:v0.2.1
115115
resource_class: large
116116
working_directory: ~/heads
117117
parameters:
@@ -126,20 +126,20 @@ jobs:
126126
- attach_workspace:
127127
at: ~/heads
128128
- build_board:
129-
arch: <<parameters.arch>>
130-
target: <<parameters.target>>
131-
subcommand: <<parameters.subcommand>>
129+
arch: << parameters.arch >>
130+
target: << parameters.target >>
131+
subcommand: << parameters.subcommand >>
132132
- persist_to_workspace:
133133
root: ~/heads
134134
paths:
135-
- packages/<<parameters.arch>>
136-
- build/<<parameters.arch>>
137-
- crossgcc/<<parameters.arch>>
138-
- install/<<parameters.arch>>
135+
- packages/<< parameters.arch >>
136+
- build/<< parameters.arch >>
137+
- crossgcc/<< parameters.arch >>
138+
- install/<< parameters.arch >>
139139

140140
build:
141141
docker:
142-
- image: tlaurion/heads-dev-env:v0.2.0
142+
- image: tlaurion/heads-dev-env:v0.2.1
143143
resource_class: large
144144
working_directory: ~/heads
145145
parameters:
@@ -160,7 +160,7 @@ jobs:
160160

161161
save_cache:
162162
docker:
163-
- image: tlaurion/heads-dev-env:v0.2.0
163+
- image: tlaurion/heads-dev-env:v0.2.1
164164
resource_class: large
165165
working_directory: ~/heads
166166
steps:
@@ -176,25 +176,21 @@ jobs:
176176
- crossgcc
177177
- packages
178178
- save_cache:
179-
# Generate cache for the same coreboot mnd musl-cross-make modules definition if hash is not previously existing
179+
# Generate cache for the same coreboot and musl-cross-make modules definition if hash is not previously existing
180180
# CircleCI removed their wildcard support, so we have to list precise versions to cache in directory names
181181
key: nix-docker-heads-coreboot-musl-cross-{{ checksum "./tmpDir/coreboot_musl-cross.sha256sums" }}{{ .Environment.CACHE_VERSION }}
182182
paths:
183183
- build/ppc64/coreboot-talos_2
184184
- build/ppc64/musl-cross-38e52db8358c043ae82b346a2e6e66bc86a53bc1
185185
- build/x86/coreboot-4.11
186-
- build/x86/coreboot-4.13
187-
- build/x86/coreboot-4.14
188-
- build/x86/coreboot-4.15
189-
- build/x86/coreboot-4.17
190-
- build/x86/coreboot-4.22.01
191-
- build/x86/coreboot-nitrokey
186+
- build/x86/coreboot-24.02.01
187+
- build/x86/coreboot-dasharo
192188
- build/x86/coreboot-purism
193189
- build/x86/musl-cross-38e52db8358c043ae82b346a2e6e66bc86a53bc1
194190
- crossgcc
195191
- packages
196192
- save_cache:
197-
#Generate cache for the exact same modules definitions if hash is not previously existing
193+
# Generate cache for the exact same modules definitions if hash is not previously existing
198194
key: nix-docker-heads-modules-and-patches-{{ checksum "./tmpDir/all_modules_and_patches.sha256sums" }}{{ .Environment.CACHE_VERSION }}
199195
paths:
200196
- build
@@ -208,16 +204,33 @@ workflows:
208204
jobs:
209205
- prep_env
210206

207+
# This step builds musl-cross for x86 architecture, which will be used by subsequent x86 board builds
208+
- build_and_persist:
209+
name: x86-musl-cross
210+
target: x230-hotp-maximized
211+
subcommand: "musl-cross"
212+
requires:
213+
- prep_env
214+
215+
# This step builds musl-cross for ppc64 architecture, which will be used by subsequent ppc64 board builds
216+
- build_and_persist:
217+
name: ppc64-musl-cross
218+
arch: ppc64
219+
target: talos-2
220+
subcommand: "musl-cross"
221+
requires:
222+
- prep_env
223+
211224
# Below, sequentially build one board for each coreboot version.
212225
# The last board in the sequence is the dependency for the parallel boards built at the end, and also save_cache.
213226

214-
# coreboot 4.22.01
227+
# coreboot 24.02.01
215228
- build_and_persist:
216229
name: x230-hotp-maximized
217230
target: x230-hotp-maximized
218231
subcommand: ""
219232
requires:
220-
- prep_env
233+
- x86-musl-cross
221234

222235
# coreboot purism
223236
- build_and_persist:
@@ -237,7 +250,7 @@ workflows:
237250
target: nitropad-nv41
238251
subcommand: ""
239252
requires:
240-
- prep_env
253+
- x86-musl-cross
241254

242255
# coreboot talos_2
243256
- build_and_persist:
@@ -246,15 +259,15 @@ workflows:
246259
target: talos-2
247260
subcommand: ""
248261
requires:
249-
- prep_env
262+
- ppc64-musl-cross
250263

251264
# coreboot 4.11
252265
- build_and_persist:
253266
name: librem_l1um
254267
target: librem_l1um
255268
subcommand: ""
256269
requires:
257-
- prep_env
270+
- x86-musl-cross
258271

259272
# Cache one workspace per architecture
260273
# Make sure workspace caches are chainloaded and the last in chain for an arch is saved
@@ -263,11 +276,8 @@ workflows:
263276
- talos-2
264277
- librem_14
265278

266-
#
267279
# Those onboarding new boards should add their entries below.
268-
#
269-
270-
# coreboot 4.22.01 boards
280+
# coreboot 24.02.01 boards
271281
- build:
272282
name: x220-hotp-maximized
273283
target: x220-hotp-maximized
@@ -374,8 +384,15 @@ workflows:
374384
- x230-hotp-maximized
375385

376386
- build:
377-
name: UNMAINTAINED_t530-maximized
378-
target: UNMAINTAINED_t530-maximized
387+
name: t530-maximized
388+
target: t530-maximized
389+
subcommand: ""
390+
requires:
391+
- x230-hotp-maximized
392+
393+
- build:
394+
name: t530-hotp-maximized
395+
target: t530-hotp-maximized
379396
subcommand: ""
380397
requires:
381398
- x230-hotp-maximized
@@ -396,15 +413,15 @@ workflows:
396413
- x230-hotp-maximized
397414

398415
- build:
399-
name: w541-maximized
400-
target: w541-maximized
416+
name: UNTESTED_w541-maximized
417+
target: UNTESTED_w541-maximized
401418
subcommand: ""
402419
requires:
403420
- x230-hotp-maximized
404421

405422
- build:
406-
name: w541-hotp-maximized
407-
target: w541-hotp-maximized
423+
name: UNTESTED_w541-hotp-maximized
424+
target: UNTESTED_w541-hotp-maximized
408425
subcommand: ""
409426
requires:
410427
- x230-hotp-maximized
@@ -513,31 +530,3 @@ workflows:
513530
subcommand: ""
514531
requires:
515532
- librem_l1um
516-
517-
# - build:
518-
# name: UNMAINTAINED_kgpe-d16_workstation-usb_keyboard
519-
# target: UNMAINTAINED_kgpe-d16_workstation-usb_keyboard
520-
# subcommand: ""
521-
# requires:
522-
# - UNMAINTAINED_kgpe-d16_workstation
523-
524-
# - build:
525-
# name: UNMAINTAINED_kgpe-d16_server
526-
# target: UNMAINTAINED_kgpe-d16_server
527-
# subcommand: ""
528-
# requires:
529-
# - UNMAINTAINED_kgpe-d16_workstation
530-
531-
# - build:
532-
# name: UNMAINTAINED_kgpe-d16_server-whiptail
533-
# target: UNMAINTAINED_kgpe-d16_server-whiptail
534-
# subcommand: ""
535-
# requires:
536-
# - UNMAINTAINED_kgpe-d16_workstation
537-
538-
# - build:
539-
# name: librem_l1um
540-
# target: librem_l1um
541-
# subcommand: ""
542-
# requires:
543-
# - librem_14

BOARD_TESTERS.md

Lines changed: 55 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,55 @@
1+
Live list of community supported platform testers per last coreboot/linux version bump
2+
==
3+
4+
Heads is a community project, where boards under boards/* need to be tested by board owners when coreboot/linux version bumps happen prior of a Pull Request (PR) merge.
5+
This list will be maintained per coreboot/linux version bumps PRs.
6+
7+
Please see boards/BOARD_NAME/BOARD_NAME.config for HCL details.
8+
9+
----
10+
11+
As per https://github.com/linuxboot/heads/issues/692, currently built CircleCI boards ROMs are:
12+
13+
Laptops
14+
==
15+
16+
xx20 (Sandy):
17+
===
18+
- [ ] t420 (xx20): @alexmaloteaux @natterangell (iGPU) @akfhasodh @doob85
19+
- [ ] x220 (xx20): @Thrilleratplay @BlackMaria @srgrint
20+
21+
xx30 (Ivy):
22+
===
23+
- [ ] t430 (xx30): @nestire(t430-legacy, t430-maximized) @Thrilleratplay @alexmaloteaux @lsafd @bwachter(iGPU maximized) @shamen123 @eganonoa(iGPU) @nitrosimon @jans23 @icequbes1 (iGPU) @weyounsix (t430-dgpu)
24+
- [ ] w530 (xx30): @eganonoa @zifxify @weyounsix (dGPU: w530-k2000m) @jnscmns (dGPU K1000M) @computer-user123 (w530 / & w530 k2000 : prefers iGPU)
25+
- [ ] x230 (xx30): @nestire(x230-legacy, x230-maximized) @tlaurion(maximized) @osresearch @merge @jan23 @MrChromebox @shamen123 @eganonoa @bwachter @Thrilleratplay @jnscmns @doob85 @natterangell (x230i variant: irrelevant individual board)
26+
- [ ] x230-fhd/edp variant: @n4ru @computer-user123 (nitro caster board) @Tonux599 @househead @pcm720 (eDP 4.0 board and 1440p display)
27+
- [ ] t530 (xx30): @fhvyhjriur @3hhh (Opportunity to mainstream and close https://github.com/linuxboot/heads/issues/1682)
28+
29+
xx4x(Haswell):
30+
===
31+
- [ ] t440p: @ThePlexus @srgrint @akunterkontrolle @rbreslow
32+
- [ ] w541 (similar to t440p): @resende-gustavo @gaspar-ilom
33+
34+
Librems:
35+
===
36+
- [ ] Librem 11(JasperLake): @JonathonHall-Purism
37+
- [ ] Librem 13v2 (Skylake): @JonathonHall-Purism
38+
- [ ] Librem 13v4 (Kabylake): @JonathonHall-Purism
39+
- [ ] Librem 14 (CometLake): @JonathonHall-Purism
40+
- [ ] Librem 15v3 (Skylake): @JonathonHall-Purism
41+
- [ ] Librem 15v4 (Kabylake): @JonathonHall-Purism
42+
43+
Clevo:
44+
===
45+
- [ ] Nitropad NS50 (AlderLake) : @daringer
46+
- [ ] Nitropad NV41 (AlderLake) : @daringer, @tlaurion
47+
48+
49+
Desktops/Servers
50+
==
51+
- [ ] kgpe-d16 (AMD fam15h) (dropped in coreboot 4.12): @tlaurion @Tonux599 @zifxify @arhabd
52+
- [ ] Librem L1UM v1 (Broadwell): @JonathonHall-Purism
53+
- [ ] Librem L1Um v2 (CoffeeLake): @JonathonHall-Purism
54+
- [ ] Talos II (PPC64LE, Power9) : @tlaurion
55+
- [ ] z220-cmt (HP Z220 CMT): @d-wid

0 commit comments

Comments
 (0)