Wydanie Coreboot 4.22

Wydano wydanie projektu CoreBoot 4.22, w ramach którego rozwijana jest wolna alternatywa dla proprietary firmware i BIOS. Kod projektu jest rozpowszechniany na licencji GPLv2. W tworzeniu nowej wersji wzięło udział 135 programistów, którzy przygotowali 977 zmian. Zauważono, że od następnej wersji projekt przejdzie na nową scheme nazewnictwa wersji, wykorzystującą powiązanie z datą (rok.miesiąc.aktualizacja), na przykład w lutym 2024 roku zamiast wersji 4.23 zostanie wydana wersja 24.02.00.

Główne zmiany:

  • Dodano początkową implementację platformy AMD openSIL (Open-Source Silicon Initialization Library), rozwijającą komponenty do uproszczenia tworzenia firmware.
  • Dodano wsparcie dla 17 płyt głównych. 11 dodanych płyt jest używanych na urządzeniach z Chrome OS lub na serwerach Google. Płyty niezwiązane z Google:
    • AMD Onyx
    • Intel Meteorlake-P RVP
    • Purism Librem 11
    • Purism Librem L1UM v2
    • Siemens FA EHL
    • Supermicro X11SSW-F
  • Dodano wsparcie dla SoC AMD Genoa.
  • Na architekturze x86 na etapach przed inicjalizacją pamięci wprowadzono wsparcie dla sekcji ".data", umożliwiającej korzystanie z definicji globalnych zmiennych w kodzie języka C. Na etapie boot block dane są dołączane natychmiast po kodzie, a następnie umieszczane w pamięci podręcznej, wykorzystując koncepcję Cache-As-RAM (VMA).
  • Dla systemów x86 na etapie ramstage i etapach przed inicjalizacją pamięci wprowadzono wsparcie dla pamięci podręcznej systemu plików CBFS, używanego do umieszczania komponentów Coreboot na Flash. Pamięć podręczna CBFS pozwala na dekompresję plików CBFS, korzystając z funkcji cbfs_map() bez rezerwowania dla pliku oddzielnego obszaru pamięci. Do konfiguracji rozmiaru pamięci podręcznej zaproponowano parametry PRERAM_CBFS_CACHE_SIZE i RAMSTAGE_CBFS_CACHE_SIZE.
  • Dodano możliwość osadzenia romstage w boot block (blok bootowy). Włączenie romstage w skład boot block pozwala na zmniejszenie rozmiaru kodu o 10-20 tysięcy linii. W sytuacjach, w których może być wymagana oddzielna dostawa romstage, wymieniane są konfiguracje z vboot lub trybem fallback, a także urządzenia z ograniczonym rozmiarem boot block (Intel APL 32K) lub zbyt wolnym nośnikiem rozruchowym (niektóre ARM SoC).
  • W gfx dodano API do określania obecności zewnętrznego ekranu na urządzeniach z chipami Intel.
  • W pci_rom wprowadzono możliwość dodania sumy kontrolnej dla VBIOS przy wypełnianiu tabeli VFCT. Tego rodzaju suma kontrolna jest sprawdzana przez niektóre sterowniki AMD dla systemu Windows.
  • Wprowadzono zmiany umożliwiające uruchamianie systemu Windows na niektórych urządzeniach Chromebook z Coreboot.
  • Zrealizowano generację tabeli ACPI dla urządzeń opartych na architekturze ARM64.
  • Udoskonalono kompatybilność ze specyfikacjami ACPI.
  • Ustawienia MRC (Memory Reference Code) dla płyt SNB+MRC przeniesiono do struktury DeviceTree.
  • Zaktualizowano komponenty payload na bazie U-Boot i edk2.
  • Zaktualizowano używane narzędzia: GMP 6.3.0, binutils 2.41 oraz MPFR 4.2.1.
  • Główna gałąź w repozytorium Git została przemianowana z „master” na „main”.

Źródło: opennet.ru

Kup solidny hosting stron z ochroną przed DDoS, serwery VPS VDS 🔥 Kup solidny hosting stron z ochroną przed DDoS, serwery VPS VDS | ProHoster