blob: 9feafb18c8686fa574e4adbe419004d9fd27952f [file] [log] [blame]
Ilias Apalodimas3510ba72020-02-21 09:55:45 +02001/* SPDX-License-Identifier: GPL-2.0+ */
2/*
3 * Copyright (c) 2020, Linaro Limited
4 */
5
6#if !defined _EFI_LOAD_INITRD_H_
7#define _EFI_LOAD_INITRD_H_
8
9#include <efi.h>
10#include <efi_api.h>
11
12/*
13 * Vendor GUID used by Linux to identify the handle with the
14 * EFI_LOAD_FILE2_PROTOCOL and load an initial ramdisk.
15 */
16#define EFI_INITRD_MEDIA_GUID \
17 EFI_GUID(0x5568e427, 0x68fc, 0x4f3d, \
18 0xac, 0x74, 0xca, 0x55, 0x52, 0x31, 0xcc, 0x68)
Heinrich Schuchardt6c405cb2021-10-15 02:33:33 +020019extern const efi_guid_t efi_lf2_initrd_guid;
Ilias Apalodimas3510ba72020-02-21 09:55:45 +020020
Heinrich Schuchardt40da9e62024-06-10 10:00:01 +020021/**
22 * struct efi_lo_dp_prefix - separator device path used in load options
23 *
24 * We use vendor media device nodes in UEFI load options to separate
25 * the binary, initrd, and fdt device-paths. This structure contains
26 * the vendor media device node and an end node.
27 *
28 * @vendor: vendor media device node
29 * @end: end node
30 */
31struct efi_lo_dp_prefix {
Ilias Apalodimas3510ba72020-02-21 09:55:45 +020032 struct efi_device_path_vendor vendor;
33 struct efi_device_path end;
34} __packed;
35
36#endif