• Home
Name Date Size #Lines LOC

..--

arch-arm/03-May-2024-437168

arch-x86/03-May-2024-23372

hvm/03-May-2024-18958

io/03-May-2024-1,257357

READMED03-May-20241.6 KiB3829

event_channel.hD03-May-20244.1 KiB11922

grant_table.hD03-May-202417.2 KiB445135

memory.hD03-May-20243.2 KiB9527

xen-compat.hD03-May-20241.9 KiB4512

xen.hD03-May-202413.4 KiB347143

README

1The headers in this directory have been imported from the Xen Project with few
2modification that are described in this README.
3
4The modifications that needed to be done are:
5- Use of ZeroMem() or SetMem() instead of memset().
6- If a struct is using a 64bit field, then a #pragma(4) might be needed
7  for IA32, like in io/blkif.h.
8- Replace the types with the ones used in UEFI.
9
10
11* Command to run to change types:
12find OvmfPkg/Include/IndustryStandard/Xen -type f -name '*.h' -exec sed --regexp-extended --file=fix_type_in_xen_includes.sed --in-place {} \;
13
14$ cat fix_type_in_xen_includes.sed
15# Avoid changing the 'long' that is not a type.
16/as long as/b
17
18s/([^a-zA-Z0-9_]|^)uint8_t([^a-zA-Z0-9_]|$)/\1UINT8\2/g
19s/([^a-zA-Z0-9_]|^)uint16_t([^a-zA-Z0-9_]|$)/\1UINT16\2/g
20s/([^a-zA-Z0-9_]|^)uint32_t([^a-zA-Z0-9_]|$)/\1UINT32\2/g
21s/([^a-zA-Z0-9_]|^)uint64_t([^a-zA-Z0-9_]|$)/\1UINT64\2/g
22
23s/([^a-zA-Z0-9_]|^)int8_t([^a-zA-Z0-9_]|$)/\1INT8\2/g
24s/([^a-zA-Z0-9_]|^)int16_t([^a-zA-Z0-9_]|$)/\1INT16\2/g
25s/([^a-zA-Z0-9_]|^)int32_t([^a-zA-Z0-9_]|$)/\1INT32\2/g
26s/([^a-zA-Z0-9_]|^)int64_t([^a-zA-Z0-9_]|$)/\1INT64\2/g
27
28s/([^a-zA-Z0-9_]|^)void([^a-zA-Z0-9_]|$)/\1VOID\2/g
29s/([^a-zA-Z0-9_]|^)unsigned int([^a-zA-Z0-9_]|$)/\1UINT32\2/g
30s/([^a-zA-Z0-9_]|^)int([^a-zA-Z0-9_]|$)/\1INT32\2/g
31s/([^a-zA-Z0-9_]|^)unsigned char([^a-zA-Z0-9_]|$)/\1UINT8\2/g
32s/([^a-zA-Z0-9_]|^)char([^a-zA-Z0-9_]|$)/\1CHAR8\2/g
33s/([^a-zA-Z0-9_]|^)unsigned long([^a-zA-Z0-9_]|$)/\1UINTN\2/g
34s/([^a-zA-Z0-9_]|^)long([^a-zA-Z0-9_]|$)/\1INTN\2/g
35
36s/__i386__/MDE_CPU_IA32/g
37s/__x86_64__/MDE_CPU_X64/g
38