rilascio del progetto , nell'ambito del quale viene sviluppata un'alternativa libera ai firmware e BIOS proprietari. La nuova versione è stata presentata da 190 sviluppatori che hanno preparato 2692 modifiche.
Principali :
- È stata aggiunta la compatibilità con 49 schede madri, la maggior parte delle quali è utilizzata su dispositivi con Chrome OS. È stata rimossa la compatibilità con 51 schede madri. La rimozione riguarda principalmente il termine del supporto per schede obsolete e la razionalizzazione dei duplicati di schede simili. Molte schede che in precedenza erano presentate come modelli separati sono state unite in varianti (variant), in cui un modulo copre l'intera famiglia di dispositivi. Tenendo presente la pulizia dei duplicati, nonostante formalmente il numero di schede rimosse superi quello delle aggiunte, l'elenco dell'hardware supportato è aumentato. Inoltre, sono state apportate molte modifiche per migliorare la compatibilità con i dispositivi forniti con firmware OEM, inclusi quelli basati su Coreboot.
- È continuata la pulizia della base di codice. Le note estese sulle licenze nelle intestazioni dei file sono state sostituite con identificatori brevi. . I nomi di tutti gli autori che hanno partecipato allo sviluppo sono stati raccolti nel file AUTHORS. È stata effettuata una revisione delle intestazioni dei file per minimizzare il codice incluso in ciascuna unità di compilazione.
- Driver per chiavette USB è stato dichiarato pronto per l'uso generale. Il driver utilizza la modalità SMM (system management mode) per scrivere, leggere e cancellare aree nella memoria flash e può essere utilizzato nei sistemi operativi o nei componenti del firmware per gestire un'archiviazione permanente delle impostazioni, senza la necessità di implementare un driver specifico per ogni piattaforma.
- Ampliate le risorse di unit testing, integrate con il nuovo sistema di compilazione e migrate all'uso del framework Cmocka. È stata creata una directory separata tests/ nell'albero dei sorgenti per i test unitari.
- I componenti il cui utilizzo è ora obbligatorio per i sistemi x86 includono RELOCATABLE_RAMSTAGE, POSTCAR_STAGE e C_ENVIRONMENT_BOOTBLOCK. RELOCATABLE_RAMSTAGE permette di spostare durante l'esecuzione in un'altra area di memoria, non sovrapposta a quella del sistema operativo o ai gestori di payload (lo spostamento è necessario poiché ramstage è memorizzato nella cache in CBMEM per un avvio più veloce al risveglio dalla modalità di sospensione). POSTCAR_STAGE è utilizzato per passare da CAR (Cache-As-Ram) all'esecuzione di codice da DRAM. C_ENVIRONMENT_BOOTBLOCK consente di utilizzare un bootblock compilato tramite un normale GCC piuttosto che un compilatore specializzato romcc.
- Il codice di supporto per le piattaforme AMDFAM10, VIA VX900 e FSP1.0 (BROADWELL_DE, FSP_BAYTRAIL, RANGELEY) è stato rimosso dalla base di codice principale in quanto non soddisfa i nuovi requisiti. Ad esempio, in FSP1.0 non è possibile implementare la fase POSTCAR.
Fonte: opennet.ru
