grub2: bring back build of aros-side grub2 tools
[AROS.git] / compiler / include / hardware / efi / runtime.h
blobfca24148dcdd41902eb90f00b1fbffa0111e55c3
1 #ifndef HARDWARE_EFI_RUNTIME_H
2 #define HARDWARE_EFI_RUNTIME_H
4 /*
5 Copyright © 2011, The AROS Development Team. All rights reserved.
6 $Id$
8 Desc: EFI firmware runtime services
9 Lang: english
12 #include <hardware/efi/tables.h>
13 #include <libraries/uuid.h>
15 /* Time value */
16 struct EFI_Time
18 UWORD Year;
19 UBYTE Month;
20 UBYTE Day;
21 UBYTE Hour;
22 UBYTE Minute;
23 UBYTE Second;
24 UBYTE Pad1;
25 ULONG Nano;
26 WORD TimeZone;
27 UBYTE Daylight; /* Flags, see below */
28 UBYTE Pad2;
31 /* Tells that clock are running in local time */
32 #define EFI_TIMEZONE_LOCAL 0x07FF
34 /* Daylight flags */
35 #define EFI_TIME_ADJUST_DST 0x01
36 #define EFI_TIME_IN_DST 0x02
38 /* Time capabilities */
39 struct EFI_Time_Caps
41 ULONG Resolution;
42 ULONG Accuracy;
43 UBYTE SetsToZero;
46 /* Reset types */
47 enum
49 EFI_Reset_Cold,
50 EFI_Reset_Warm,
51 EFI_Reset_Shutdown
54 struct EFI_Runtime
56 struct EFI_TableHeader Hdr;
58 __eficall SIPTR (*GetTime)(struct EFI_Time *Time, struct EFI_Time_Cap *Caps);
59 __eficall SIPTR (*SetTime)(struct EFI_Time *Time);
60 __eficall SIPTR (*GetWakeupTime)(UBYTE *Enabled, UBYTE *Pending, struct EFI_Time *Time);
61 __eficall SIPTR (*SetWakeupTime)(UBYTE Enabled, struct EFI_Time *Time);
62 __eficall SIPTR (*SetVirtualAddressMap)(IPTR MapSize, IPTR EntrySize, ULONG EntryVersion, struct EFI_MemMap *Map);
63 __eficall SIPTR (*ConvertPointer)(IPTR DebugDisposition, void **Addr);
64 __eficall SIPTR (*GetVariable)(UWORD *Name, uuid_t *VendorGUID, ULONG *Attrs, IPTR *DataSize, void *Data);
65 __eficall SIPTR (*GetNextVariableName)(IPTR *NameSize, UWORD *Name, uuid_t *VendorGUID);
66 __eficall SIPTR (*SetVariable)(UWORD *Name, uuid_t *VendorGUID, ULONG Attrs, void *Data);
67 __eficall SIPTR (*GetNextHighMonotonicCount)(ULONG *HighCount);
68 __eficall void (*ResetSystem)(ULONG Type, SIPTR Status, IPTR DataSize, UWORD *Data);
71 #define EFI_RUNTIME_SERVICES_SIGNATURE 0x56524553544e5552
73 #endif