lançamento do projeto , no qual é desenvolvida uma alternativa livre para firmwares e BIOS proprietários. A nova versão contou com a contribuição de 190 desenvolvedores, que prepararam 2692 alterações.
Principais :
- Foi adicionada a compatibilidade com 49 placas-mãe, a maioria das quais é utilizada em dispositivos com Chrome OS. O suporte a 51 placas-mãe foi removido. A remoção diz respeito principalmente à descontinuação do suporte de placas obsoletas e ao trabalho de eliminação de duplicatas de placas semelhantes. Muitas placas que anteriormente eram apresentadas como modelos distintos foram agrupadas em conjuntos (variant), nos quais um único módulo abrange toda a família de dispositivos. Considerando a limpeza de duplicatas, apesar de o número formal de placas removidas exceder o das adicionadas, a lista de hardware suportado aumentou. Esta versão também traz inúmeras melhorias no suporte a dispositivos que são entregues com firmwares OEM, inclusive baseados em Coreboot.
- A limpeza da base de código foi continuada. Notas extensivas sobre licenças nos cabeçalhos dos arquivos foram substituídas por identificadores concisos. . Nomes de todos os autores que participaram do desenvolvimento foram reunidos no arquivo AUTHORS. Foi feita uma revisão dos cabeçalhos dos arquivos para minimizar o código coberto durante a construção de cada unidade de compilação.
- Driver para unidades flash é considerado pronto para uso em larga escala. O driver utiliza o modo SMM (modo de gerenciamento de sistema) para gravar, ler e limpar áreas na memória flash, e pode ser aplicado em sistemas operacionais ou componentes de firmware para organizar o armazenamento permanente de configurações, sem a necessidade de implementar um driver específico para cada plataforma.
- Ferramentas de teste unitário foram expandidas, integradas ao novo sistema de construção e migradas para utilizar o framework Cmocka. No diretório de códigos fonte para testes unitários, foi criado um diretório separado tests/.
- Os componentes cujo uso agora é obrigatório para sistemas x86 incluem RELOCATABLE_RAMSTAGE, POSTCAR_STAGE e C_ENVIRONMENT_BOOTBLOCK. RELOCATABLE_RAMSTAGE permite mover durante a execução. em uma área de memória que não se sobrepõe à memória do sistema operacional ou aos manipuladores de payload (a movimentação é necessária, pois o ramstage é armazenado em CBMEM para um carregamento mais rápido ao sair do modo de espera). POSTCAR_STAGE é utilizado para a transição do CAR (Cache-As-Ram) para a execução de código a partir da DRAM. C_ENVIRONMENT_BOOTBLOCK permite usar o bootblock construído com GCC padrão, em vez de um compilador especializado romcc.
- O código de suporte para as plataformas AMDFAM10, VIA VX900 e FSP1.0 (BROADWELL_DE, FSP_BAYTRAIL, RANGELEY) foi removido da base de código principal, pois não atende aos novos requisitos. Por exemplo, na FSP1.0, não é possível implementar a fase POSTCAR.
Fonte: opennet.ru
