]>
Commit | Line | Data |
---|---|---|
a26a08dc JB |
1 | /** @file\r |
2 | \r | |
3 | Copyright (c) 2006 - 2015, Intel Corporation. All rights reserved.<BR>\r | |
4 | SPDX-License-Identifier: BSD-2-Clause-Patent\r | |
5 | \r | |
6 | **/\r | |
7 | \r | |
8 | #include <Uefi.h>\r | |
9 | \r | |
10 | #include <Library/BaseLib.h>\r | |
11 | #include <Library/DebugLib.h>\r | |
12 | #include <Library/QemuLoadImageLib.h>\r | |
13 | #include <Library/ReportStatusCodeLib.h>\r | |
14 | #include <Library/UefiLib.h>\r | |
15 | \r | |
a26a08dc JB |
16 | EFI_STATUS\r |
17 | TryRunningQemuKernel (\r | |
18 | VOID\r | |
19 | )\r | |
20 | {\r | |
ac0a286f MK |
21 | EFI_STATUS Status;\r |
22 | EFI_HANDLE KernelImageHandle;\r | |
a26a08dc JB |
23 | \r |
24 | Status = QemuLoadKernelImage (&KernelImageHandle);\r | |
25 | if (EFI_ERROR (Status)) {\r | |
26 | return Status;\r | |
27 | }\r | |
28 | \r | |
29 | //\r | |
30 | // Signal the EVT_SIGNAL_READY_TO_BOOT event\r | |
31 | //\r | |
ac0a286f | 32 | EfiSignalEventReadyToBoot ();\r |
a26a08dc | 33 | \r |
ac0a286f MK |
34 | REPORT_STATUS_CODE (\r |
35 | EFI_PROGRESS_CODE,\r | |
36 | (EFI_SOFTWARE_DXE_BS_DRIVER | EFI_SW_DXE_BS_PC_READY_TO_BOOT_EVENT)\r | |
37 | );\r | |
a26a08dc JB |
38 | \r |
39 | //\r | |
40 | // Start the image.\r | |
41 | //\r | |
42 | Status = QemuStartKernelImage (&KernelImageHandle);\r | |
43 | if (EFI_ERROR (Status)) {\r | |
ac0a286f MK |
44 | DEBUG ((\r |
45 | DEBUG_ERROR,\r | |
46 | "%a: QemuStartKernelImage(): %r\n",\r | |
47 | __FUNCTION__,\r | |
48 | Status\r | |
49 | ));\r | |
a26a08dc JB |
50 | }\r |
51 | \r | |
52 | QemuUnloadKernelImage (KernelImageHandle);\r | |
53 | \r | |
54 | return Status;\r | |
55 | }\r |