From Fedora Project Wiki
(accepted at the 2008-09-03 FESCo meeting)
Line 23: Line 23:
|i386 starting the installer||90||just like x86_64 here
|i386 starting the installer||90||just like x86_64 here
|-
|-
|ia64 starting the installer||0||some grub work here, plus a small amount of work in anaconda's scripts/mk-images
|ia64 starting the installer||0|| F11 - some grub work here, plus a small amount of work in anaconda's scripts/mk-images
|-
|-
|x86_64 efi able to detect and boot the i386 kernel||0||probably not very hard, maybe a day or so of work.  we need this to install i386 on the Santa Rosa Macs (this is looking unlikely to be supported because of buildinstall issues)
|x86_64 efi able to detect and boot the i386 kernel||0||probably not very hard, maybe a day or so of work.  we need this to install i386 on the Santa Rosa Macs (this is looking unlikely to be supported because of buildinstall issues)
Line 31: Line 31:
|i386 installation||99||install mostly works, some minor(ish) bugs left
|i386 installation||99||install mostly works, some minor(ish) bugs left
|-
|-
|ia64 installation||0|| 0% is probably a lie here; switching from elilo to grub is most of the work involved
|ia64 installation||0|| F11 - 0% is probably a lie here; switching from elilo to grub is most of the work involved
|-
|-
|x86_64 booting (post install)||99||works for pjones, needs feedback from others
|x86_64 booting (post install)||99||works for pjones, needs feedback from others
Line 37: Line 37:
|i386 booting (post install)||99||works for pjones
|i386 booting (post install)||99||works for pjones
|-
|-
|ia64 booting (post install)||0||
|ia64 booting (post install)||0|| F11
|-
|-
|efibootmanager wrangling||99|| package committed to CVS, need to s/elilo/efibootmgr and grub/ in comps
|efibootmanager wrangling||99|| package committed to CVS, need to s/elilo/efibootmgr and grub/ in comps

Revision as of 21:11, 26 September 2008

EFI

Summary

(from uefi.org) UEFI stands for "Unified Extensible Firmware Interface". The UEFI specification defines a new model for the interface between personal-computer operating systems and platform firmware. The interface consists of data tables that contain platform-related information, plus boot and runtime service calls that are available to the operating system and its loader. Together, these provide a standard environment for booting an operating system and running pre-boot applications.


Owner

  • Name: PeterJones

Current status

  • Targeted release:
  • Last updated: 2008-09-02
  • Percentage of completion: 85%
Sub-task Percent Complete Notes
x86_64 starting the installer 90 'dd if=images/efidisk.img of=/dev/$USBSTICK' will get you a (somewhat malformed) usb stick that you can boot the intaller from. CDs/DVDs don't work yet.
i386 starting the installer 90 just like x86_64 here
ia64 starting the installer 0 F11 - some grub work here, plus a small amount of work in anaconda's scripts/mk-images
x86_64 efi able to detect and boot the i386 kernel 0 probably not very hard, maybe a day or so of work. we need this to install i386 on the Santa Rosa Macs (this is looking unlikely to be supported because of buildinstall issues)
x86_64 installation 99 install mostly works, some minor(ish) bugs left
i386 installation 99 install mostly works, some minor(ish) bugs left
ia64 installation 0 F11 - 0% is probably a lie here; switching from elilo to grub is most of the work involved
x86_64 booting (post install) 99 works for pjones, needs feedback from others
i386 booting (post install) 99 works for pjones
ia64 booting (post install) 0 F11
efibootmanager wrangling 99 package committed to CVS, need to s/elilo/efibootmgr and grub/ in comps

Detailed Description

EFI has long been available for ia64 systems. UEFI brings it to i386 (the Intel-based Apple Mac products have it, as do a few HP systems sold primarily in China), and it will be widely available in x86_64-capable systems in the next few years.

Several things need to happen (in no particular order):

  • GRUB needs to learn to read an EFI GUID Partition Table. (done)
  • GRUB needs to run as an EFI boot loader. (done)
  • GRUB needs to be ported to build and run on ia64 so elilo can be dropped (not done)
  • Kernel needs i386 and x86_64 CONFIG_EFI code (should be easier after the 2.6.24 merge into x86) (done)
  • Kernel needs CONFIG_FB_EFI and associated driver (efifb) (done)
  • Kernel needs CONFIG_FB_IMAC (imacfb support) for Intel Macs (obviated; pjones merged this into efifb)
  • GRUB needs to write out screen_info from UGA so we can use efifb instead of imacfb (done)
  • Kernel needs CONFIG_EFI_VARS enabled on i386 and x86_64 (done)
  • efibootmgr needs to be split out from the elilo package (done)


Benefit to Fedora

Hardware enablement.

Scope

Well-contained. grub, efibootmgr as described above, for 3 platforms.

Test Plan

UEFI-capable systems are available from a number of vendors under NDA. Those with access to such systems will need to perform the testing.

Test plan is pretty straightforward. The new components (grub, kernel, efibootmgr) will need to be tested for UEFI functionality.


User Experience

Significantly similar to that of today. The EFI Boot Manager, which runs in the BIOS, is a new feature, which can be frobbed at runtime using efibootmgr.

Dependencies

Vendor support in hardware

Contingency Plan

Slip to a future Fedora release.

Documentation

http://www.uefi.org

Release Notes

Since the hardware support is not yet widely available and the user impact is negligible, no release note is needed beyond "we support UEFI"

Comments and Discussion

See Talk:Features/EFI