CoreBoot 4.12 ya esta aquí y llega con soporte para 49 placas y más
Después de medio año de la última versión anunciada, se dio a conocer la liberación de la nueva versión de CoreBoot 4.12 en la cual se añadieron una serie de mejoras tales como mayor soporte, eliminación de código obsoleto y más.
Para quienes desconocen de CoreBoot, deben saber que esta es una alternativa de código abierto al tradicional Sistema Básico de Entrada-Salida (BIOS) que ya se encontraba en las PCs MS-DOS 80s y reemplazándola con UEFI (Unified Extensible). CoreBoot es también un análogo gratuito de firmware patentado y está disponible para verificación y auditoría completas. CoreBoot se utiliza como firmware base para la inicialización del hardware y la coordinación de arranque.
Incluyendo la inicialización del chip gráfico, PCIe, SATA, USB, RS232. Al mismo tiempo, los componentes binarios FSP 2.0 (Intel Firmware Support Package) y el firmware binario para el subsistema Intel ME, que son necesarios para inicializar y lanzar la CPU y el chipset, están integrados en CoreBoot.
¿Qué hay de nuevo en CoreBoot 4.12?
En esta nueva versión de CoreBoot 4.12, participaron 190 desarrolladores y prepararon 2692 cambios de entre los cuales los más importantes son los siguientes.
En Coreboot 4.12 se agregó soporte para 49 placas base, la mayoría de las cuales se utilizan en dispositivos con Chrome OS.
Mientras que por otra parte se eliminó el soporte para 51 placas base, cuya eliminación se relaciona principalmente con la finalización del soporte para placas obsoletas y el trabajo para eliminar duplicados de opciones de placa similares. Muchas placas, que se presentaron previamente como modelos separados, se combinan en conjuntos (variante), en los que un módulo cubre de inmediato toda la familia de dispositivos.
El código para soportar las plataformas AMDFAM10, VIA VX900 y FSP1.0 (BROADWELL_DE, FSP_BAYTRAIL, RANGELEY), que no cumplen con los nuevos requisitos, ha sido excluido de la base del código principal. Por ejemplo, en FSP1.0 no es posible implementar la etapa POSTCAR.
Teniendo en cuenta la limpieza de duplicados, a pesar del hecho de que formalmente el número de tableros retirados excede el número de agregados, la lista de equipos compatibles ha aumentado. La nueva versión también realizó una gran cantidad de cambios relacionados con la mejora del soporte para dispositivos que vienen con firmware OEM, incluidos aquellos basados en Coreboot.
Además de que se continúa limpiando la base del código, las notas de volumen sobre las licencias en los encabezados de los archivos se han reemplazado con identificadores cortos SPDX. Los nombres de todos los autores que participaron en el desarrollo se recopilan en el archivo AUTORES. Los archivos de encabezado se revisaron para minimizar el código cubierto durante el ensamblaje de cada unidad de ensamblaje.
El controlador para unidades flash SMMSTORE se reconoce como listo para su uso generalizado. El controlador utiliza el modo SMM (modo de administración del sistema) para escribir, leer y borrar áreas en la memoria flash, y puede usarse en el SO o componentes de firmware para organizar el almacenamiento permanente de configuraciones, sin la necesidad de implementar un controlador específico para cada plataforma.
Se han ampliado las herramientas de prueba de unidades, que se integran con el nuevo sistema de compilación y se transfieren al uso del marco Cmocka. Se ha creado un directorio de pruebas / separado en el árbol de origen para las pruebas unitarias.
Los componentes que ahora se requieren para los sistemas x86 incluyen RELOCATABLE_RAMSTAGE, POSTCAR_STAGE y C_ENVIRONMENT_BOOTBLOCK. RELOCATABLE_RAMSTAGE que permiten mover ramstage a otra área de memoria en tiempo de ejecución que no se superpone con el sistema operativo o los controladores de carga útil (el movimiento es necesario, ya que ramstage se almacena en caché en CBMEM para una carga más rápida al salir del modo de espera).
POSTCAR_STAGE se usa para cambiar de CAR (Cache-As-Ram) a código en ejecución desde DRAM. C_ENVIRONMENT_BOOTBLOCK permite usar bootblock compilado usando GCC regular, en lugar de un compilador romcc especializado.
Obtener CoreBoot
Finalmente, para quienes estén interesados en poder obtener esta nueva versión de CoreBoot pueden hacerlo desde su sección de descargas, que se encuentra dentro de su página web oficial del proyecto.
Además de que en ella podrán encontrar documentación y más información sobre el proyecto.