| General note on [U]EFI x86_64 support |
| ------------------------------------- |
| |
| The nomenclature EFI and UEFI are used interchangeably in this document. |
| |
| Although the tools below are _not_ needed for building the kernel, |
| the needed bootloader support and associated tools for x86_64 platforms |
| with EFI firmware and specifications are listed below. |
| |
| 1. UEFI specification: http://www.uefi.org |
| |
| 2. Booting Linux kernel on UEFI x86_64 platform requires bootloader |
| support. Elilo with x86_64 support can be used. |
| |
| 3. x86_64 platform with EFI/UEFI firmware. |
| |
| Mechanics: |
| --------- |
| - Build the kernel with the following configuration. |
| CONFIG_FB_EFI=y |
| CONFIG_FRAMEBUFFER_CONSOLE=y |
| If EFI runtime services are expected, the following configuration should |
| be selected. |
| CONFIG_EFI=y |
| CONFIG_EFI_VARS=y or m # optional |
| - Create a VFAT partition on the disk |
| - Copy the following to the VFAT partition: |
| elilo bootloader with x86_64 support, elilo configuration file, |
| kernel image built in first step and corresponding |
| initrd. Instructions on building elilo and its dependencies |
| can be found in the elilo sourceforge project. |
| - Boot to EFI shell and invoke elilo choosing the kernel image built |
| in first step. |
| - If some or all EFI runtime services don't work, you can try following |
| kernel command line parameters to turn off some or all EFI runtime |
| services. |
| noefi turn off all EFI runtime services |
| reboot_type=k turn off EFI reboot runtime service |