diff options
Diffstat (limited to 'dev/Kernel/FirmwareKit/Handover.hxx')
| -rw-r--r-- | dev/Kernel/FirmwareKit/Handover.hxx | 101 |
1 files changed, 0 insertions, 101 deletions
diff --git a/dev/Kernel/FirmwareKit/Handover.hxx b/dev/Kernel/FirmwareKit/Handover.hxx deleted file mode 100644 index a93ace39..00000000 --- a/dev/Kernel/FirmwareKit/Handover.hxx +++ /dev/null @@ -1,101 +0,0 @@ -/* ------------------------------------------- - - Copyright ZKA Technologies. - -------------------------------------------- */ - -/** - * @file Handover.hxx - * @author Amlal El Mahrouss (amlalelmahrouss@icloud.com) - * @brief The handover boot protocol. - * @version 0.3 - * @date 2024-02-23 - * - * @copyright Copyright (c) 2024, ZKA Technologies - * - */ - -#pragma once - -#include <NewKit/Defines.hxx> - -/* useful macros */ - -#define kHandoverMagic 0xBADCC -#define kHandoverVersion 0x113 - -#define kHandoverMaxCmdLine 8 - -#define kHandoverStructSz sizeof(HEL::HandoverHeader) - -namespace Kernel::HEL -{ - /** - @brief the kind of executable we're loading. -*/ - enum - { - kTypeKernel = 100, - kTypeKernelDriver = 101, - kTypeRsrc = 102, - kTypeCount = 3, - }; - - /** - @brief The executable architecture. -*/ - - enum - { - kArchAmd64 = 122, - kArchCount = 2, - }; - - struct HandoverInformationHeader - { - UInt64 f_Magic; - UInt64 f_Version; - - voidPtr f_VirtualStart; - SizeT f_VirtualSize; - voidPtr f_PhysicalStart; - - WideChar f_FirmwareVendorName[32]; - SizeT f_FirmwareVendorLen; - - struct - { - VoidPtr f_SmBios; - VoidPtr f_VendorPtr; - } f_HardwareTables; - - struct - { - UIntPtr f_The; - SizeT f_Size; - UInt32 f_Width; - UInt32 f_Height; - UInt32 f_PixelFormat; - UInt32 f_PixelPerLine; - } f_GOP; - - UInt64 f_FirmwareSpecific[8]; - Char f_CommandLine[255][kHandoverMaxCmdLine]; - }; - - enum - { - kHandoverSpecificKind, - kHandoverSpecificAttrib, - kHandoverSpecificMemoryEfi, - }; - - /// @brief Bootloader main type. - typedef void (*BootMainKind)(HandoverInformationHeader* handoverInfo); - - /// @brief Alias of bootloader main type. - typedef void (*HandoverProc)(HandoverInformationHeader* handoverInfo); -} // namespace Kernel::HEL - -/// @brief Bootloader global header. -inline Kernel::HEL::HandoverInformationHeader* kHandoverHeader = nullptr; |
