mirror of
https://github.com/EnderIce2/Fennix.git
synced 2025-07-02 02:49:15 +00:00
feat(kernel): use efi in kernel for smbios and rsdp info
This commit is contained in:
301
Kernel/include/efi/calls.h
Normal file
301
Kernel/include/efi/calls.h
Normal file
@ -0,0 +1,301 @@
|
||||
/*
|
||||
This file is part of Fennix Kernel.
|
||||
|
||||
Fennix Kernel is free software: you can redistribute it and/or
|
||||
modify it under the terms of the GNU General Public License as
|
||||
published by the Free Software Foundation, either version 3 of
|
||||
the License, or (at your option) any later version.
|
||||
|
||||
Fennix Kernel is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with Fennix Kernel. If not, see <https://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#pragma once
|
||||
|
||||
typedef EFI_STATUS(EFIAPI *EFI_INPUT_RESET)(
|
||||
IN EFI_SIMPLE_TEXT_INPUT_PROTOCOL *This,
|
||||
IN BOOLEAN ExtendedVerification);
|
||||
|
||||
typedef EFI_STATUS(EFIAPI *EFI_INPUT_READ_KEY)(
|
||||
IN EFI_SIMPLE_TEXT_INPUT_PROTOCOL *This,
|
||||
OUT EFI_INPUT_KEY *Key);
|
||||
|
||||
typedef EFI_TPL(EFIAPI *EFI_RAISE_TPL)(
|
||||
IN EFI_TPL NewTpl);
|
||||
|
||||
typedef VOID(EFIAPI *EFI_RESTORE_TPL)(
|
||||
IN EFI_TPL OldTpl);
|
||||
|
||||
typedef EFI_STATUS(EFIAPI *EFI_ALLOCATE_PAGES)(
|
||||
IN EFI_ALLOCATE_TYPE Type,
|
||||
IN EFI_MEMORY_TYPE MemoryType,
|
||||
IN UINTN Pages,
|
||||
IN OUT EFI_PHYSICAL_ADDRESS *Memory);
|
||||
|
||||
typedef EFI_STATUS(EFIAPI *EFI_FREE_PAGES)(
|
||||
IN EFI_PHYSICAL_ADDRESS Memory,
|
||||
IN UINTN Pages);
|
||||
|
||||
typedef EFI_STATUS(EFIAPI *EFI_GET_MEMORY_MAP)(
|
||||
IN OUT UINTN *MemoryMapSize,
|
||||
IN OUT EFI_MEMORY_DESCRIPTOR *MemoryMap,
|
||||
OUT UINTN *MapKey,
|
||||
OUT UINTN *DescriptorSize,
|
||||
OUT UINT32 *DescriptorVersion);
|
||||
|
||||
typedef EFI_STATUS(EFIAPI *EFI_ALLOCATE_POOL)(
|
||||
IN EFI_MEMORY_TYPE PoolType,
|
||||
IN UINTN Size,
|
||||
OUT VOID **Buffer);
|
||||
|
||||
typedef EFI_STATUS(EFIAPI *EFI_FREE_POOL)(
|
||||
IN VOID *Buffer);
|
||||
|
||||
typedef VOID(EFIAPI *EFI_EVENT_NOTIFY)(
|
||||
IN EFI_EVENT Event,
|
||||
IN VOID *Context);
|
||||
|
||||
typedef EFI_STATUS(EFIAPI *EFI_CREATE_EVENT)(
|
||||
IN UINT32 Type,
|
||||
IN EFI_TPL NotifyTpl,
|
||||
IN EFI_EVENT_NOTIFY NotifyFunction,
|
||||
IN VOID *NotifyContext,
|
||||
OUT EFI_EVENT *Event);
|
||||
|
||||
typedef EFI_STATUS(EFIAPI *EFI_SET_TIMER)(
|
||||
IN EFI_EVENT Event,
|
||||
IN EFI_TIMER_DELAY Type,
|
||||
IN UINT64 TriggerTime);
|
||||
|
||||
typedef EFI_STATUS(EFIAPI *EFI_WAIT_FOR_EVENT)(
|
||||
IN UINTN NumberOfEvents,
|
||||
IN EFI_EVENT *Event,
|
||||
OUT UINTN *Index);
|
||||
|
||||
typedef EFI_STATUS(EFIAPI *EFI_SIGNAL_EVENT)(
|
||||
IN EFI_EVENT Event);
|
||||
|
||||
typedef EFI_STATUS(EFIAPI *EFI_CLOSE_EVENT)(
|
||||
IN EFI_EVENT Event);
|
||||
|
||||
typedef EFI_STATUS(EFIAPI *EFI_CHECK_EVENT)(
|
||||
IN EFI_EVENT Event);
|
||||
|
||||
typedef EFI_STATUS(EFIAPI *EFI_INSTALL_PROTOCOL_INTERFACE)(
|
||||
IN OUT EFI_HANDLE *Handle,
|
||||
IN EFI_GUID const *Protocol,
|
||||
IN EFI_INTERFACE_TYPE InterfaceType,
|
||||
IN VOID *Interface);
|
||||
|
||||
typedef EFI_STATUS(EFIAPI *EFI_REINSTALL_PROTOCOL_INTERFACE)(
|
||||
IN EFI_HANDLE Handle,
|
||||
IN EFI_GUID const *Protocol,
|
||||
IN VOID *OldInterface,
|
||||
IN VOID *NewInterface);
|
||||
|
||||
typedef EFI_STATUS(EFIAPI *EFI_UNINSTALL_PROTOCOL_INTERFACE)(
|
||||
IN EFI_HANDLE Handle,
|
||||
IN EFI_GUID const *Protocol,
|
||||
IN VOID *Interface);
|
||||
|
||||
typedef EFI_STATUS(EFIAPI *EFI_HANDLE_PROTOCOL)(
|
||||
IN EFI_HANDLE Handle,
|
||||
IN EFI_GUID const *Protocol,
|
||||
OUT VOID **Interface);
|
||||
|
||||
typedef EFI_STATUS(EFIAPI *EFI_REGISTER_PROTOCOL_NOTIFY)(
|
||||
IN EFI_GUID const *Protocol,
|
||||
IN EFI_EVENT Event,
|
||||
OUT VOID **Registration);
|
||||
|
||||
typedef EFI_STATUS(EFIAPI *EFI_LOCATE_HANDLE)(
|
||||
IN EFI_LOCATE_SEARCH_TYPE SearchType,
|
||||
IN EFI_GUID const *Protocol, OPTIONAL IN VOID *SearchKey, OPTIONAL IN OUT UINTN *BufferSize,
|
||||
OUT EFI_HANDLE *Buffer);
|
||||
|
||||
typedef EFI_STATUS(EFIAPI *EFI_LOCATE_DEVICE_PATH)(
|
||||
IN EFI_GUID const *Protocol,
|
||||
IN OUT EFI_DEVICE_PATH_PROTOCOL **DevicePath,
|
||||
OUT EFI_HANDLE *Device);
|
||||
|
||||
typedef EFI_STATUS(EFIAPI *EFI_INSTALL_CONFIGURATION_TABLE)(
|
||||
IN EFI_GUID const *Guid,
|
||||
IN VOID *Table);
|
||||
|
||||
typedef EFI_STATUS(EFIAPI *EFI_IMAGE_LOAD)(
|
||||
IN BOOLEAN BootPolicy,
|
||||
IN EFI_HANDLE ParentImageHandle,
|
||||
IN EFI_DEVICE_PATH_PROTOCOL *DevicePath,
|
||||
IN VOID *SourceBuffer OPTIONAL,
|
||||
IN UINTN SourceSize,
|
||||
OUT EFI_HANDLE *ImageHandle);
|
||||
|
||||
typedef EFI_STATUS(EFIAPI *EFI_IMAGE_START)(
|
||||
IN EFI_HANDLE ImageHandle,
|
||||
OUT UINTN *ExitDataSize,
|
||||
OUT CHAR16 **ExitData OPTIONAL);
|
||||
|
||||
typedef EFI_STATUS(EFIAPI *EFI_EXIT)(
|
||||
IN EFI_HANDLE ImageHandle,
|
||||
IN EFI_STATUS ExitStatus,
|
||||
IN UINTN ExitDataSize,
|
||||
IN CHAR16 *ExitData OPTIONAL);
|
||||
|
||||
typedef EFI_STATUS(EFIAPI *EFI_IMAGE_UNLOAD)(
|
||||
IN EFI_HANDLE ImageHandle);
|
||||
|
||||
typedef EFI_STATUS(EFIAPI *EFI_EXIT_BOOT_SERVICES)(
|
||||
IN EFI_HANDLE ImageHandle,
|
||||
IN UINTN MapKey);
|
||||
|
||||
typedef EFI_STATUS(EFIAPI *EFI_GET_NEXT_MONOTONIC_COUNT)(
|
||||
OUT UINT64 *Count);
|
||||
|
||||
typedef EFI_STATUS(EFIAPI *EFI_STALL)(
|
||||
IN UINTN Microseconds);
|
||||
|
||||
typedef EFI_STATUS(EFIAPI *EFI_SET_WATCHDOG_TIMER)(
|
||||
IN UINTN Timeout,
|
||||
IN UINT64 WatchdogCode,
|
||||
IN UINTN DataSize,
|
||||
IN CHAR16 *WatchdogData OPTIONAL);
|
||||
|
||||
typedef EFI_STATUS(EFIAPI *EFI_CONNECT_CONTROLLER)(
|
||||
IN EFI_HANDLE ControllerHandle,
|
||||
IN EFI_HANDLE *DriverImageHandle, OPTIONAL IN EFI_DEVICE_PATH_PROTOCOL *RemainingDevicePath, OPTIONAL IN BOOLEAN Recursive);
|
||||
|
||||
typedef EFI_STATUS(EFIAPI *EFI_DISCONNECT_CONTROLLER)(
|
||||
IN EFI_HANDLE ControllerHandle,
|
||||
IN EFI_HANDLE DriverImageHandle, OPTIONAL IN EFI_HANDLE ChildHandle OPTIONAL);
|
||||
|
||||
typedef EFI_STATUS(EFIAPI *EFI_OPEN_PROTOCOL)(
|
||||
IN EFI_HANDLE Handle,
|
||||
IN EFI_GUID const *Protocol,
|
||||
OUT VOID **Interface, OPTIONAL IN EFI_HANDLE AgentHandle,
|
||||
IN EFI_HANDLE ControllerHandle,
|
||||
IN UINT32 Attributes);
|
||||
|
||||
typedef EFI_STATUS(EFIAPI *EFI_CLOSE_PROTOCOL)(
|
||||
IN EFI_HANDLE Handle,
|
||||
IN EFI_GUID const *Protocol,
|
||||
IN EFI_HANDLE AgentHandle,
|
||||
IN EFI_HANDLE ControllerHandle);
|
||||
|
||||
typedef EFI_STATUS(EFIAPI *EFI_OPEN_PROTOCOL_INFORMATION)(
|
||||
IN EFI_HANDLE Handle,
|
||||
IN EFI_GUID const *Protocol,
|
||||
OUT EFI_OPEN_PROTOCOL_INFORMATION_ENTRY **EntryBuffer,
|
||||
OUT UINTN *EntryCount);
|
||||
|
||||
typedef EFI_STATUS(EFIAPI *EFI_PROTOCOLS_PER_HANDLE)(
|
||||
IN EFI_HANDLE Handle,
|
||||
OUT EFI_GUID const ***ProtocolBuffer,
|
||||
OUT UINTN *ProtocolBufferCount);
|
||||
|
||||
typedef EFI_STATUS(EFIAPI *EFI_LOCATE_HANDLE_BUFFER)(
|
||||
IN EFI_LOCATE_SEARCH_TYPE SearchType,
|
||||
IN EFI_GUID const *Protocol, OPTIONAL IN VOID *SearchKey, OPTIONAL IN OUT UINTN *NoHandles,
|
||||
OUT EFI_HANDLE **Buffer);
|
||||
|
||||
typedef EFI_STATUS(EFIAPI *EFI_LOCATE_PROTOCOL)(
|
||||
IN EFI_GUID const *Protocol,
|
||||
IN VOID *Registration, OPTIONAL OUT VOID **Interface);
|
||||
|
||||
typedef EFI_STATUS(EFIAPI *EFI_INSTALL_MULTIPLE_PROTOCOL_INTERFACES)(
|
||||
IN OUT EFI_HANDLE *Handle,
|
||||
...);
|
||||
|
||||
typedef EFI_STATUS(EFIAPI *EFI_UNINSTALL_MULTIPLE_PROTOCOL_INTERFACES)(
|
||||
IN EFI_HANDLE Handle,
|
||||
...);
|
||||
|
||||
typedef EFI_STATUS(EFIAPI *EFI_CALCULATE_CRC32)(
|
||||
IN VOID *Data,
|
||||
IN UINTN DataSize,
|
||||
OUT UINT32 *Crc32);
|
||||
|
||||
typedef VOID(EFIAPI *EFI_COPY_MEM)(
|
||||
IN VOID *Destination,
|
||||
IN VOID *Source,
|
||||
IN UINTN Length);
|
||||
|
||||
typedef VOID(EFIAPI *EFI_SET_MEM)(
|
||||
IN VOID *Buffer,
|
||||
IN UINTN Size,
|
||||
IN UINT8 Value);
|
||||
|
||||
typedef EFI_STATUS(EFIAPI *EFI_GET_TIME)(
|
||||
OUT EFI_TIME *Time,
|
||||
OUT EFI_TIME_CAPABILITIES *Capabilities OPTIONAL);
|
||||
|
||||
typedef EFI_STATUS(EFIAPI *EFI_SET_TIME)(
|
||||
IN EFI_TIME *Time);
|
||||
|
||||
typedef EFI_STATUS(EFIAPI *EFI_GET_WAKEUP_TIME)(
|
||||
OUT BOOLEAN *Enabled,
|
||||
OUT BOOLEAN *Pending,
|
||||
OUT EFI_TIME *Time);
|
||||
|
||||
typedef EFI_STATUS(EFIAPI *EFI_SET_WAKEUP_TIME)(
|
||||
IN BOOLEAN Enable,
|
||||
IN EFI_TIME *Time OPTIONAL);
|
||||
|
||||
typedef EFI_STATUS(EFIAPI *EFI_SET_VIRTUAL_ADDRESS_MAP)(
|
||||
IN UINTN MemoryMapSize,
|
||||
IN UINTN DescriptorSize,
|
||||
IN UINT32 DescriptorVersion,
|
||||
IN EFI_MEMORY_DESCRIPTOR *VirtualMap);
|
||||
|
||||
typedef EFI_STATUS(EFIAPI *EFI_CONVERT_POINTER)(
|
||||
IN UINTN DebugDisposition,
|
||||
IN OUT VOID **Address);
|
||||
|
||||
typedef EFI_STATUS(EFIAPI *EFI_GET_VARIABLE)(
|
||||
IN CHAR16 *VariableName,
|
||||
IN EFI_GUID *VendorGuid,
|
||||
OUT UINT32 *Attributes OPTIONAL,
|
||||
IN OUT UINTN *DataSize,
|
||||
OUT VOID *Data);
|
||||
|
||||
typedef EFI_STATUS(EFIAPI *EFI_GET_NEXT_VARIABLE_NAME)(
|
||||
IN OUT UINTN *VariableNameSize,
|
||||
IN OUT CHAR16 *VariableName,
|
||||
IN OUT EFI_GUID *VendorGuid);
|
||||
|
||||
typedef EFI_STATUS(EFIAPI *EFI_SET_VARIABLE)(
|
||||
IN CHAR16 *VariableName,
|
||||
IN EFI_GUID *VendorGuid,
|
||||
IN UINT32 Attributes,
|
||||
IN UINTN DataSize,
|
||||
IN VOID *Data);
|
||||
|
||||
typedef EFI_STATUS(EFIAPI *EFI_GET_NEXT_HIGH_MONO_COUNT)(
|
||||
OUT UINT32 *HighCount);
|
||||
|
||||
typedef EFI_STATUS(EFIAPI *EFI_RESET_SYSTEM)(
|
||||
IN EFI_RESET_TYPE ResetType,
|
||||
IN EFI_STATUS ResetStatus,
|
||||
IN UINTN DataSize,
|
||||
IN CHAR16 *ResetData OPTIONAL);
|
||||
|
||||
typedef EFI_STATUS(EFIAPI *EFI_UPDATE_CAPSULE)(
|
||||
IN EFI_CAPSULE_HEADER **CapsuleHeaderArray,
|
||||
IN UINTN CapsuleCount,
|
||||
IN EFI_PHYSICAL_ADDRESS ScatterGatherList OPTIONAL);
|
||||
|
||||
typedef EFI_STATUS(EFIAPI *EFI_QUERY_CAPSULE_CAPABILITIES)(
|
||||
IN EFI_CAPSULE_HEADER **CapsuleHeaderArray,
|
||||
IN UINTN CapsuleCount,
|
||||
OUT UINT64 *MaximumCapsuleSize,
|
||||
OUT EFI_RESET_TYPE *ResetType);
|
||||
|
||||
typedef EFI_STATUS(EFIAPI *EFI_QUERY_VARIABLE_INFO)(
|
||||
IN UINT32 Attributes,
|
||||
OUT UINT64 *MaximumVariableStorageSize,
|
||||
OUT UINT64 *RemainingVariableStorageSize,
|
||||
OUT UINT64 *MaximumVariableSize);
|
106
Kernel/include/efi/errors.h
Normal file
106
Kernel/include/efi/errors.h
Normal file
@ -0,0 +1,106 @@
|
||||
/*
|
||||
This file is part of Fennix Kernel.
|
||||
|
||||
Fennix Kernel is free software: you can redistribute it and/or
|
||||
modify it under the terms of the GNU General Public License as
|
||||
published by the Free Software Foundation, either version 3 of
|
||||
the License, or (at your option) any later version.
|
||||
|
||||
Fennix Kernel is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with Fennix Kernel. If not, see <https://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#pragma once
|
||||
|
||||
#define ENCODE_ERROR(StatusCode) ((RETURN_STATUS)(MAX_BIT | (StatusCode)))
|
||||
#define ENCODE_WARNING(StatusCode) ((RETURN_STATUS)(StatusCode))
|
||||
#define RETURN_ERROR(StatusCode) (((StatusCode)) < 0)
|
||||
|
||||
#define RETURN_SUCCESS 0
|
||||
#define RETURN_LOAD_ERROR ENCODE_ERROR(1)
|
||||
#define RETURN_INVALID_PARAMETER ENCODE_ERROR(2)
|
||||
#define RETURN_UNSUPPORTED ENCODE_ERROR(3)
|
||||
#define RETURN_BAD_BUFFER_SIZE ENCODE_ERROR(4)
|
||||
#define RETURN_BUFFER_TOO_SMALL ENCODE_ERROR(5)
|
||||
#define RETURN_NOT_READY ENCODE_ERROR(6)
|
||||
#define RETURN_DEVICE_ERROR ENCODE_ERROR(7)
|
||||
#define RETURN_WRITE_PROTECTED ENCODE_ERROR(8)
|
||||
#define RETURN_OUT_OF_RESOURCES ENCODE_ERROR(9)
|
||||
#define RETURN_VOLUME_CORRUPTED ENCODE_ERROR(10)
|
||||
#define RETURN_VOLUME_FULL ENCODE_ERROR(11)
|
||||
#define RETURN_NO_MEDIA ENCODE_ERROR(12)
|
||||
#define RETURN_MEDIA_CHANGED ENCODE_ERROR(13)
|
||||
#define RETURN_NOT_FOUND ENCODE_ERROR(14)
|
||||
#define RETURN_ACCESS_DENIED ENCODE_ERROR(15)
|
||||
#define RETURN_NO_RESPONSE ENCODE_ERROR(16)
|
||||
#define RETURN_NO_MAPPING ENCODE_ERROR(17)
|
||||
#define RETURN_TIMEOUT ENCODE_ERROR(18)
|
||||
#define RETURN_NOT_STARTED ENCODE_ERROR(19)
|
||||
#define RETURN_ALREADY_STARTED ENCODE_ERROR(20)
|
||||
#define RETURN_ABORTED ENCODE_ERROR(21)
|
||||
#define RETURN_ICMP_ERROR ENCODE_ERROR(22)
|
||||
#define RETURN_TFTP_ERROR ENCODE_ERROR(23)
|
||||
#define RETURN_PROTOCOL_ERROR ENCODE_ERROR(24)
|
||||
#define RETURN_INCOMPATIBLE_VERSION ENCODE_ERROR(25)
|
||||
#define RETURN_SECURITY_VIOLATION ENCODE_ERROR(26)
|
||||
#define RETURN_CRC_ERROR ENCODE_ERROR(27)
|
||||
#define RETURN_END_OF_MEDIA ENCODE_ERROR(28)
|
||||
#define RETURN_END_OF_FILE ENCODE_ERROR(31)
|
||||
#define RETURN_INVALID_LANGUAGE ENCODE_ERROR(32)
|
||||
#define RETURN_COMPROMISED_DATA ENCODE_ERROR(33)
|
||||
#define RETURN_HTTP_ERROR ENCODE_ERROR(35)
|
||||
#define RETURN_WARN_UNKNOWN_GLYPH ENCODE_WARNING(1)
|
||||
#define RETURN_WARN_DELETE_FAILURE ENCODE_WARNING(2)
|
||||
#define RETURN_WARN_WRITE_FAILURE ENCODE_WARNING(3)
|
||||
#define RETURN_WARN_BUFFER_TOO_SMALL ENCODE_WARNING(4)
|
||||
#define RETURN_WARN_STALE_DATA ENCODE_WARNING(5)
|
||||
#define RETURN_WARN_FILE_SYSTEM ENCODE_WARNING(6)
|
||||
|
||||
#define EFI_SUCCESS RETURN_SUCCESS
|
||||
#define EFI_LOAD_ERROR RETURN_LOAD_ERROR
|
||||
#define EFI_INVALID_PARAMETER RETURN_INVALID_PARAMETER
|
||||
#define EFI_UNSUPPORTED RETURN_UNSUPPORTED
|
||||
#define EFI_BAD_BUFFER_SIZE RETURN_BAD_BUFFER_SIZE
|
||||
#define EFI_BUFFER_TOO_SMALL RETURN_BUFFER_TOO_SMALL
|
||||
#define EFI_NOT_READY RETURN_NOT_READY
|
||||
#define EFI_DEVICE_ERROR RETURN_DEVICE_ERROR
|
||||
#define EFI_WRITE_PROTECTED RETURN_WRITE_PROTECTED
|
||||
#define EFI_OUT_OF_RESOURCES RETURN_OUT_OF_RESOURCES
|
||||
#define EFI_VOLUME_CORRUPTED RETURN_VOLUME_CORRUPTED
|
||||
#define EFI_VOLUME_FULL RETURN_VOLUME_FULL
|
||||
#define EFI_NO_MEDIA RETURN_NO_MEDIA
|
||||
#define EFI_MEDIA_CHANGED RETURN_MEDIA_CHANGED
|
||||
#define EFI_NOT_FOUND RETURN_NOT_FOUND
|
||||
#define EFI_ACCESS_DENIED RETURN_ACCESS_DENIED
|
||||
#define EFI_NO_RESPONSE RETURN_NO_RESPONSE
|
||||
#define EFI_NO_MAPPING RETURN_NO_MAPPING
|
||||
#define EFI_TIMEOUT RETURN_TIMEOUT
|
||||
#define EFI_NOT_STARTED RETURN_NOT_STARTED
|
||||
#define EFI_ALREADY_STARTED RETURN_ALREADY_STARTED
|
||||
#define EFI_ABORTED RETURN_ABORTED
|
||||
#define EFI_ICMP_ERROR RETURN_ICMP_ERROR
|
||||
#define EFI_TFTP_ERROR RETURN_TFTP_ERROR
|
||||
#define EFI_PROTOCOL_ERROR RETURN_PROTOCOL_ERROR
|
||||
#define EFI_INCOMPATIBLE_VERSION RETURN_INCOMPATIBLE_VERSION
|
||||
#define EFI_SECURITY_VIOLATION RETURN_SECURITY_VIOLATION
|
||||
#define EFI_CRC_ERROR RETURN_CRC_ERROR
|
||||
#define EFI_END_OF_MEDIA RETURN_END_OF_MEDIA
|
||||
#define EFI_END_OF_FILE RETURN_END_OF_FILE
|
||||
#define EFI_INVALID_LANGUAGE RETURN_INVALID_LANGUAGE
|
||||
#define EFI_COMPROMISED_DATA RETURN_COMPROMISED_DATA
|
||||
#define EFI_HTTP_ERROR RETURN_HTTP_ERROR
|
||||
|
||||
#define EFI_WARN_UNKNOWN_GLYPH RETURN_WARN_UNKNOWN_GLYPH
|
||||
#define EFI_WARN_DELETE_FAILURE RETURN_WARN_DELETE_FAILURE
|
||||
#define EFI_WARN_WRITE_FAILURE RETURN_WARN_WRITE_FAILURE
|
||||
#define EFI_WARN_BUFFER_TOO_SMALL RETURN_WARN_BUFFER_TOO_SMALL
|
||||
#define EFI_WARN_STALE_DATA RETURN_WARN_STALE_DATA
|
||||
#define EFI_WARN_FILE_SYSTEM RETURN_WARN_FILE_SYSTEM
|
||||
|
||||
#define EFIERR(_a) ENCODE_ERROR(_a)
|
||||
#define EFI_ERROR(A) RETURN_ERROR(A)
|
33
Kernel/include/efi/tables.h
Normal file
33
Kernel/include/efi/tables.h
Normal file
@ -0,0 +1,33 @@
|
||||
/*
|
||||
This file is part of Fennix Kernel.
|
||||
|
||||
Fennix Kernel is free software: you can redistribute it and/or
|
||||
modify it under the terms of the GNU General Public License as
|
||||
published by the Free Software Foundation, either version 3 of
|
||||
the License, or (at your option) any later version.
|
||||
|
||||
Fennix Kernel is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with Fennix Kernel. If not, see <https://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#pragma once
|
||||
|
||||
#define ACPI_20_TABLE_GUID \
|
||||
{0x8868e871, 0xe4f1, 0x11d3, {0xbc, 0x22, 0x0, 0x80, 0xc7, 0x3c, 0x88, 0x81}}
|
||||
|
||||
#define ACPI_TABLE_GUID \
|
||||
{0xeb9d2d30, 0x2d88, 0x11d3, {0x9a, 0x16, 0x0, 0x90, 0x27, 0x3f, 0xc1, 0x4d}}
|
||||
|
||||
#define SAL_SYSTEM_TABLE_GUID \
|
||||
{0xeb9d2d32, 0x2d88, 0x11d3, {0x9a, 0x16, 0x0, 0x90, 0x27, 0x3f, 0xc1, 0x4d}}
|
||||
|
||||
#define SMBIOS_TABLE_GUID \
|
||||
{0xeb9d2d31, 0x2d88, 0x11d3, {0x9a, 0x16, 0x0, 0x90, 0x27, 0x3f, 0xc1, 0x4d}}
|
||||
|
||||
#define MPS_TABLE_GUID \
|
||||
{0xeb9d2d2f, 0x2d88, 0x11d3, {0x9a, 0x16, 0x0, 0x90, 0x27, 0x3f, 0xc1, 0x4d}}
|
Reference in New Issue
Block a user