Commit Graph

150 Commits

Author SHA1 Message Date
75c519a70c
Use more generic name for this macro use pointer used behind it will point to kernel debugger after it gets initialized 2023-02-07 19:37:44 +01:00
f8d2ccc0d0
Add more debugging macros 2023-02-06 16:10:32 +01:00
707c92e08a
Boot loader no longer needs to do anything related to the stack 2023-02-05 10:03:21 +01:00
c6cadbd655
Initialize MXCSR register 2023-02-05 00:30:12 +01:00
5eaf7d63a3
Initialize Page Attribute Table 2023-02-05 00:14:34 +01:00
55cdae7c83
Initialize AMD64 processor registers 2023-02-04 23:40:03 +01:00
f37722b6e6
Distinguish ProcessorBlock and ProcessorControlBlock 2023-02-03 19:28:03 +01:00
269214ed34
Another improvements to GDT 2023-02-03 18:00:37 +01:00
19f34d4b17
Cleanup the code 2023-02-02 19:42:57 +01:00
715f875c4f
Set alignment and packing properly 2023-02-02 17:01:18 +01:00
2e2b01742a
Definitions for setting structures alignment and packing 2023-02-02 15:47:21 +01:00
73fc7607cd
There is no need to specify alignment of the structure in the forward reference 2023-02-02 15:37:57 +01:00
dc1a94b982
This is 'Processor Block' 2023-02-01 22:02:07 +01:00
21fbe6febe
Add IDT related definitions 2023-02-01 20:14:10 +01:00
5bbda188c6
IDT access levels and gate types 2023-02-01 00:51:13 +01:00
9a1e9b1084
Define TSS offsets 2023-01-30 23:43:10 +01:00
a761d3125a
Architecture specific initialization prior to processor structures initialization 2023-01-30 20:34:05 +01:00
6f068513cd
Initial processor block initialization 2023-01-30 19:07:05 +01:00
ebe6792f2b
Add MSR (Model Specific Registers) values 2023-01-30 17:59:00 +01:00
ce4e590347
Add missing forward declaration of ArInitializeProcessor() routine 2023-01-29 00:57:06 +01:00
900e71459a
Add missing x86 descriptor sizes 2023-01-29 00:54:36 +01:00
7bf4a9ab8d
Initialize boot CPU structures inside kernel on AMD64 2023-01-29 00:45:17 +01:00
27e2fdf4f2
Introduce architecture library as new kernel subsystem and move selected routines into new subsystem 2023-01-28 10:34:55 +01:00
e94e50b5d9
Implement HlLoadInterruptDescriptorTable() intrinsics for loading IDT 2023-01-26 20:08:57 +01:00
3ad3149f80
Add descriptor structure definition 2023-01-25 17:42:35 +01:00
bfc9db8b6d
Unify KGDTENTRY and KIDTENTRY between architectures as much as possible 2023-01-25 17:35:03 +01:00
3ee759cc27
i686 Interrupt request levels definitions 2023-01-25 17:18:27 +01:00
7bd67d6210
Add GDT and Segments related definitions for i686 2023-01-25 17:13:24 +01:00
a366de618f
AMD64 Interrupt request levels definitions 2023-01-25 17:08:42 +01:00
8f348c3954
Add GDT and Segments related definitions for AMD64 2023-01-25 17:05:15 +01:00
707dc37868
Fix type of Source parameter in HlLoadSegment() routine 2023-01-24 23:08:48 +01:00
35aa514f95
Implement HlLoadSegment() intrinsics routine 2023-01-24 19:27:18 +01:00
d3d8d144a0
Implement HlLoadGlobalDescriptorTable() intrinsic 2023-01-23 20:13:51 +01:00
c81b858757
Implement HlReadGSQuadWord() intrinsic 2023-01-23 19:59:54 +01:00
f20ab3e52e
Implement HlLoadTaskRegister() for loading TSS segment selector into task register 2023-01-23 15:26:35 +01:00
9cbe2d458c
Initial support for EFI framebuffer 2023-01-23 15:26:35 +01:00
145fc17271
Pass framebuffer pitch information to the kernel 2023-01-18 20:15:41 +01:00
1a93c198ed
Add missing forward reference to _LOADER_GRAPHICS_INFORMATION_BLOCK structure 2023-01-16 19:51:19 +01:00
605597262c
Initial version of EFI framebuffer module, currently support only GOP 2023-01-16 18:41:25 +01:00
e3f0782053
Add enumeration of efi supported graphics protocols 2023-01-16 00:10:44 +01:00
5d74fb2bb5
Add UGA related structures 2023-01-16 00:03:35 +01:00
fb60625abc
Add more intrinsic routines 2023-01-13 22:32:45 +01:00
21abe0553a
Code formatting 2023-01-11 15:39:36 +01:00
beed5e0b51
More architecture specific definitions 2023-01-11 15:29:43 +01:00
025e05013d
Partially revert last changes 2023-01-10 22:51:38 +01:00
bac7af8a33
Cleanup data types 2023-01-09 23:07:21 +01:00
6255165f10
Add missing EFI enumeration lists forward references 2023-01-08 09:31:40 +01:00
fd6e273d8a
Add missing forward references 2023-01-07 23:44:00 +01:00
ca1d7ddfe8
Basic context, frames and exceptions definitions 2023-01-07 23:36:50 +01:00
f74ba62f24
Add GDT, IDT and TSS related structures 2023-01-07 13:33:16 +01:00