Публикуван е новият ред на проекта 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
- Emulation QEMU power9
- Intel Alderlake-N RVP
- Prodrive Atlas
- Star Labs Star Labs StarBook Mk V (i3-1115G4 и i7-1165G7)
- System76 gaze16 3050, 3060 и 3060-b
- Поддръжката на дънните платки Google Corsola, Nasher и Stryke е прекратена.
- Добавена е поддръжка за CPU Power9 и SoC AMD Sabrina.
- Добавена е опция за деактивиране на IME (Intel Management Engine), която е налична в повечето съвременни дънни платки с процесори Intel и се реализира като отделен микропроцесор, работещ независимо от CPU и изпълняващ задачи, които трябва да бъдат отделени от операционната система, като обработка на защитено съдържание (DRM), реализация на модули TPM (Trusted Platform Module) и нискоуровневни интерфейси за мониторинг и управление на оборудването. За деактивиране на IME в системи с процесори от семейството Skylake до Alder Lake в CMOS е зададен параметър me_state, задаването на стойност 1 на който ще доведе до деактивиране на движка. За промяна на състоянието CSME чрез CMOS е добавен метод „.enable“, състоянието на който съответства на параметра me_state.
- Добавен е coreboot-configurator, прост графичен интерфейс за промяна на настройки 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.
- В MP init е преместен кодът за настройка на LAPIC (Local Advanced Programmable Interrupt Controller).
- Добавена е поддръжка на ANSI escape-последователности за подчертаване на важни събития, като например грешки и предупреждения, при извеждане на логове в интерактивната конзола.
- Реализирана е функция cbmem_dump_console, подобна на cbmem_dump_console_to_uart, но работеща с обикновено конфигурирани конзоли.
- Настройките на Live-образа са адаптирани за работа с дистрибуцията NixOS 21.11. Поддръжката на пакета iasl е прекратена и заменена с acpica-tools.
- Зареждачът U-Boot е актуализиран до версия 2021.10.
- Добавена поддръжка на системи с повече от 128 ядра CPU.
- Добавен е драйвер за сензорите за близост Semtech sx9360 SAR, използвани в устройствата на Samsung.
- Добавен е драйвер за SD контролери SGenesys Logic GL9750, прилагани в Chromebook.
- Добавена е поддръжка на Ethernet контролери Realtek RT8125.
- Добавен е драйвер за Fibocom 5G WWAN ACPI.
- Добавена е поддръжка на смесени топологии на паметта при използване на DDR4.
- Добавена е поддръжка на спецификация FSP 2.3 (Гъвкав пакет софтуер).
- Преработен е кодът за изчисляване на хешове, използвани при верификация и оценка на състоянието на CBFS.
- Добавена е поддръжка на технологията PCI-e Resizable BAR (Регистри на базов адрес), позволяваща на CPU да получи достъп до цялата видеопамет на PCI картата.
Освен това, представен е план за преход, започвайки от версия 4.18, към четвъртото издание на механизма за разпределение на ресурси (RESOURCE_ALLOCATOR_V4), в който е добавена поддръжка за манипулиране на няколко диапазона от ресурси, използване на целия адресен обхват и разпределение на памет в областта над 4 ГБ. В изданието Coreboot 4.18, което се очаква през ноември, също така ще бъде обявено за остаряло механизма за класическа инициализация на многопроцесорен режим (LEGACY_SMP_INIT), заменен от кода за инициализация PARALLEL_MP.
Източник: opennet.ru
