master
h 35 lines 758 Bytes
Raw
1 /*
2 * SPDX-License-Identifier: GPL-2.0-or-later
3 *
4 * pass hardware information to uefi
5 *
6 * see OvmfPkg/Library/HardwareInfoLib/ in edk2
7 */
8 #ifndef QEMU_UEFI_HARDWARE_INFO_H
9 #define QEMU_UEFI_HARDWARE_INFO_H
10
11 /* data structures */
12
13 typedef enum {
14 HardwareInfoTypeUndefined = 0,
15 HardwareInfoTypeHostBridge = 1,
16 HardwareInfoQemuUefiVars = 2,
17 } HARDWARE_INFO_TYPE;
18
19 typedef struct {
20 union {
21 uint64_t uint64;
22 HARDWARE_INFO_TYPE value;
23 } type;
24 uint64_t size;
25 } HARDWARE_INFO_HEADER;
26
27 typedef struct {
28 uint64_t mmio_address;
29 } HARDWARE_INFO_SIMPLE_DEVICE;
30
31 /* qemu functions */
32
33 void hardware_info_register(HARDWARE_INFO_TYPE type, void *info, uint64_t size);
34
35 #endif /* QEMU_UEFI_HARDWARE_INFO_H */