VirtualBox

source: vbox/trunk/src/VBox/Devices/EFI/DevEFI-binaries.S@ 102797

Last change on this file since 102797 was 101616, checked in by vboxsync, 14 months ago

Devices: Don't (ab)use VBOX_VMM_TARGET_ARMV8 for defining whether the Armv8 bits are compiled in. Use VBOX_WITH_VIRT_ARMV8 as VBoxDD is combined for x86 and arm and doesn't has a dedicated binary like VBoxVMMArm has, bugref:10385

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
File size: 2.8 KB
Line 
1/* $Id: DevEFI-binaries.S 101616 2023-10-27 12:37:51Z vboxsync $ */
2/** @file
3 * DevEFI - firmware binaries.
4 */
5
6/*
7 * Copyright (C) 2011-2023 Oracle and/or its affiliates.
8 *
9 * This file is part of VirtualBox base platform packages, as
10 * available from https://www.virtualbox.org.
11 *
12 * This program is free software; you can redistribute it and/or
13 * modify it under the terms of the GNU General Public License
14 * as published by the Free Software Foundation, in version 3 of the
15 * License.
16 *
17 * This program is distributed in the hope that it will be useful, but
18 * WITHOUT ANY WARRANTY; without even the implied warranty of
19 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
20 * General Public License for more details.
21 *
22 * You should have received a copy of the GNU General Public License
23 * along with this program; if not, see <https://www.gnu.org/licenses>.
24 *
25 * SPDX-License-Identifier: GPL-3.0-only
26 */
27
28
29#ifdef RT_OS_DARWIN
30#define NAME(a_Name) _##a_Name
31#else
32#define NAME(a_Name) a_Name
33#endif
34
35.section __TEXT,__const
36
37; 32-bit firmware:
38.p2align 6
39.globl NAME(g_abEfiFirmware32)
40NAME(g_abEfiFirmware32):
41 .incbin "VBoxEFI32.fd"
42end_32_firmware:
43
44.p2align 2
45.globl NAME(g_cbEfiFirmware32)
46NAME(g_cbEfiFirmware32):
47 .long end_32_firmware - NAME(g_abEfiFirmware32)
48
49
50; 64-bit firmware:
51.p2align 6
52.globl NAME(g_abEfiFirmware64)
53NAME(g_abEfiFirmware64):
54 .incbin "VBoxEFI64.fd"
55end_64_firmware:
56
57.p2align 2
58.globl NAME(g_cbEfiFirmware64)
59NAME(g_cbEfiFirmware64):
60 .long end_64_firmware - NAME(g_abEfiFirmware64)
61
62#ifdef ASM_FORMAT_ELF
63.size g_abEfiFirmware32 end_32_firmware - NAME(g_abEfiFirmware32)
64.type g_abEfiFirmware32 object
65.size g_cbEfiFirmware32 4
66.type g_cbEfiFirmware32 object
67
68.size g_abEfiFirmware64 end_64_firmware - NAME(g_abEfiFirmware64)
69.type g_abEfiFirmware64 object
70.size g_cbEfiFirmware64 4
71.type g_cbEfiFirmware64 object
72#endif
73
74#ifdef VBOX_WITH_VIRT_ARMV8
75;
76; The ARMv8 bits
77;
78
79; 32-bit firmware:
80.p2align 6
81.globl NAME(g_abEfiFirmwareAArch32)
82NAME(g_abEfiFirmwareAArch32):
83 .incbin "VBoxEFIAArch32.fd"
84end_aarch32_firmware:
85
86.p2align 2
87.globl NAME(g_cbEfiFirmwareAArch32)
88NAME(g_cbEfiFirmwareAArch32):
89 .long end_aarch32_firmware - NAME(g_abEfiFirmwareAArch32)
90
91
92; 64-bit firmware:
93.p2align 6
94.globl NAME(g_abEfiFirmwareAArch64)
95NAME(g_abEfiFirmwareAArch64):
96 .incbin "VBoxEFIAArch64.fd"
97end_aarch64_firmware:
98
99.p2align 2
100.globl NAME(g_cbEfiFirmwareAArch64)
101NAME(g_cbEfiFirmwareAArch64):
102 .long end_aarch64_firmware - NAME(g_abEfiFirmwareAArch64)
103
104# ifdef ASM_FORMAT_ELF
105.size g_abEfiFirmwareAArch32 end_aarch32_firmware - NAME(g_abEfiFirmwareAArch32)
106.type g_abEfiFirmwareAArch32 object
107.size g_cbEfiFirmwareAArch32 4
108.type g_cbEfiFirmwareAArch32 object
109
110.size g_abEfiFirmwareAArch64 end_aarch64_firmware - NAME(g_abEfiFirmwareAArch64)
111.type g_abEfiFirmwareAArch64 object
112.size g_cbEfiFirmwareAArch64 4
113.type g_cbEfiFirmwareAArch64 object
114# endif
115#endif
Note: See TracBrowser for help on using the repository browser.

© 2024 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette