Merge remote-tracking branch 'upstream/master'
This commit is contained in:
commit
35f1c09e8d
@ -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
30
sdk/xtdk/xtguid.h
Normal 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 */
|
@ -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>
|
||||
|
@ -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
|
||||
|
@ -19,17 +19,4 @@
|
||||
#define XT_BOOT_DEVICE_HARDDISK 0x03
|
||||
#define XT_BOOT_DEVICE_RAMDISK 0x04
|
||||
|
||||
/* EFI XT protocols GUIDs */
|
||||
#define XT_BOOT_LOADER_PROTOCOL_GUID {0x21FF49E8, 0x5854, 0x424C, {0xE9, 0x11, 0x00, 0x86, 0xE1, 0x2C, 0xD9, 0xC1}}
|
||||
#define XT_ELF_IMAGE_PROTOCOL_GUID {0x9B539887, 0x5854, 0x424C, {0x42, 0xFA, 0x00, 0x90, 0xC9, 0x04, 0x66, 0xA4}}
|
||||
#define XT_FRAMEBUFFER_PROTOCOL_GUID {0x99A87C23, 0x5854, 0x424C, {0xE0, 0x10, 0x00, 0xAA, 0xC0, 0x00, 0xDB, 0xFF}}
|
||||
#define XT_HIVE_IMAGE_PROTOCOL_GUID {0x5A3688A2, 0x5854, 0x424C, {0xBC, 0xDF, 0x00, 0x8F, 0xAA, 0x52, 0x63, 0xD4}}
|
||||
#define XT_PECOFF_IMAGE_PROTOCOL_GUID {0x85DAFF92, 0x5854, 0x424C, {0xB1, 0xBF, 0x00, 0x79, 0x39, 0xEA, 0x6E, 0xFD}}
|
||||
|
||||
/* EFI XT boot protocols GUIDs */
|
||||
#define XT_CHAIN_BOOT_PROTOCOL_GUID {0xC4D19201, 0x5854, 0x424C, {0x3C, 0x01, 0x00, 0x64, 0x90, 0x11, 0x9E, 0xA1}}
|
||||
#define XT_LINUX_BOOT_PROTOCOL_GUID {0x6B2A9841, 0x5854, 0x424C, {0x93, 0x71, 0x00, 0x3C, 0x34, 0x9B, 0x11, 0x91}}
|
||||
#define XT_WINNT_BOOT_PROTOCOL_GUID {0x98A80819, 0x5854, 0x424C, {0x37, 0x17, 0x00, 0x2A, 0x55, 0xA3, 0x09, 0xDC}}
|
||||
#define XT_XTOS_BOOT_PROTOCOL_GUID {0xFF8AD077, 0x5854, 0x424C, {0xA1, 0x77, 0x00, 0x92, 0xEF, 0x1C, 0x09, 0xDC}}
|
||||
|
||||
#endif /* __XTLDR_BLDEFS_H */
|
||||
|
@ -14,10 +14,10 @@ list(APPEND XTOSKRNL_SOURCE
|
||||
${XTOSKRNL_SOURCE_DIR}/ar/${ARCH}/traps.c
|
||||
${XTOSKRNL_SOURCE_DIR}/ex/rundown.c
|
||||
${XTOSKRNL_SOURCE_DIR}/hl/cport.c
|
||||
${XTOSKRNL_SOURCE_DIR}/hl/cpu.c
|
||||
${XTOSKRNL_SOURCE_DIR}/hl/efifb.c
|
||||
${XTOSKRNL_SOURCE_DIR}/hl/globals.c
|
||||
${XTOSKRNL_SOURCE_DIR}/hl/pic.c
|
||||
${XTOSKRNL_SOURCE_DIR}/hl/${ARCH}/cpu.c
|
||||
${XTOSKRNL_SOURCE_DIR}/hl/${ARCH}/pic.c
|
||||
${XTOSKRNL_SOURCE_DIR}/hl/${ARCH}/ioport.c
|
||||
${XTOSKRNL_SOURCE_DIR}/hl/${ARCH}/runlevel.c
|
||||
${XTOSKRNL_SOURCE_DIR}/ke/apc.c
|
||||
|
13
xtoskrnl/hl/amd64/cpu.c
Normal file
13
xtoskrnl/hl/amd64/cpu.c
Normal file
@ -0,0 +1,13 @@
|
||||
/**
|
||||
* PROJECT: ExectOS
|
||||
* COPYRIGHT: See COPYING.md in the top level directory
|
||||
* FILE: xtoskrnl/hl/amd64/cpu.c
|
||||
* DESCRIPTION: HAL AMD64 processor support
|
||||
* DEVELOPERS: Rafal Kupiec <belliash@codingworkshop.eu.org>
|
||||
*/
|
||||
|
||||
#include <xtos.h>
|
||||
|
||||
|
||||
/* Include common CPU interface */
|
||||
#include ARCH_COMMON(cpu.c)
|
13
xtoskrnl/hl/amd64/pic.c
Normal file
13
xtoskrnl/hl/amd64/pic.c
Normal file
@ -0,0 +1,13 @@
|
||||
/**
|
||||
* PROJECT: ExectOS
|
||||
* COPYRIGHT: See COPYING.md in the top level directory
|
||||
* FILE: xtoskrnl/hl/amd64/pic.c
|
||||
* DESCRIPTION: Programmable Interrupt Controller (PIC) for AMD64 support
|
||||
* DEVELOPERS: Rafal Kupiec <belliash@codingworkshop.eu.org>
|
||||
*/
|
||||
|
||||
#include <xtos.h>
|
||||
|
||||
|
||||
/* Include common PIC interface */
|
||||
#include ARCH_COMMON(pic.c)
|
13
xtoskrnl/hl/i686/cpu.c
Normal file
13
xtoskrnl/hl/i686/cpu.c
Normal file
@ -0,0 +1,13 @@
|
||||
/**
|
||||
* PROJECT: ExectOS
|
||||
* COPYRIGHT: See COPYING.md in the top level directory
|
||||
* FILE: xtoskrnl/hl/i686/cpu.c
|
||||
* DESCRIPTION: HAL i686 processor support
|
||||
* DEVELOPERS: Rafal Kupiec <belliash@codingworkshop.eu.org>
|
||||
*/
|
||||
|
||||
#include <xtos.h>
|
||||
|
||||
|
||||
/* Include common CPU interface */
|
||||
#include ARCH_COMMON(cpu.c)
|
13
xtoskrnl/hl/i686/pic.c
Normal file
13
xtoskrnl/hl/i686/pic.c
Normal file
@ -0,0 +1,13 @@
|
||||
/**
|
||||
* PROJECT: ExectOS
|
||||
* COPYRIGHT: See COPYING.md in the top level directory
|
||||
* FILE: xtoskrnl/hl/i686/pic.c
|
||||
* DESCRIPTION: Programmable Interrupt Controller (PIC) for i686 support
|
||||
* DEVELOPERS: Rafal Kupiec <belliash@codingworkshop.eu.org>
|
||||
*/
|
||||
|
||||
#include <xtos.h>
|
||||
|
||||
|
||||
/* Include common PIC interface */
|
||||
#include ARCH_COMMON(pic.c)
|
@ -1,8 +1,8 @@
|
||||
/**
|
||||
* PROJECT: ExectOS
|
||||
* COPYRIGHT: See COPYING.md in the top level directory
|
||||
* FILE: xtoskrnl/hl/cpu.c
|
||||
* DESCRIPTION: HAL Processor support
|
||||
* FILE: xtoskrnl/hl/x86/cpu.c
|
||||
* DESCRIPTION: HAL x86 (i686/AMD64) processor support
|
||||
* DEVELOPERS: Rafal Kupiec <belliash@codingworkshop.eu.org>
|
||||
*/
|
||||
|
@ -1,8 +1,8 @@
|
||||
/**
|
||||
* PROJECT: ExectOS
|
||||
* COPYRIGHT: See COPYING.md in the top level directory
|
||||
* FILE: xtoskrnl/hl/pic.c
|
||||
* DESCRIPTION: Programmable Interrupt Controller (PIC) support
|
||||
* FILE: xtoskrnl/hl/x86/pic.c
|
||||
* DESCRIPTION: Programmable Interrupt Controller (PIC) for x86 (i686/AMD64) support
|
||||
* DEVELOPERS: Rafal Kupiec <belliash@codingworkshop.eu.org>
|
||||
* Jozef Nagy <schkwve@gmail.com>
|
||||
*/
|
Loading…
Reference in New Issue
Block a user