1
1
Upcoming release - coreboot 25.03
2
2
========================================================================
3
3
4
- The 25.03 release is scheduled for the end of March, 2025
4
+ The coreboot project is pleased to announce the release of coreboot
5
+ 25.03, marking another milestone in our ongoing work to delivering
6
+ open-source firmware. This release brings important improvements to
7
+ display handling, USB debugging capabilities, and CPU topology
8
+ management, along with various other enhancements that further improve
9
+ the reliability and performance of coreboot across supported platforms.
5
10
6
-
7
- Update this document with changes that should be in the release notes.
8
-
9
- * Please use Markdown.
10
- * See the past few release notes for the general format.
11
- * The chip and board additions and removals will be updated right
12
- before the release, so those do not need to be added.
13
- * Note that all changes before the release are done are marked upcoming.
14
- A final version of the notes are done after the release.
11
+ We extend our sincere thanks to all contributors who have made this
12
+ release possible. Your expertise and collaborative efforts continue to
13
+ propel the coreboot project forward. As always, we value the
14
+ participation of everyone in the community, from long-time developers to
15
+ those new to the project. The next coreboot release, 25.06, is scheduled
16
+ for the end of June 2025.
15
17
16
18
17
19
18
20
Significant or interesting changes
19
21
----------------------------------
20
22
21
- * Add changes that need a full description here
23
+ ### drivers/intel/fsp2_0: Enable panel-orientation aware bitmap rotation
24
+
25
+ Implement logo bitmap rotation within fsp_convert_bmp_to_gop_blt() to
26
+ support devices with portrait-oriented displays. The rotation is driven
27
+ by the panel framebuffer orientation, allowing the logo to be displayed
28
+ correctly regardless of physical panel orientation.
29
+
30
+ This resolves issues where the logo was displayed incorrectly on
31
+ portrait-oriented displays.
32
+
33
+ Additionally, discard the display orientation change if the LID is
34
+ closed aka built-in display is not active. This will ensure that display
35
+ orientation is proper when extended display is attached w/o any display
36
+ rotation.
37
+
38
+
39
+ ### util/find_usbdebug: Fix lsusb -t parsing for usbutils v016 and newer
40
+
41
+ Commit e24294ff9ade ("lsusb -t: print ports and buses and devices with
42
+ same width") [ 1] in the usbutils repository changed the format of the
43
+ lsusb -t output, breaking the find_usbdebug.sh script. This commit is
44
+ present in usbutils version 016 and later.
45
+
46
+ Use the output of lsusb -V to set the parsing patterns based on the
47
+ version in order to maintain compatibility with older versions of
48
+ usbutils. A simple integer comparison of the version number is used for
49
+ this, which will not work with versions older than v001 as those use a
50
+ 0.nn version number format. However, since v001 was released in late
51
+ 2010, it is probably safe to assume that no one will be using a version
52
+ of usbutils older than that. Usbutils v016 was released in late 2023 so
53
+ there could still conceivably be systems using older versions, such as
54
+ Ubuntu 22.04 LTS which is on v014.
55
+
56
+ [ 1] https://github.com/gregkh/usbutils/commit/e24294ff9ade6dafcd1909763e888d97b377c841
57
+
58
+
59
+ ### cpu/x86/topology: Fix FSP-S crash caused by shared core ID
60
+
61
+ This resolves a crash issue observed on Meteor Lake and introduced by
62
+ commit 70bdd2e1fad9fe89835aab240ed4b41a02f15078 ("cpu/x86/topology:
63
+ Simplify CPU topology initialization"). This commit simplifies the code
64
+ and provides more detailed CPU topology information by generalizing the
65
+ use of the Extended Topology Enumeration Leaves 0x1f. As a result, the
66
+ coreboot APIC core_id field does not provide the fully detailed path
67
+ information.
68
+
69
+ It turns out that the topology core identifier is used by the coreboot
70
+ MP service mp_get_processor_info() implementation. But the MP Service
71
+ EFI_CPU_PHYSICAL_LOCATION data structure only captures information about
72
+ the package, core, and thread. The core identifier returned to the MP
73
+ service caller must incorporate the full hierarchical path (die group,
74
+ die, module, tile, module and core).
75
+
76
+ This commit adds a new field to the cpu topology structure to represent
77
+ the core ID within the package.
78
+
79
+ For reference, here is that signature of the crash:
80
+
81
+ LAPIC 0x40 in X2APIC mode.
82
+ CPU Index 2 - APIC 64 Unexpected Exception:13 @ 10:69f3d1e4 - Halting
83
+ Code: 0 eflags: 00010046 cr2: 00000000
84
+ eax: 00000001 ebx: 69f313e8 ecx: 0000004e edx: 00000000
85
+ edi: 69f38018 esi: 00000029 ebp: 69aeee0c esp: 69aeedc0
86
+ [ ...]
87
+
88
+ The crash occurred when FSP attempted to lock the Protected
89
+ Processor Inventory Number Enable Control MSR (IA32_PPIN_CTL
90
+ 0x4e).
91
+
92
+ 69f3d1d3: 8b 43 f4 mov -0xc(%ebx),%eax
93
+ 69f3d1d6: 89 4d c4 mov %ecx,-0x3c(%ebp)
94
+ 69f3d1d9: 89 45 dc mov %eax,-0x24(%ebp)
95
+ 69f3d1dc: 8b 55 c4 mov -0x3c(%ebp),%edx
96
+ 69f3d1df: 8b 45 c0 mov -0x40(%ebp),%eax
97
+ 69f3d1e2: 8b 4d dc mov -0x24(%ebp),%ecx
98
+ 69f3d1e5: 0f 30 wrmsr
99
+ 69f3d1e7: e9 ee fd ff ff jmp 0xfffffe39
100
+
101
+ FSP experiences issues due to attempting to lock the same register
102
+ multiple times for a single core. This is caused by an inconsistency in
103
+ the processor information data structure, where multiple cores share the
104
+ same identifier. This is not permitted and triggers a General Protection
105
+ Fault Exception.
106
+
107
+
108
+ ### {drivers, lib}: Move low-battery user notification logic outside FSP
22
109
23
- * This section should have full descriptions and can or should have
24
- a link to the referenced commits.
110
+ This patch refactors low-battery user notification logic (Kconfig, APIs
111
+ to check if low-battery rendering is required, low-battery shutdown is
112
+ required) outside FSP driver code to ensure in future non-FSP platforms
113
+ might still be able to leverage this feature/logics to render the
114
+ low-battery indicator icon during boot.
115
+
116
+ Specifically, it:
117
+
118
+ - Moves Kconfig options related to low-battery notifications from
119
+ drivers/intel/fsp to lib/
120
+ - Relocates the low-battery check and shutdown APIs drivers/intel/fsp
121
+ to bootsplash.h
122
+ * Adjusts the vendor driver to utilize the new APIs for low-battery
123
+ rendering decisions.
124
+ * Drop the unwanted header file "fsp/api.h" from bmp_logo.c
125
+
126
+ This change avoids tight coupling of low-battery functionality to FSP,
127
+ promoting code reusability across platforms.
128
+
129
+
130
+ ### soc/intel/cannonlake: Use common ACPI code for SRAM and HECI
131
+
132
+ Use the newly-created ACPI devices in common/acpi, and adjust the SoC
133
+ ACPI name for the CSE/HECI device to match.
134
+
135
+
136
+ ### lib: Introduce early power off support Kconfig option
137
+
138
+ This commit introduces the ` HAVE_EARLY_POWEROFF_SUPPORT ` Kconfig option
139
+ and the ` platform_do_early_poweroff() ` API.
140
+
141
+ The Kconfig option enables platform-specific early power off support,
142
+ which is often required on Intel platforms. The corresponding API allows
143
+ platforms to implement the necessary hardware operations for early power
144
+ off, typically before memory initialization.
25
145
26
146
27
147
28
148
Additional coreboot changes
29
149
---------------------------
30
150
31
- The following are changes across a number of patches, or changes worth
32
- noting, but not needing a full description.
33
-
34
- * Changes that only need a line or two of description go here.
151
+ * Numerous changes to Haswell open source ram init
152
+ * Numerous additions to intelp2m tool
153
+ * Enhanced power management and thermal control across multiple platforms
154
+ * Improved USB Type-C and Thunderbolt support
155
+ * Added support for early power off and low battery detection
156
+ * Enhanced display and graphics support across multiple platforms
157
+ * Improved memory initialization and training
158
+ * Added support for various new memory parts and configurations
159
+ * Enhanced ACPI support and device handling
160
+ * Improved security features and TPM support
161
+ * Enhanced EC (Embedded Controller) support across platforms
162
+ * Added support for various new touch panels and input devices
163
+ * Refactored and improved code organization across multiple subsystems
164
+ * Enhanced build system and toolchain support
165
+ * Improved documentation and testing infrastructure
166
+ * Added support for RISC-V architecture improvements
167
+ * Enhanced debugging and logging capabilities
168
+ * Improved error handling and recovery mechanisms
169
+ * Added 7500 MT/s support for DDR5
35
170
36
171
37
172
@@ -40,48 +175,161 @@ Changes to external resources
40
175
41
176
### Toolchain updates
42
177
178
+ * Update CMake from 3.30.2 to 3.31.3
179
+ * Update ACPICA from 20230628 to 20241212
43
180
44
181
45
182
### Git submodule pointers
46
183
47
-
48
- ### External payloads
184
+ * arm-trusted-firmware: Update from commit id 15e5c6c91d to e5a1f4abee (608 commits)
185
+ * blobs: Update from commit id 14f8fcc1b4 to a0726508b8 (10 commits)
186
+ * fsp: Update from commit id 851f7105d8 to 86c9111639 (30 commits)
187
+ * intel-microcode: Update from commit id 8ac9378a84 to 8a62de41c0 (1 commits)
188
+ * vboot: Update from commit id f1f70f46dc to 3f94e2c7ed (49 commits)
49
189
50
190
51
191
52
192
Platform Updates
53
193
----------------
54
194
55
195
### Added mainboards:
56
- * To be filled in immediately before the release by the release team
57
-
58
-
59
- ### Removed Mainboards
60
- * To be filled in immediately before the release by the release team
61
-
196
+ * AMD Crater for Renoir SoC
197
+ * ASROCK Z87 Extreme3
198
+ * ASROCK Z87 Extreme4
199
+ * ASROCK Z87M Extreme4
200
+ * ASROCK Z87 Pro4
201
+ * ASUS P8H67-I DELUXE
202
+ * Google Dirks
203
+ * Google Guren
204
+ * Google Meliks
205
+ * Google Moxie
206
+ * Google Ocelot
207
+ * Google Pujjoniru
208
+ * Google Quandiso2
209
+ * Google Wyrdeer
210
+ * HP Pro 3400 Series
211
+ * Intel Ptlrvp
212
+ * Lenovo ThinkCentre M900
213
+ * NovaCustom V540TU (14")
214
+ * NovaCustom V560TU (16")
215
+ * StarLabs StarLite Mk V Smart Battery (N200)
216
+ * StarLabs StarBook Mk VII (165H)
217
+ * StarLabs StarBook Mk VII (N200)
62
218
63
219
### Updated SoCs
64
- * To be filled in immediately before the release by the release team
65
-
66
-
67
-
68
- Plans to move platform support to a branch
69
- ------------------------------------------
70
- * To be filled in immediately before the release by the release team
220
+ * Added src/soc/xilinx/zynq7000
71
221
72
222
73
223
74
224
Statistics from the 24.12 to the 25.03 release
75
- --------------------------------------------
76
- * To be filled in immediately before the release by the release team
225
+ ----------------------------------------------
226
+
227
+ * Total Commits: 992
228
+ * Average Commits per day: 10.09
229
+ * Total lines added: 87471
230
+ * Average lines added per commit: 88.18
231
+ * Number of patches adding more than 100 lines: 95
232
+ * Average lines added per small commit: 40.50
233
+ * Total lines removed: 22845
234
+ * Average lines removed per commit: 23.03
235
+ * Total difference between added and removed: 64626
236
+ * Total authors: 129
237
+ * New authors: 28
77
238
78
239
79
240
80
241
Significant Known and Open Issues
81
242
---------------------------------
82
243
83
- Issues from the coreboot bugtracker: < https://ticket.coreboot.org/ >
84
- * To be filled in immediately before the release by the release team
244
+ ### coreboot-wide or architecture-wide issues
245
+
246
+ +-----+-----------------------------------------------------------------+
247
+ | # | Subject |
248
+ +=====+=================================================================+
249
+ | 519 | make gconfig - could not find glade file |
250
+ +-----+-----------------------------------------------------------------+
251
+ | 518 | make xconfig - g++: fatal error: no input files |
252
+ +-----+-----------------------------------------------------------------+
253
+
254
+
255
+ ### Payload-specific issues
256
+
257
+ +-----+-----------------------------------------------------------------+
258
+ | # | Subject |
259
+ +=====+=================================================================+
260
+ | 577 | SeaBIOS/EDK2 Windows 10 BSOD "UNSUPPORTED PROCESSOR" |
261
+ +-----+-----------------------------------------------------------------+
262
+ | 552 | X201 not booting with edk2 payload |
263
+ +-----+-----------------------------------------------------------------+
264
+ | 549 | SeaBIOS Windows 10/11 BSOD "ACPI BIOS ERROR" (Thinkpad W530) |
265
+ +-----+-----------------------------------------------------------------+
266
+ | 499 | edk2 boot fails with RESOURCE_ALLOCATION_TOP_DOWN enabled |
267
+ +-----+-----------------------------------------------------------------+
268
+ | 496 | Missing malloc check in libpayload |
269
+ +-----+-----------------------------------------------------------------+
270
+ | 484 | No USB keyboard support with secondary payloads |
271
+ +-----+-----------------------------------------------------------------+
272
+ | 414 | X9SAE-V: No USB keyboard init on SeaBIOS using Radeon RX 6800XT |
273
+ +-----+-----------------------------------------------------------------+
274
+
275
+
276
+ ### Platform-specific issues
277
+
278
+ +-----+-----------------------------------------------------------------+
279
+ | # | Subject |
280
+ +=====+=================================================================+
281
+ | 579 | MAC address set by coreboot to RTL8111F does not persist |
282
+ +-----+-----------------------------------------------------------------+
283
+ | 565 | Wifi card not recognized on Lenovo M700 tiny |
284
+ +-----+-----------------------------------------------------------------+
285
+ | 563 | tty doesn't show on external display using edk2 on W530 |
286
+ +-----+-----------------------------------------------------------------+
287
+ | 548 | Lenovo X201 Fails To Recognize Upgraded WiFi Card |
288
+ +-----+-----------------------------------------------------------------+
289
+ | 538 | x230: Dock Causes Internal Display to "Permanently" Malfunction |
290
+ +-----+-----------------------------------------------------------------+
291
+ | 535 | T420: Power light stays off after reboot |
292
+ +-----+-----------------------------------------------------------------+
293
+ | 528 | Building qemu-i440fx with CONFIG_CBFS_VERIFICATION fails |
294
+ +-----+-----------------------------------------------------------------+
295
+ | 524 | X2APIC Options cause Linux to crash on emulation/qemu-i440fx |
296
+ +-----+-----------------------------------------------------------------+
297
+ | 517 | lenovo x230 boot stuck with connected external monitor |
298
+ +-----+-----------------------------------------------------------------+
299
+ | 509 | SD Card hotplug not working on Apollo Lake |
300
+ +-----+-----------------------------------------------------------------+
301
+ | 506 | APL/GML don't boot OS when CPU microcode included "from tree" |
302
+ +-----+-----------------------------------------------------------------+
303
+ | 505 | Harcuvar CRB - 15 of 16 cores present in the operating system |
304
+ +-----+-----------------------------------------------------------------+
305
+ | 499 | T440p - EDK2 fails with RESOURCE_ALLOCATION_TOP_DOWN enabled |
306
+ +-----+-----------------------------------------------------------------+
307
+ | 495 | Stoney Chromebooks not booting PSPSecureOS |
308
+ +-----+-----------------------------------------------------------------+
309
+ | 478 | X200 booting Linux takes a long time with TSC |
310
+ +-----+-----------------------------------------------------------------+
311
+ | 474 | X200s crashes after graphic init with 8GB RAM |
312
+ +-----+-----------------------------------------------------------------+
313
+ | 457 | Haswell (t440p): CAR mem region conflicts with CBFS_SIZE > 8mb |
314
+ +-----+-----------------------------------------------------------------+
315
+ | 453 | Intel HDMI / DP Audio not present in Windows after libgfxinit |
316
+ +-----+-----------------------------------------------------------------+
317
+ | 449 | ThinkPad T440p fail to start, continuous beeping & LED blinking |
318
+ +-----+-----------------------------------------------------------------+
319
+ | 448 | Thinkpad T440P ACPI Battery Value Issues |
320
+ +-----+-----------------------------------------------------------------+
321
+ | 446 | Optiplex 9010 No Post |
322
+ +-----+-----------------------------------------------------------------+
323
+ | 439 | Lenovo X201 Turbo Boost not working (stuck on 2,4GHz) |
324
+ +-----+-----------------------------------------------------------------+
325
+ | 427 | x200: Two battery charging issues |
326
+ +-----+-----------------------------------------------------------------+
327
+ | 412 | x230 reboots on suspend |
328
+ +-----+-----------------------------------------------------------------+
329
+ | 393 | T500 restarts rather than waking up from suspend |
330
+ +-----+-----------------------------------------------------------------+
331
+ | 350 | I225 PCIe device not detected on Harcuvar |
332
+ +-----+-----------------------------------------------------------------+
85
333
86
334
87
335
@@ -94,3 +342,4 @@ coreboot Links and Contact Information
94
342
* Documentation: < https://doc.coreboot.org >
95
343
* Issue tracker: < https://ticket.coreboot.org/projects/coreboot >
96
344
* Donations: < https://coreboot.org/donate.html >
345
+
0 commit comments