lanzamiento del proyecto , en el marco del cual se desarrolla una alternativa libre a los firmware y BIOS propietarios. En la creación de la nueva versión participaron 190 desarrolladores, quienes prepararon 2692 cambios.
Principales :
- Se ha añadido soporte para 49 placas base, la mayoría de las cuales se utilizan en dispositivos con Chrome OS. Se ha eliminado el soporte para 51 placas base. La eliminación se refiere principalmente a la interrupción del soporte para placas obsoletas y a la realización de trabajos para eliminar duplicados de variantes similares de placas. Muchas placas que anteriormente se presentaban como modelos separados se han combinado en conjuntos (variant), donde un módulo abarca toda la familia de dispositivos. Teniendo en cuenta la limpieza de duplicados, a pesar de que formalmente el número de placas eliminadas supera al número de añadidas, la lista de hardware compatible ha aumentado. En la nueva versión también se han realizado una gran cantidad de cambios relacionados con la mejora del soporte para dispositivos que se suministran con firmwares OEM, incluidos aquellos basados en Coreboot.
- Se ha continuado la limpieza de la base de código. Las extensas notas sobre licencias en los encabezados de los archivos se han sustituido por identificadores breves. . Los nombres de todos los autores que participaron en el desarrollo se han recopilado en el archivo AUTHORS. Se ha realizado una revisión de los archivos de encabezado para minimizar el código abarcado durante la compilación de cada unidad de ensamblaje.
- Controlador para unidades flash se considera listo para un uso generalizado. El controlador utiliza el modo SMM (modo de gestión del sistema) para escribir, leer y borrar áreas en la memoria flash, y puede ser utilizado en sistemas operativos o componentes de firmware para organizar almacenamiento persistente de configuraciones, sin la necesidad de implementar un controlador específico para cada plataforma.
- Se han ampliado las herramientas de pruebas unitarias, que están integradas con el nuevo sistema de construcción y se han migrado al uso del marco Cmocka. En el árbol de código fuente para pruebas unitarias se ha creado un directorio separado tests/.
- Los componentes cuyo uso ahora es obligatorio para sistemas x86 incluyen RELOCATABLE_RAMSTAGE, POSTCAR_STAGE y C_ENVIRONMENT_BOOTBLOCK. RELOCATABLE_RAMSTAGE permite mover durante la ejecución en otra área de memoria que no se superpone con la memoria del SO o de los manejadores de payload (el movimiento es necesario ya que ramstage se almacena en CBMEM para un inicio más rápido al salir del modo de espera). POSTCAR_STAGE se utiliza para pasar de CAR (Cache-As-Ram) a la ejecución de código desde DRAM. C_ENVIRONMENT_BOOTBLOCK permite utilizar un bootblock construido con el GCC habitual, en lugar de un compilador especializado como romcc.
- Se ha excluido el código de la base de código principal para el soporte de las plataformas AMDFAM10, VIA VX900 y FSP1.0 (BROADWELL_DE, FSP_BAYTRAIL, RANGELEY), que no cumplen con los nuevos requisitos. Por ejemplo, en FSP1.0 no es posible implementar la etapa POSTCAR.
Fuente: opennet.ru
