1 coreboot 4.9 release notes
2 ==========================
4 The 4.9 release covers commit 532b8d5f25 to commit 7f520c8fe6
5 There is a pgp signed 4.9 tag in the git repository, and a branch will
8 In the little more than 7 months since 4.8.1 we had 175 authors commit
9 2610 changes to master. The changes were, for the most part, all over
10 the place, touching every part of the repository: chipsets, mainboards,
11 tools, build system, documentation.
13 In that time we also had 70 authors made their first commit to coreboot:
14 Welcome and to many more!
16 Finally, a big Thank You to all contributors who helped shape the
17 coreboot project, community and code with their effort, no matter if
18 through development, review, testing, documentation or by helping people
19 asking questions on our venues like IRC or our mailing list.
23 If there's any topic to give to this release, "clean up" might be the
24 most appropriate: There was lots of effort to bring the codebase into
25 compliance with our coding style, to remove old idioms that we'd like
26 to retire like the overloaded `device_t` data type, and to let features
27 percolate through the entire tree to bring more uniformity to its parts.
29 For example, during the coreboot 4.4 cycle, coreboot gained the notion
30 of mainboard variants to avoid duplication of code in rather similar
33 Back then, this feature was developed and used mostly for the benefit
34 of Chrome OS devices, but more recently the code for various Lenovo
35 Thinkpads was deduplicated in the same way.
37 Another part of cleaning up our tree is improving our tools that help
38 developers follow coding style and avoid mistakes, as well as the
39 infrastructure we have for automated build tests and we've seen quite
40 some activity in that space as well.
44 Since the last release we also moved the documentation into the
45 repository. No need for a special wiki account to edit the documentation,
46 and by colocating sources and documentation, it's easier to keep the
47 latter in sync with the code, too.
49 This effort is still under way, which is why we still host the old wiki (now
50 read-only) in parallel to the [new documentation
51 site](https://doc.coreboot.org) that is rendered from coreboot.git's
52 Documentation/ directory.
56 Another big change is in our blobs handling: Given that Intel now
57 provides a reasonably licensed repository with FSP binaries, we were
58 able to mirror it to coreboot.org and integrate it in the build system.
59 This makes it easier to have working images out of the box for devices
60 that depend on Intel's proprietary init code.
62 As usual the blobs aren't part of the coreboot tree and only downloaded
63 with the `USE_BLOBS` options.
67 One of the first changes to coreboot after the 4.8 release was to remove
68 boards that didn't support certain new features and were apparently
69 unmaintained, as discussed in the release notes of coreboot 4.6.
71 We didn't follow up on all plans made back then to deprecate boards more
72 aggressively: The board status reporting mechanism is still rather raw
73 and therefore places quite a burden on otherwise sympathetic contributors
76 Also, there will be no deprecations after 4.10: Due to its slipping
77 schedule, coreboot 4.9 is released rather late, and as a result 4.10
78 will only see about 4 months of development. We considered that a rather
79 short timeframe in which to bring old boards up to new standards, and
80 so the next deprecation cycle may be announced with 4.10 to occur after
81 4.11 is released, in late 2019.
85 * Various code cleanups
86 * Removed `device_t` in favor of `struct device*` in ramstage code
87 * Removed unnecessary include directives
88 * Improved adherence to coding style
89 * Deduplicated boards by using the variants mechanism
90 * Expand use of the postcar stage
91 * Add bootblock compression capability: on systems that copy the bootblock
92 from very slow flash to SRAM, allow adding a stub that decompresses the
93 bootblock into SRAM to minimize the amount of flash reads
94 * Rename the POWER8 architecture port to PPC64 to reflect that it isn't limited
96 * Added support for booting FIT (uImage) payloads on arm64
97 * Added SPI flash write protection API
98 * Implemented on Winbond
99 * Implemented TCPA log for measured boot
100 * Implemented GDB support for arm64 architecture in libpayload
101 * Dropped support for unmaintained code paths
102 * Measured boot support
109 * ASROCK G41M-VS3 R2.0
116 * CAVIUM CN8100-SFF-EVB
119 * GIGABYTE GA-H61M-S2PV
141 * HEWLETT PACKARD HP COMPAQ 8200 ELITE SFF PC
142 * INTEL COFFEELAKE RVP11
143 * INTEL COFFEELAKE RVP8
144 * INTEL COFFEELAKE RVPU
148 * INTEL WHISKEYLAKE RVP
150 * LENOVO THINKCENTRE A58
154 * OPENCELLULAR ROTUNDU
155 * OPENCELLULAR SUPABRCKV1
161 Dropped 71 mainboards
162 ---------------------
163 * AAEON PFM-540I REVB
170 * AMD SERENGETI-CHEETAH
185 * DIGITALLOGIC MSM800SEV
186 * GIGABYTE GA-2761GXDK
195 * IEI PCISA LX-800 R10
198 * INTEL COUGAR-CANYON2
206 * LIPPERT HURRICANE LX
207 * LIPPERT LITERUNNER LX
208 * LIPPERT ROADRUNNER LX
209 * LIPPERT SPACERUNNER LX
216 * SIEMENS SITEMP-G1P1
235 * cpu/intel/model\_2065x,206ax,haswell: Switch to `POSTCAR_STAGE`
236 * cpu/intel/slot\_1: Switch to different CAR setup
237 * Dropped support for the FSP1.0 sandy-/ivy-bridge bootpath
241 * Added Cavium CN81xx, Intel Ice Lake and Mediatek MT8183
242 * Dropped Broadcom Cygnus, Lowrisc and Marvell mvmap2315
246 * Dropped AMD K8, VIA CN700, VIA CX700, VIA VX800 because they lack `EARLY_CBMEM` support
247 * intel/e7505: Moved to `EARLY_CBMEM`
248 * nb/intel/i945,e7505,pineview,x4x,gm45,i440bx: Moved to `POSTCAR_STAGE`
249 * nb/intel/i440bx, e7505: Moved to `RELOCATABLE_RAMSTAGE`
250 * intel/x4x: Add DDR3 support
251 * nb/intel/pineview: Speed up fetching SPD
252 * nb/intel/i945,gm45,x4x,pineview: Use TSEG in SMI
256 * sb/intel/i82801{g,i,j}x, lynxpoint: Use the common ACPI pirq generator
257 * sb/intel/i82801{g,i,j}x: Use common code to set up SMM and for the smihandler
258 * Use common functions for PMBASE configuration
262 * Support initrd in uImage/FIT to be placed above 4GiB
263 * Added documentation for uImage/FIT payloads
267 * Update to gcc 8.1.0, binutils 2.30, IASL 20180810, clang 6