diff options
Diffstat (limited to 'Documentation/releases/coreboot-24.02-relnotes.md')
-rw-r--r-- | Documentation/releases/coreboot-24.02-relnotes.md | 241 |
1 files changed, 212 insertions, 29 deletions
diff --git a/Documentation/releases/coreboot-24.02-relnotes.md b/Documentation/releases/coreboot-24.02-relnotes.md index 40350ecd3a..d941e2cf43 100644 --- a/Documentation/releases/coreboot-24.02-relnotes.md +++ b/Documentation/releases/coreboot-24.02-relnotes.md @@ -1,17 +1,17 @@ Upcoming release - coreboot 24.02 ======================================================================== -The 24.02 release is scheduled for Mid February, 2024 +The 24.02 release is scheduled for February 19, 2024. The next release, +which will be 24.05, is scheduled for mid-May. +The coreboot project is happy to announce our next release for February +2024. Over the past three months, our contributors have focused on +refining the coreboot codebase, generally prioritizing cleanup and +quality enhancements. We extend our gratitude to all the contributors +who have dedicated their time and expertise. Thank you for your +invaluable contributions to this vital phase of maintenance and +optimization. -Update this document with changes that should be in the release notes. - -* Please use Markdown. -* See the past few release notes for the general format. -* The chip and board additions and removals will be updated right - before the release, so those do not need to be added. -* Note that all changes before the release are done are marked upcoming. - A final version of the notes are done after the release. ### Release number format update @@ -19,72 +19,255 @@ The previous release was the last to use the incrementing 4.xx release name scheme. For this and future releases, coreboot has switched to a Year.Month.Sub-version naming scheme. As such, the next release, scheduled for May of 2024 will be numbered 24.05, with the sub-version -of 00 implied. If we need to do a fix or incremental release, we’ll +of 00 implied. If we need to do a fix or incremental release, we'll append the values .01, .02 and so on to the initial release value. +### The master branch is being deleted + +The coreboot project changed from master to main roughly 6 months ago, +and has been keeping the two branches in sync since then to ease the +transition. As of this release, we are getting rid of the master branch +completely. Please make sure any scripts you're using that reference the +'master' branch have been switched to 'main'. + + + Significant or interesting changes ---------------------------------- -* Add changes that need a full description here +### acpi: Add Arm IO Remapping Table structures + +Input Output Remapping Table (IORT) represents the IO topology of an Arm +based system. + +Document number: ARM DEN 0049E.e, Sep 2022 + + +### acpi: Add PPTT support + +This patch adds code to generate Processor Properties Topology Tables +(PPTT) compliant to the ACPI 6.4 specification. + + - The 'acpi_get_pptt_topology' hook is mandatory once ACPI_PPTT is + selected. Its purpose is to return a pointer to a topology tree, + which describes the relationship between CPUs and caches. The hook + can be provided by, for example, mainboard code. + +Background: We are currently working on mainboard code for qemu-sbsa and +Neoverse N2. Both require a valid PPTT table. Patch was tested against +the qemu-sbsa board. + + +### acpi: Add support for WDAT table + +This commit lays the groundwork for implementing the ACPI WDAT (Watchdog +Action Table) table specification. The WDAT is a special ACPI table +introduced by Microsoft that describes the watchdog for the OS. + +Platforms that need to implement the WDAT table must describe the +hardware watchdog management operations as described in the +specification. See “Links to ACPI-Related Documents” +(http://uefi.org/acpi) under the heading “Watchdog Action Table”. -* This section should have full descriptions and can or should have - a link to the referenced commits. + +### lib/jpeg: Replace decoder with Wuffs' implementation + +To quote its repo[0]: Wuffs is a memory-safe programming language (and a +standard library written in that language) for Wrangling Untrusted File +Formats Safely. Wrangling includes parsing, decoding and encoding. + +It compiles its library, written in its own language, to a C/C++ source +file that can then be used independently without needing support for the +language. That library is now imported to src/vendorcode/wuffs/. + +This change modifies our linters to ignore that directory because it's +supposed to contain the wuffs compiler's result verbatim. + +Nigel Tao provided an initial wrapper around wuffs' jpeg decoder that +implements our JPEG API. I further changed it a bit regarding data +placement, dropped stuff from our API that wasn't ever used, or isn't +used anymore, and generally made it fit coreboot a bit better. Features +are Nigel's, bugs are mine. + +This commit also adapts our jpeg fuzz test to work with the modified +API. After limiting it to deal only with approximately screen sized +inputs, it fuzzed for 25 hours CPU time without a single hang or crash. +This is a notable improvement over running the test with our old decoder +which crashes within a minute. + +Finally, I tried the new parser with a pretty-much-random JPEG file I +got from the internet, and it just showed it (once the resolution +matched), which is also a notable improvement over the old decoder which +is very particular about the subset of JPEG it supports. + +In terms of code size, a QEmu build's ramstage increases +from 128060 bytes decompressed (64121 bytes after LZMA) + to 172304 bytes decompressed (82734 bytes after LZMA). + +[0] https://github.com/google/wuffs Additional coreboot changes --------------------------- -The following are changes across a number of patches, or changes worth -noting, but not needing a full description. +* Rename Makefiles from .inc to .mk to better identify them +* SPI: Add GD25LQ255E and IS25WP256D chip support +* device: Add support for multiple PCI segment groups +* device: Drop unused multiple downstream link support +* device: Rename bus and link_list to upstream and downstream +* Updated devicetree files for modern Intel platforms to use chipset.cb +* Updated xeon-sp to use the coreboot allocator -* Changes that only need a line or two of description go here. Changes to external resources ----------------------------- ### Toolchain updates +* Add buildgcc support for Apple M1/M2 devices +* crossgcc: Upgrade GCC from 11.4.0 to 13.2.0 +* util/crossgcc: Update CMake from 3.26.4 to 3.27.7 +* util/kconfig: Uprev to Linux 6.7 kconfig ### Git submodule pointers +* /3rdparty/amd_blobs: Update from commit id e4519efca7 to 64cdd7c8ef + (5 commits) +* /3rdparty/arm-trusted-firmware: Update from commit id 88b2d81345 to + 17bef2248d (701 commits) +* /3rdparty/fsp: Update from commit id 481ea7cf0b to 507ef01cce (16 commits) +* /3rdparty/intel-microcode: Update from commit id 6788bb07eb to + ece0d294a2 (1 commits) +* /3rdparty/vboot: Update from commit id 24cb127a5e to 3d37d2aafe (121 + commits) + ### External payloads +* payload/grub2: Update from 2.06 to 2.12 +* payload/seabios: Update from 1.16.2 to 1.16.3 + Platform Updates ---------------- ### Added mainboards: -* To be filled in immediately before the release by the release team +* Google: Dita +* Google: Xol +* Lenovo: ThinkPad X230 eDP Mod (2K/FHD) ### Removed Mainboards -* To be filled in immediately before the release by the release team - +* Google -> Primus4ES -### Updated SoCs -* To be filled in immediately before the release by the release team - - -Plans to move platform support to a branch ------------------------------------------- -* To be filled in immediately before the release by the release team Statistics from the 4.22 to the 24.02 release -------------------------------------------- -* To be filled in immediately before the release by the release team + +* Total Commits: 814 +* Average Commits per day: 8.65 +* Total lines added: 105203 +* Average lines added per commit: 129.24 +* Number of patches adding more than 100 lines: 46 +* Average lines added per small commit: 41.34 +* Total lines removed: 16505 +* Average lines removed per commit: 20.28 +* Total difference between added and removed: 88698 +* Total authors: 111 +* New authors: 19 Significant Known and Open Issues --------------------------------- -Issues from the coreboot bugtracker: https://ticket.coreboot.org/ -* To be filled in immediately before the release by the release team +* AMD chromebooks will not currently work with the signed vboot image. + + +## Issues from the coreboot bugtracker: https://ticket.coreboot.org/ + + +### coreboot-wide or architecture-wide issues + +```eval_rst ++-----+-----------------------------------------------------------------+ +| # | Subject | ++=====+=================================================================+ +| 522 | 'region_overlap()' issues due to an integer overflow. | ++-----+-----------------------------------------------------------------+ +| 519 | make gconfig - could not find glade file | ++-----+-----------------------------------------------------------------+ +| 518 | make xconfig - g++: fatal error: no input files | ++-----+-----------------------------------------------------------------+ +``` + + +### Payload-specific issues + +```eval_rst ++-----+-----------------------------------------------------------------+ +| # | Subject | ++=====+=================================================================+ +| 499 | edk2 boot fails with RESOURCE_ALLOCATION_TOP_DOWN enabled | ++-----+-----------------------------------------------------------------+ +| 496 | Missing malloc check in libpayload | ++-----+-----------------------------------------------------------------+ +| 484 | No USB keyboard support with secondary payloads | ++-----+-----------------------------------------------------------------+ +| 414 | X9SAE-V: No USB keyboard init on SeaBIOS using Radeon RX 6800XT | ++-----+-----------------------------------------------------------------+ +``` + + +### Platform-specific issues + +```eval_rst ++-----+-----------------------------------------------------------------+ +| # | Subject | ++=====+=================================================================+ +| 517 | lenovo x230 boot stuck with connected external monitor | ++-----+-----------------------------------------------------------------+ +| 509 | SD Card hotplug not working on Apollo Lake | ++-----+-----------------------------------------------------------------+ +| 507 | Windows GPU driver fails on Google guybrush & skyrim boards | ++-----+-----------------------------------------------------------------+ +| 506 | APL/GML don't boot OS when CPU microcode included "from tree" | ++-----+-----------------------------------------------------------------+ +| 505 | Harcuvar CRB - 15 of 16 cores present in the operating system | ++-----+-----------------------------------------------------------------+ +| 499 | T440p - EDK2 fails with RESOURCE_ALLOCATION_TOP_DOWN enabled | ++-----+-----------------------------------------------------------------+ +| 495 | Stoney Chromebooks not booting PSPSecureOS | ++-----+-----------------------------------------------------------------+ +| 478 | X200 booting Linux takes a long time with TSC | ++-----+-----------------------------------------------------------------+ +| 474 | X200s crashes after graphic init with 8GB RAM | ++-----+-----------------------------------------------------------------+ +| 457 | Haswell (t440p): CAR mem region conflicts with CBFS_SIZE > 8mb | ++-----+-----------------------------------------------------------------+ +| 453 | Intel HDMI / DP Audio not present in Windows after libgfxinit | ++-----+-----------------------------------------------------------------+ +| 449 | ThinkPad T440p fail to start, continuous beeping & LED blinking | ++-----+-----------------------------------------------------------------+ +| 448 | Thinkpad T440P ACPI Battery Value Issues | ++-----+-----------------------------------------------------------------+ +| 446 | Optiplex 9010 No Post | ++-----+-----------------------------------------------------------------+ +| 439 | Lenovo X201 Turbo Boost not working (stuck on 2,4GHz) | ++-----+-----------------------------------------------------------------+ +| 427 | x200: Two battery charging issues | ++-----+-----------------------------------------------------------------+ +| 412 | x230 reboots on suspend | ++-----+-----------------------------------------------------------------+ +| 393 | T500 restarts rather than waking up from suspend | ++-----+-----------------------------------------------------------------+ +| 350 | I225 PCIe device not detected on Harcuvar | ++-----+-----------------------------------------------------------------+ +``` |