Initialize boot CPU structures inside kernel on AMD64
All checks were successful
ci/woodpecker/push/build Pipeline was successful

This commit is contained in:
2023-01-29 00:45:17 +01:00
parent 8733a23b20
commit 7bf4a9ab8d
9 changed files with 272 additions and 0 deletions

View File

@@ -0,0 +1,34 @@
/**
* PROJECT: ExectOS
* COPYRIGHT: See COPYING.md in the top level directory
* FILE: xtoskrnl/includes/arpfuncs.h
* DESCRIPTION: Private routine definitions for architecture library
* DEVELOPERS: Rafal Kupiec <belliash@codingworkshop.eu.org>
*/
#ifndef __XTOSKRNL_ARPFUNCS_H
#define __XTOSKRNL_ARPFUNCS_H
#include <xtos.h>
XTAPI
VOID
ArpInitializeGdt(IN PKGDTENTRY Gdt);
XTAPI
VOID
ArpInitializeGdtEntry(IN PKGDTENTRY Gdt,
IN USHORT Selector,
IN ULONGLONG Base,
IN ULONG Limit,
IN UCHAR Type,
IN UCHAR Dpl,
IN UCHAR SegmentMode);
XTAPI
VOID
ArpInitializeTss(IN PKTSS Tss,
IN PKGDTENTRY Gdt);
#endif /* __XTOSKRNL_ARPFUNCS_H */

View File

@@ -12,6 +12,15 @@
#include <xtos.h>
/* Initial GDT */
EXTERN KGDTENTRY ArInitialGdt[GDT_ENTRIES];
/* Initial IDT */
EXTERN KIDTENTRY ArInitialIdt[IDT_ENTRIES];
/* Initial TSS */
EXTERN KTSS ArInitialTss;
/* FrameBuffer information */
EXTERN HAL_FRAMEBUFFER_DATA HlpFrameBufferData;

View File

@@ -11,4 +11,5 @@
/* Kernel specific headers */
#include "globals.h"
#include "arpfuncs.h"
#include "kepfuncs.h"