Opublikowano wydanie projektu CoreBoot 24.02, który opracowuje wolną alternatywę dla Proprietary Firmware i BIOS. Kod projektu jest dystrybuowany na licencji GPLv2. W pracach nad nową wersją wzięło udział 111 programistów, którzy przygotowali 814 zmian. Od tego wydania projekt przeszedł na nowy system nazewnictwa wersji, w ramach którego powiązane są daty (rok.miesiąc.aktualizacja), więc w lutym 2024 roku zamiast wersji 4.23 wydano 24.02, a na maj planowane jest wydanie 24.05.
Główne zmiany:
- Dodano wsparcie dla trzech płyt głównych. Jedna z dodanych płyt jest stosowana w laptopie Lenovo ThinkPad X230 eDP Mod (2K/FHD), a pozostałe dwie używane są w urządzeniach z Chrome OS lub na serwerach Google. Zaprzestano wsparcia płyty Google Primus4ES.
- Zakończono przejście z używania gałęzi „master” na nową gałąź „main”, utworzoną, ponieważ słowo „master” w ostatnich latach uznawane jest za nie politycznie poprawne i budzi oburzenie niektórych aktywistów. Przez około 6 miesięcy gałęzie „master” i „main” były synchronizowane, a teraz pozostawiono tylko gałąź „main”, co może wymagać przeróbki skryptów odwołujących się do gałęzi „master”.
- Dekoder obrazów w formacie JPEG został zastąpiony implementacją w języku Wuffs (Wrangling Untrusted File Formats Safely), bezpiecznie pracującym z pamięcią, generującym kod w C/C++ i zoptymalizowanym do tworzenia parserów, enkoderów i dekoderów formatów plików. Użycie zabezpieczonego dekodera JPEG pozwala wyeliminować podatność projektu na ataki, takie jak LogoFAIL.
- Poprawiono zgodność ze specyfikacjami ACPI:
- Dodano wsparcie dla struktury IORT (Input Output Remapping Table), stosowanej do określenia topologii wejścia/wyjścia w systemach ARM.
- Dodano wsparcie dla struktury PPTT (Processor Properties Topology Tables), zdefiniowanej w specyfikacji ACPI 6.4, zawierającej informacje o topologii procesora. Utworzenie PPTT jest obecnie wdrożone tylko dla płyt qemu-sbsa i Neoverse N2, które wymagają tej tabeli.
- Dodano wsparcie dla tabeli WDAT (Watchdog Action Table), zaproponowanej przez firmę Microsoft, do opisu zegara watchdog, który automatycznie rebootuje komputer w przypadku zawieszenia systemu operacyjnego.
- Dodano wsparcie dla chipów SPI Flash GD25LQ255E i IS25WP256D.
- Wprowadzono możliwość jednoczesnej pracy z wieloma grupami segmentów PCI.
- Struktury bus i link_list zostały przemianowane na upstream i downstream.
- Do plików devicetree dodano opisy nowoczesnych platform Intel.
- Dla urządzeń Apple MacBook1 i MacBook2 dodano wsparcie dla buildgcc.
- W crossgcc dokonano przejścia z GCC 11.4.0 na GCC 13.2.0, CMake zaktualizowano z wersji 3.26.4 do 3.27.7.
- Zaktualizowano komponenty payload na bazie GRUB 2.12 i Seabios 1.16.3.
Ponadto zaprezentowano wydanie projektu Libreboot 20240225, rozwijającego gotową wersję Coreboot do zastąpienia własnościowych firmware'ów UEFI i BIOS, odpowiedzialnych za inicjalizację CPU, pamięci, urządzeń peryferyjnych i innych komponentów sprzętowych. Libreboot ma na celu stworzenie środowiska systemowego, które pozwala obejść się bez własnościowego oprogramowania w jak największym zakresie, nie tylko na poziomie systemu operacyjnego, ale także w zakresie firmware'u odpowiedzialnego za rozruch. Libreboot uzupełnia Coreboot o narzędzia ułatwiające użytkownikom końcowym jego zastosowanie, tworząc gotowy dystrybucyjny pakiet, z którego może skorzystać każdy użytkownik, nie posiadający specjalnych umiejętności.
W nowym wydaniu:
- Dodano wsparcie dla laptopów HP EliteBook 8560w oraz Dell Latitude E5520/E5530/E6520/E6420.
- Dodano wsparcie dla komputerów Dell OptiPlex 9020/7020 (seria SFF, XE2 SFF, MT i XE2 MT).
- W skrypcie aktualizacji wydania dodano wsparcie dla generowania osobnego archiwum z kodem U-Boot (./update release -m u-boot).
- Do flashowania obrazów Libreboot na płytach głównych zamiast narzędzia flashrom wykorzystano narzędzia flashprog (fork flashrom, ukierunkowany na wsparcie stabilnych wydań i realizację wsparcia dla nowych chipów przy zachowaniu wsparcia dla starych).
Sprzęt wspierany w Libreboot:
- Płyty główne serwerów:
- ASUS KFSN4-DRE
- ASUS KGPE-D16
- Systemy desktopowe:
- Gigabyte GA-G41M-ES2L;
- Acer G43T-AM3;
- Intel D510MO / D410PT;
- Apple iMac 5,2;
- HP Elite 8200 SFF/MT;
- HP Elite 8300 USDT;
- ASUS KCMA-D8;
- Dell Precision T1650.
- Intel D945GCLF
- Seria Dell OptiPlex 7020 i 9020 SFF, XE2 SFF, MT i XE2 MT;
- Laptopy:
- ThinkPad X60 / X60S / X60 Tablet;
- ThinkPad T60;
- Lenovo ThinkPad X200 / X200S / X200 / X220 / X220 eDP / X230 Tablet;
- Lenovo ThinkPad X301;
- Lenovo ThinkPad R400;
- Lenovo ThinkPad T400 / T400S / T420 / T420S / T430 / T440;
- Lenovo ThinkPad T500 / T530;
- Lenovo ThinkPad W530 / W541;
- Lenovo ThinkPad R500;
- HP EliteBook 2560p / 2570p / 2170p / 8470p / Folio 9470m;
- HP EliteBook 820 G2;
- HP Compaq Elite 8300 CMT;
- HP EliteBook 8460p;
- HP EliteBook 8560w;
- Dell Latitude E6400 / E6430;
- Dell Latitude E5520/E5530/E6520/E6530/E6420;
- Apple MacBook1 i MacBook2;
- ASUS Chromebook Flip C101 (ARM);
- Samsung Chromebook Plus (ARM).
Źródło: opennet.ru
