Following patchset adds EFI/UEFI (Unified Extensible Firmware Interface) runtime services support to x86_64 architecture.
The patchset have been tested against 2.6.24-rc1 kernel on Intel platforms with 64-bit EFI1.10 and UEFI2.0 firmware. Because the duplicated code between efi_32.c and efi_64.c is removed, the patchset is also tested on Intel platform with 32-bit EFI firmware. v5: - Remove the duplicated code between efi_32.c and efi_64.c. - Rename lin2win<x> to efi_call<x>. - Make EFI time runtime service default to off. - Use different bootloader signature for EFI32 and EFI64, so that kernel can know whether underlaying EFI firmware is 64-bit or 32-bit. v4: - EFI boot parameters are extended for 64-bit EFI in a 32-bit EFI compatible way. - Add EFI runtime services document. v3: - Remove E820_RUNTIME_CODE, the EFI memory map is used to deal with EFI runtime code area. - The method used to make EFI runtime code area executable is change: a. Before page allocation is usable, the PMD of direct mapping is changed temporarily before and after each EFI call. b. After page allocation is usable, change_page_attr_addr is used to change corresponding page attribute. - Use fixmap to map EFI memory mapped IO memory area to make kexec workable. - Add a kernel command line option "noefi" to make it possible to turn off EFI runtime services support. - Function pointers are used for EFI time runtime service. - EFI reboot runtime service is embedded into the framework of reboot_type. - A kernel command line option "noefi_time" is added to make it possible to fall back to CMOS based implementation. v2: - The EFI callwrapper is re-implemented in assembler. Best Regards, Huang Ying - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/