Commit Graph

107 Commits

Author SHA1 Message Date
7b8f4f15cc Add APIC Logical Destination Register (LDR) shifts and correct APIC delivery mode values 2024-07-23 20:14:06 +02:00
906e09fd9f Refactor COM port support, to get rid of global variables in library 2024-06-12 18:02:29 +02:00
86bc2042e5 Cleanup XTDK headers 2024-06-06 23:09:03 +02:00
92e861ebae Cleanup APIC related headers 2024-06-06 21:50:20 +02:00
4212453cf5 Fix APIC initialization code 2024-06-06 16:49:08 +02:00
ef65bceccd Initialize legacy PIC and mask all interrupts 2024-06-05 16:08:54 +02:00
6176ca38a8 Cleanup hardware allocation memory pool related code 2024-06-02 17:29:31 +02:00
6b1ccc4ce5 Do not hardcode PML shift values 2024-05-27 22:26:05 +02:00
03ba3b5583 Add missing forward references for APIC related structures 2024-05-24 23:41:27 +02:00
94a40501d4 Mask APIC ICR0 and disable APIC interrupts for initialization time by raising APIC TPR 2024-05-24 23:39:06 +02:00
609538b9be Implement MmpGetPdeAddress() and MmpGetPteAddress() routines for i686 architecture as well as MmpMemoryExtensionEnabled() for checking PAE/LA57 support 2024-05-22 22:47:28 +02:00
03727a61d3 Implement hardware layer pool memory management 2024-05-22 18:51:09 +02:00
500498508e Rename PACK definition 2024-05-20 15:34:15 +02:00
efef3cb80d Cleanup EFLAGS related definitions 2024-05-14 16:22:10 +02:00
38b0b2ac7d Use correct stack when using preallocated processor structures 2024-05-08 15:57:24 +02:00
b65ff2a767 Implement MmAllocateProcessorStructures() routine as a temporary hack to get a buffer for AP initialization 2024-05-07 23:30:11 +02:00
276eb77862 Update KPROCESSOR_BLOCK structure 2024-05-07 16:20:40 +02:00
22693a48d3 Rework trap handling assembly code 2024-04-23 15:07:08 +02:00
a36c02fde8 Use common name for EFLAGS and RFLAGS, regardless the CPU architecture 2024-04-21 22:35:06 +02:00
92ee74b494 Rework trap handling to access registers 2024-04-19 16:52:37 +02:00
befa211aa7 Add PFN related structures and definitions 2024-04-08 19:03:58 +02:00
04e22c127e Initial memory manager initialization code 2024-04-07 10:26:12 +02:00
d7b103f85d Add forward references for PTE related structures 2024-04-03 16:03:17 +02:00
c6f3422c49 Update PTE related structures 2024-04-03 16:00:26 +02:00
4b2d8ded72 No parameters are expected, explicitly 2024-02-20 16:55:12 +01:00
badb16e37d Add lock queue to processor control block 2024-02-05 19:21:19 +01:00
af687603d0 Add kernel stack guard pages definition 2024-02-04 19:21:42 +01:00
5acf8b4abd Add page size enumeration list 2024-01-18 14:22:51 +01:00
e64cf4d0aa Add CR4_LA57 definition 2024-01-14 21:06:02 +01:00
0d1fcde3a5 Add missing StallScaleFactor to KPROCESSOR_BLOCK 2023-11-28 23:08:35 +01:00
f6c621c2a6 Basic processor initialization code 2023-11-28 22:31:39 +01:00
e5adc31af7 Implement basic APIC support, including X2APIC 2023-11-27 22:38:15 +01:00
4ca4e298f0 Add more PIC/APIC related definitions 2023-11-26 23:35:14 +01:00
4701351bd7 Add missing SYNC_LEVEL definition 2023-11-25 22:14:45 +01:00
14a966043e Add missing Interrupt request level definitions 2023-11-25 18:50:59 +01:00
0e6bf984a5 Add APIC vector definitions 2023-11-25 18:33:01 +01:00
55cc62f5a0 Rename KIRQL to KRUNLEVEL type 2023-11-25 00:32:55 +01:00
a3c28cee73 Initial XTLDR APIC support, finds and maps base APIC address for kernel 2023-11-20 15:18:22 +01:00
83c0accc5f Update EFLAGS masks 2023-11-09 16:12:24 +01:00
362eefc2b3 Fixes in AMD64 version of KepInitializeThreadContext() to get rid of PageFault exception 2023-11-07 15:34:49 +01:00
91ce0f9947 Compensate missing return address, which is a 4-byte on i686 and an 8-byte on amd64 2023-11-05 20:07:13 +01:00
f05a262da2 Cleanup XTDK and XTOSKRNL headers 2023-10-29 09:58:47 +01:00
798e4c1d22 Cleanup MM subsystem headers 2023-10-29 00:52:05 +02:00
600c86949b Cleanup RTL subsystem headers 2023-10-29 00:14:01 +02:00
d920cae481 Fix build by defining more routines used by XTLDR 2023-10-28 23:41:52 +02:00
ad15c55a39 Cleanup AR subsystem headers 2023-10-28 23:35:34 +02:00
358b20f1a1 Reorder routines 2023-04-04 22:35:06 +02:00
10ccf67e8e Add missing forward declarations 2023-03-14 22:50:32 +01:00
5677719038 Initialize thread context for AMD64 2023-03-14 17:37:20 +01:00
fd8eec1d86 Add EFLAGS and THREAD_ENVIRONMENT_BLOCK for amd64 2023-03-05 19:03:34 +01:00