TianoCore EDK2 master
|
Go to the source code of this file.
Functions | |
EFI_STATUS EFIAPI | LoadLinuxCheckKernelSetup (IN VOID *KernelSetup, IN UINTN KernelSetupSize) |
UINTN EFIAPI | LoadLinuxGetKernelSize (IN VOID *KernelSetup, IN UINTN KernelSize) |
EFI_STATUS EFIAPI | LoadLinux (IN VOID *Kernel, IN OUT VOID *KernelSetup) |
VOID *EFIAPI | LoadLinuxAllocateKernelSetupPages (IN UINTN Pages) |
EFI_STATUS EFIAPI | LoadLinuxInitializeKernelSetup (IN VOID *KernelSetup) |
VOID *EFIAPI | LoadLinuxAllocateKernelPages (IN VOID *KernelSetup, IN UINTN Pages) |
VOID *EFIAPI | LoadLinuxAllocateCommandLinePages (IN UINTN Pages) |
VOID *EFIAPI | LoadLinuxAllocateInitrdPages (IN VOID *KernelSetup, IN UINTN Pages) |
EFI_STATUS EFIAPI | LoadLinuxSetCommandLine (IN OUT VOID *KernelSetup, IN CHAR8 *CommandLine) |
EFI_STATUS EFIAPI | LoadLinuxSetInitrd (IN OUT VOID *KernelSetup, IN VOID *Initrd, IN UINTN InitrdSize) |
Load/boot UEFI Linux.
Copyright (c) 2011 - 2013, Intel Corporation. All rights reserved.
SPDX-License-Identifier: BSD-2-Clause-Patent
Definition in file LoadLinuxLib.h.
EFI_STATUS EFIAPI LoadLinux | ( | IN VOID * | Kernel, |
IN OUT VOID * | KernelSetup | ||
) |
Loads and boots UEFI Linux.
Note: If successful, then this routine will not return
[in] | Kernel | - The main kernel image |
[in,out] | KernelSetup | - The kernel setup image |
EFI_NOT_FOUND | - The Linux kernel was not found |
EFI_INVALID_PARAMETER | - Kernel or KernelSetup was NULL |
EFI_UNSUPPORTED | - The Linux kernel version is not supported |
Allocates pages for the kernel.
[in] | KernelSetup | - The kernel setup image |
[in] | Pages | - The number of pages. (It is recommended to use the size returned from LoadLinuxGetKernelSize.) |
NULL | - Unable to allocate pages |
!NULL | - The address of the pages allocated |
EFI_STATUS EFIAPI LoadLinuxCheckKernelSetup | ( | IN VOID * | KernelSetup, |
IN UINTN | KernelSetupSize | ||
) |
Verifies that the kernel setup image is valid and supported. The kernel setup image should be checked before using other library routines which take the kernel setup as an input.
[in] | KernelSetup | - The kernel setup image |
[in] | KernelSetupSize | - The kernel setup size |
EFI_SUCCESS | - The Linux kernel setup is valid and supported |
EFI_INVALID_PARAMETER | - KernelSetup was NULL |
EFI_UNSUPPORTED | - The Linux kernel is not supported |
Gets the initial runtime size of the Linux kernel image by examining the kernel setup image.
[in] | KernelSetup | - The kernel setup image |
[in] | KernelSize | - The kernel size on disk. |
0 | An error occurred |
!0 | The initial size required by the kernel to begin execution. |
EFI_STATUS EFIAPI LoadLinuxInitializeKernelSetup | ( | IN VOID * | KernelSetup | ) |
Clears the uninitialised space before and after the struct setup_header in the kernel setup image. The kernel requires that these be zeroed unless explicitly initialised, so this function should be called after the setup_header has been copied in from a bzImage, before setting up anything else.
[in] | KernelSetup | - The kernel setup image |
EFI_SUCCESS | - The Linux kernel setup was successfully initialized |
EFI_INVALID_PARAMETER | - KernelSetup was NULL |
EFI_UNSUPPORTED | - The Linux kernel is not supported |
EFI_STATUS EFIAPI LoadLinuxSetCommandLine | ( | IN OUT VOID * | KernelSetup, |
IN CHAR8 * | CommandLine | ||
) |
Sets the kernel command line parameter within the setup image.
[in,out] | KernelSetup | - The kernel setup image |
[in] | CommandLine | - The kernel command line |
EFI_SUCCESS | - The Linux kernel setup is valid and supported |
EFI_INVALID_PARAMETER | - KernelSetup was NULL |
EFI_UNSUPPORTED | - The Linux kernel is not supported |
EFI_STATUS EFIAPI LoadLinuxSetInitrd | ( | IN OUT VOID * | KernelSetup, |
IN VOID * | Initrd, | ||
IN UINTN | InitrdSize | ||
) |
Sets the kernel initial ram disk pointer within the setup image.
[in,out] | KernelSetup | - The kernel setup image |
[in] | Initrd | - Pointer to the initial ram disk |
[in] | InitrdSize | - The initial ram disk image size |
EFI_SUCCESS | - The Linux kernel setup is valid and supported |
EFI_INVALID_PARAMETER | - KernelSetup was NULL |
EFI_UNSUPPORTED | - The Linux kernel is not supported |