Se ha publicado la versión del proyecto CoreBoot 25.09, que desarrolla una alternativa libre a los firmware y BIOS propietarios. El código del proyecto se distribuye bajo la licencia GPLv2. La nueva versión incluye 684 cambios realizados con la participación de 110 desarrolladores.
Principales cambios:
- Se ha implementado el soporte para placas base:
- ASROCK SPC741D8-2L2T/BCM.
- GIGABYTE GA_H81M_D2W.
- HP 260 G1 DM, HP Compaq Pro 6300 SFF/MT, HP ProDesk 600 G1 SFF.
- Intel Ptlrvp4es
- Lenovo ThinkPad T480/T480s.
- 11 placas utilizadas en varios dispositivos con Chrome OS o en como en entornos de nube públicos o privados. Google.
- Se ha acelerado significativamente el arranque de SPI Flash y de los componentes del payload. En la compilación en modo CONFIG_SSE, se utilizaron instrucciones de prefetch SSE en el código de descompresión basado en el algoritmo LZMA, lo que permitió organizar la precarga de datos en la caché de la CPU sin interrumpir la operación de descompresión. Al probar la interfaz SPI con un ancho de banda de 100Mbit/s en CPUs móviles Intel Sandy Bridge, se logró reducir el tiempo de arranque en 46 ms y acelerar la descompresión de los componentes del payload en un 30%.
Para las plataformas Intel Panther Lake, se implementó soporte para la carga asíncrona de archivos, utilizando SPI DMA para la precarga del archivo fsps.bin paralelamente con la ejecución de otras tareas en la CPU. En dispositivos Fatcat, la optimización propuesta aceleró la carga en 17-18 ms. Se ha mejorado la eficiencia de las operaciones DMA. Se añadió una nueva función de sincronización cbfs_preload_wait_for_all(), que permite finalizar de manera segura las operaciones asíncronas antes de desactivar los backends de almacenamiento. En el subsistema Fast SPI DMA, se implementó una cola de transmisión de datos basada en tokens, minimizando las demoras entre operaciones DMA secuenciales y asegurando un rendimiento de carga más predecible.
- Se ha implementado la capacidad de detección del modo de arranque, permitiendo a las plataformas pasar a los componentes del payload información crítica sobre el estado del arranque. Se admite la identificación del modo de arranque normal, el modo de batería baja y el modo de carga de batería a través de la interfaz estandarizada boot_mode_t.
- Se ha reorganizado la gestión de los MTRR (Registros de Rango de Tipo de Memoria) para la memoria de video, lo que ha reducido el tiempo de inicialización del FSP-S (Paquete de Soporte de Firmware — Silicio) al trasladar la configuración del MTRR WC (Escritura Combinada) para la memoria de video de las funciones de renderizado del logotipo a la etapa de inicialización del chip. Como resultado, el tiempo de inicialización del subsistema gráfico se ha reducido de 123 a 115 ms. La reorganización también ha simplificado el mantenimiento del código mediante la separación de la gestión de MTRR y las funciones de renderizado del logotipo.
- En la utilidad amdfwtool, diseñada para trabajar con firmwares de AMD, se ha mejorado el procesamiento del modo de direccionamiento y se han ampliado las capacidades de análisis de la estructura EFW en la plataforma Turin.
- Se ha añadido soporte para bloques de tamaños variables y aliasing de tablas de secciones GUID en modo Secure Boot a la utilidad smmstoretool, mejorando la gestión de variables UEFI.
- Se ha ampliado el soporte TPM para diversas plataformas con CRB TPM y se ha mejorado la integración de fTPM para las plataformas AMD.
- Se ha mejorado el renderizado del logotipo.
- Se ha mejorado la compatibilidad con el controlador de pantalla Bochs.
- Se ha incrementado la estabilidad de la herramienta cbfstool al ordenar la tabla FIT y en caso de errores durante las operaciones de compresión.
- Se han realizado cambios para las plataformas Intel, AMD, MediaTek y Qualcomm que mejoran la gestión del consumo de energía, la inicialización de la memoria y el soporte de interfaces de hardware.
- Se han actualizado las versiones de binutils 2.44, ACPICA 20250404, MPFR 4.2.2, SeaBIOS 1.17.0, U-Boot 2025.07.
Fuente: opennet.ru
