Ada banyak kontroversi seputar UEFI, tetapi suka atau tidak, itu menjadi satu-satunya pilihan ketika datang ke motherboard desktop yang tersedia secara umum. Saya telah menghindari UEFI mobos selama beberapa waktu, tetapi sekarang menjadi sangat sulit karena vendor mobo mengirimkan produk UEFI dengan lebih banyak fitur daripada yang BIOS (yaitu dukungan untuk lebih banyak RAM). Itu dalam pikiran, saya ingin memastikan bahwa setidaknya ada opsi untuk menjadi open source di masa depan, dan jika tidak ada, saya dapat menanggung lebih sedikit fitur tetapi lebih banyak kebebasan.
TianoCore adalah implementasi open source antarmuka UEFI dari Intel dan Wikipedia mengatakan ini :
TianoCore tidak memiliki driver khusus yang menginisialisasi fungsi chipset, yang sebaliknya disediakan oleh Coreboot, di mana TianoCore adalah salah satu dari banyak opsi payload. Pengembangan Coreboot membutuhkan kerja sama dari produsen chipset untuk memberikan spesifikasi yang diperlukan untuk mengembangkan driver inisialisasi.
Pertanyaan saya adalah, apakah driver yang disediakan oleh coreboot ini masih memerlukan beberapa jenis binary blob dari vendor chipset? Juga, Ronald G. Minnich mengatakan ini tentang EFI:
Akses ke alamat I / O IDE, atau alamat memori tertentu, dapat terjebak ke kode EFI dan berpotensi diperiksa dan dimodifikasi atau dibatalkan. Banyak yang melihat ini sebagai upaya untuk membangun "DRM BIOS".
Dalam pengaturan TianoCore + coreboot, adakah bagian yang berpotensi melakukan open source atau firmware biner yang disediakan oleh vendor perangkat keras?
sumber
Dimungkinkan untuk menggabungkan coreboot (melakukan inisialisasi perangkat keras awal) dan TianoCore (menyediakan UEFI API) ke implementasi firmware UEFI yang lengkap. Namun itu masih dalam pengembangan. Ini juga tidak akan menjadi UEFI "kanonik" karena lapisan luar akan menjadi coreboot.
Satu pendekatan, berdasarkan Duet, dapat ditemukan di http://notabs.org/coreboot/duet-payload/ - ia melakukan booting sedikit pada perangkat keras nyata.
Upaya lain (pengungkapan: proyek saya) yang mencoba menggunakan kembali Tiano dan lebih dekat dengan arsitektur UEFI ada di github: https://github.com/pgeorgi/edk2/ . Yang ini belum melihat banyak pengujian pada perangkat keras nyata, hanya Qemu.
Pada prinsipnya itu juga bisa berfungsi untuk mengambil kode coreboot dan membuat paket tianocore dari mereka, sehingga terlihat dan terasa seperti UEFI di setiap aspek (bukan hanya yang terlihat oleh pengguna dan OS). Jelas pengembang coreboot tidak terlalu tertarik dengan hal itu.
sumber
Inisialisasi chipset dan kode spesifik perangkat keras tingkat rendah lainnya selalu merupakan sumber tertutup. BIOS / UEFI tidak mengubah fakta bahwa detail inisialisasi pengontrol memori, dll. Jarang diungkapkan oleh vendor board.
Untuk memiliki papan sumber terbuka sejati, Anda harus mencari perangkat keras sumber terbuka, beberapa vendor yang memaparkan semua spesifikasi setiap komponen perangkat keras pada motherboard. Itu sulit ditemukan, untuk sedikitnya.
sumber