Публикувана е версията на проекта CoreBoot 4.16, в рамките на която се разработва безплатна алтернатива на собствения фърмуер и BIOS. Кодът на проекта се разпространява под лиценз GPLv2. В създаването на новата версия участваха 170 разработчици, които подготвиха 1770 промени.
Основни иновации:
- Добавена е поддръжка за 33 дънни платки, 22 от които се използват на устройства с Chrome OS или сървъри Google. Сред форумите, които не са свързани с Google:
- Acer Aspire VN7-572G
- amd chausie
- ASROCK H77 Pro4-M
- ASUS P8Z77-M
- Емулация QEMU power9
- Intel Alderlake-N RVP
- Prodrive Atlas
- Star Labs StarBook Mk V (i3-1115G4 и i7-1165G7)
- System76 gaze16 3050, 3060 и 3060-b
- Поддръжката за дънни платки Google Corsola, Nasher и Stryke е прекратена.
- Добавена е поддръжка за Power9 CPU и AMD Sabrina SoC.
- Добавена е опция за деактивиране на подсистемата IME (Intel Management Engine), която се предлага на повечето съвременни дънни платки с процесори на Intel и е реализирана като отделен микропроцесор, който работи независимо от CPU и изпълнява задачи, които трябва да бъдат отделени от операционната система, като като обработка на защитено съдържание (DRM), внедряване на модули TPM (Trusted Platform Module) и интерфейси от ниско ниво за наблюдение и контрол на оборудване. За да деактивирате IME в системи с процесори от семейството Skylake до Alder Lake, параметърът me_state се използва в CMOS, присвоявайки стойност 1, на която ще деактивирате двигателя. За промяна на състоянието на CSME чрез CMOS е добавен методът „.enable“, чието състояние съответства на параметъра me_state.
- Добавен coreboot-конфигуратор, прост GUI за промяна на CMOS настройките в Coreboot CBFS с помощта на помощната програма nvramtool.
- Добавена е помощната програма apcb_v3_edit за редактиране на бинарни файлове APCB V3 (AMD PSP Customization Block) и заместване на до 16 SPD (Serial Presence Detect) в тях.
- Актуализирани подмодули amd_blobs, arm-trusted-firmware, blobs, chromeec, intel-microcode, qc_blobs и vboot.
- Кодът за конфигуриране на LAPIC (Local Advanced Programmable Interrupt Controller) е преместен в MP init.
- Добавена е поддръжка за ANSI изходни последователности за подчертаване на важни събития, като грешки и предупреждения, при показване на регистрационни файлове в интерактивната конзола.
- Внедрена функция cbmem_dump_console, подобна на cbmem_dump_console_to_uart, но работи с често конфигурирани конзоли.
- Настройките на живо изображение са адаптирани за работа с дистрибуцията NixOS 21.11. Пакетът iasl е прекратен и е заменен от acpica-tools.
- Буутлоудърът на U-Boot е актуализиран до версия 2021.10.
- Добавена е поддръжка за системи с повече от 128 CPU ядра.
- Добавен драйвер за сензори за близост Semtech sx9360 SAR, използвани в устройства на Samsung.
- Добавен драйвер за SGenesys Logic GL9750 SD контролери, използвани в Chromebook.
- Добавена е поддръжка за Realtek RT8125 Ethernet контролери.
- Добавен драйвер за Fibocom 5G WWAN ACPI.
- Добавена е поддръжка за смесени топологии на паметта при използване на DDR4.
- Добавена е поддръжка за спецификация FSP 2.3 (Flexible Software Package).
- Кодът за изчисляване на хешовете, използван при проверка и оценка на състоянието на CBFS, е преработен
- Добавена е поддръжка за технологията PCI-e Resizable BAR (Base Address Registers), която позволява на процесора да има достъп до цялата видео памет на PCI картата.
Освен това е представен план за преход, започващ от версия 4.18 до четвъртото издание на механизма за разпределение на ресурси (RESOURCE_ALLOCATOR_V4), който добавя поддръжка за манипулиране на множество диапазони от ресурси, използване на цялото адресно пространство и разпределение на памет в области над 4 GB. Coreboot 4.18, очакван през ноември, също така планира да отмени класическия многопроцесорен механизъм за инициализация (LEGACY_SMP_INIT), като го замени с кода за инициализация PARALLEL_MP.
Източник: opennet.ru
