Merge remote-tracking branch 'upstream/master'

This commit is contained in:
Jozef Nagy
2023-11-29 18:30:19 +01:00
12 changed files with 100 additions and 20 deletions

View File

@@ -61,6 +61,11 @@ typedef enum _SYSTEM_FIRMWARE_TYPE
SystemFirmwarePcat
} SYSTEM_FIRMWARE_TYPE, *PSYSTEM_FIRMWARE_TYPE;
/* Hardware information block */
typedef struct _HARDWARE_INFORMATION_BLOCK
{
} HARDWARE_INFORMATION_BLOCK, *PHARDWARE_INFORMATION_BLOCK;
/* PCAT Firmware information block */
typedef struct _PCAT_FIRMWARE_INFORMATION
{
@@ -71,7 +76,7 @@ typedef struct _PCAT_FIRMWARE_INFORMATION
typedef struct _UEFI_FIRMWARE_INFORMATION
{
ULONG EfiVersion;
PVOID EfiRuntimeServices;
PEFI_RUNTIME_SERVICES EfiRuntimeServices;
} UEFI_FIRMWARE_INFORMATION, *PUEFI_FIRMWARE_INFORMATION;
/* Firmware information block */
@@ -121,9 +126,11 @@ typedef struct _KERNEL_INITIALIZATION_BLOCK
ULONG BlockSize;
ULONG BlockVersion;
ULONG ProtocolVersion;
PCHAR KernelParameters;
LIST_ENTRY LoadOrderListHead;
LIST_ENTRY MemoryDescriptorListHead;
LIST_ENTRY BootDriverListHead;
HARDWARE_INFORMATION_BLOCK HardwareInformation;
LOADER_INFORMATION_BLOCK LoaderInformation;
FIRMWARE_INFORMATION_BLOCK FirmwareInformation;
} KERNEL_INITIALIZATION_BLOCK, *PKERNEL_INITIALIZATION_BLOCK;

30
sdk/xtdk/xtguid.h Normal file
View File

@@ -0,0 +1,30 @@
/**
* PROJECT: ExectOS
* COPYRIGHT: See COPYING.md in the top level directory
* FILE: sdk/xtdk/xtguid.h
* DESCRIPTION: XTOS Globally Unique Identifiers
* DEVELOPERS: Rafal Kupiec <belliash@codingworkshop.eu.org>
*/
#ifndef __XTDK_XTGUID_H
#define __XTDK_XTGUID_H
/* EFI XT protocols GUIDs */
#define XT_BOOT_LOADER_PROTOCOL_GUID {0x58544F53, 0x5854, 0x4357, {0x00, 0x42, 0x4F, 0x4F, 0x54, 0x4C, 0x50, 0x54}}
#define XT_ELF_IMAGE_PROTOCOL_GUID {0x58544F53, 0x5854, 0x4357, {0x45, 0x4C, 0x46, 0x49, 0x4D, 0x47, 0x50, 0x54}}
#define XT_FRAMEBUFFER_PROTOCOL_GUID {0x58544F53, 0x5854, 0x4357, {0x00, 0x00, 0x46, 0x42, 0x55, 0x46, 0x50, 0x54}}
#define XT_HIVE_IMAGE_PROTOCOL_GUID {0x58544F53, 0x5854, 0x4357, {0x48, 0x49, 0x56, 0x49, 0x4D, 0x47, 0x50, 0x54}}
#define XT_PECOFF_IMAGE_PROTOCOL_GUID {0x58544F53, 0x5854, 0x4357, {0x00, 0x50, 0x45, 0x49, 0x4D, 0x47, 0x50, 0x54}}
/* EFI XT boot protocols GUIDs */
#define XT_CHAIN_BOOT_PROTOCOL_GUID {0x58544F53, 0x5854, 0x4357, {0x00, 0x43, 0x48, 0x41, 0x49, 0x4E, 0x50, 0x54}}
#define XT_LINUX_BOOT_PROTOCOL_GUID {0x58544F53, 0x5854, 0x4357, {0x00, 0x4C, 0x49, 0x4E, 0x55, 0x58, 0x50, 0x54}}
#define XT_WINNT_BOOT_PROTOCOL_GUID {0x58544F53, 0x5854, 0x4357, {0x00, 0x57, 0x49, 0x4E, 0x4E, 0x54, 0x50, 0x54}}
#define XT_XTOS_BOOT_PROTOCOL_GUID {0x58544F53, 0x5854, 0x4357, {0x00, 0x00, 0x58, 0x54, 0x4F, 0x53, 0x50, 0x54}}
/* XTOS GUIDs */
#define XTOS_EXECTOS_GUID {0x58544F53, 0x5854, 0x4357, {0x00, 0x45 0x58, 0x45, 0x43, 0x54, 0x4F, 0x53}}
#define XTOS_XTLDR_LOADER_GUID {0x58544F53, 0x5854, 0x4357, {0x00, 0x00 0x00, 0x58, 0x54, 0x4C, 0x44, 0x52}}
#endif /* __XTDK_XTGUID_H */

View File

@@ -21,6 +21,7 @@
/* Architecture-independent XT API */
#include <xtbase.h>
#include <xtdebug.h>
#include <xtguid.h>
#include <xtfw.h>
#include <xtimage.h>
#include <xtuefi.h>

View File

@@ -13,12 +13,14 @@
/* Preprocessor macros for including arch-specific headers */
#define _ARCH_STRINGIZE(x) _INCL_STRINGIZE(x)
#define _INCL_STRINGIZE(x) #x
#define ARCH_COMMON(header) _ARCH_STRINGIZE(../_ARCH_COMMON/header)
#define ARCH_HEADER(header) _ARCH_STRINGIZE(_ARCH/header)
/* Architecture specific definitions */
#if defined(__i386__) || defined(__i686__)
#define _ARCH i686
#define _ARCH_I686 1
#define _ARCH_COMMON x86
#define _ARCH_NAME "32-bit x86"
#define _ARCH_IMAGE_MACHINE_TYPE 0x014C
#define _XT32 1
@@ -31,6 +33,7 @@
#elif defined(__amd64__) || defined(__x86_64__)
#define _ARCH amd64
#define _ARCH_AMD64 1
#define _ARCH_COMMON x86
#define _ARCH_NAME "64-bit x86"
#define _ARCH_IMAGE_MACHINE_TYPE 0x8664
#define _XT64 1