Commit Graph

1546 Commits

Author SHA1 Message Date
38b2e7a1ed Read previously identified CPU features from PRCB 2026-05-15 11:33:23 +02:00
efff262fb5 Replace CPUID queries with cached PRCB feature bits 2026-05-15 09:13:56 +02:00
14cbd63b01 Remove premature SetRunLevel call from InitializeProcessor before APIC initialization 2026-05-14 21:52:42 +02:00
63d18aad1e Add ExtendedFeatureBits field 2026-05-14 21:37:11 +02:00
ed52d421ea Implement processor feature enumeration mapping 2026-05-14 21:35:43 +02:00
6df6a012d2 Partially revert ca4f3acc0e 2026-05-14 21:12:09 +02:00
ac675b037e Add FeatureBits field to CPU identification structure 2026-05-14 19:28:45 +02:00
ca4f3acc0e Properly identify CPU vendor 2026-05-14 18:59:00 +02:00
5b7761fe7d Expose InitializeProcessorStructures as a public method 2026-05-14 18:10:29 +02:00
7a2a27b1b9 Consolidate ProcessorBlock and ProcessorNumber into ProcessorStructures 2026-05-14 18:00:56 +02:00
1cff58c106 Refactor processor block initialization and add registration function 2026-05-14 13:15:55 +02:00
9185ceade6 Decouple processor block initialization from AllocateProcessorStructures 2026-05-14 11:07:42 +02:00
908bc87b06 Add NULL checks to InitializeProcessorStructures and reorder TSS allocation 2026-05-14 11:06:00 +02:00
6b852556a5 Replace magic numbers with architectural defines 2026-05-13 22:01:49 +02:00
ae18468bad Add AP startup assembly trampoline for AMD64 2026-05-13 21:48:42 +02:00
42bbdc9b26 Fix AP trampoline stack setup 2026-05-13 21:24:27 +02:00
b1ecdc3439 Add AP startup assembly trampoline for i686 2026-05-13 20:31:30 +02:00
fd7e18989d Protect debug print output with spinlock 2026-05-13 14:33:41 +02:00
757eac08c6 Refactor APIC IPI dispatching 2026-05-13 11:27:01 +02:00
760e58f993 Correct doxygen parameter name 2026-05-13 10:10:03 +02:00
c8868ead47 Add AllocateRealModeMemory routine for low memory allocations 2026-05-13 10:08:30 +02:00
58981e0087 Add MapVirtualAddress to memory manager paging interface 2026-05-13 09:58:13 +02:00
06635ed014 Parameterize maximum allocation address in hardware pool and scan memory descriptors in reverse 2026-05-12 19:35:06 +02:00
5a92173586 Implement targeted IPI broadcasting using processor block array 2026-05-11 00:07:21 +02:00
897d9d4099 Expose timer performance counter and clock rate functions 2026-05-10 23:42:13 +02:00
6b14f31107 Enable HPET main counter and disable legacy replacement during hardware detection 2026-05-09 13:13:30 +02:00
976eee9ce3 Add HPET and TSC stall execution backends 2026-05-07 20:24:19 +02:00
689951cfde Update timer subsystem with multi-backend dispatch table 2026-05-07 19:50:37 +02:00
4cb5b12e68 Declare context switching routines 2026-05-06 22:28:36 +02:00
9761569e06 Implement SwitchContext() and SwitchThreadStack() routines 2026-05-06 22:25:39 +02:00
100b58312f Drop unnecessary ULL qualifiers 2026-05-06 20:09:54 +02:00
c5b0d15830 Zero-initialize register before bitfield assignment 2026-05-06 19:58:17 +02:00
8107692d83 Enable allocated APIC interrupt and validate IO APIC mapping 2026-05-06 19:50:54 +02:00
3262ad78c1 Move timer initialization 2026-05-06 19:48:05 +02:00
85fb08b3d4 Change timer file descriptions 2026-05-06 19:43:06 +02:00
0952dd80b2 Export KeSetTimeIncrement 2026-05-06 19:38:36 +02:00
a3178e94bd Implement clock interrupt handling and time increment configuration 2026-05-06 19:32:00 +02:00
f7554e0e24 Implement KE::Dispatcher::UpdateRunTime stub 2026-05-05 23:22:55 +02:00
27440aefc4 Add TickCount to Kernel Shared Data 2026-05-05 22:47:32 +02:00
ba85c88544 Export ACPI timer information 2026-05-04 16:02:59 +02:00
b417f84492 Fix MADT subtable traversal 2026-05-04 15:02:39 +02:00
48ef4bcdca Clear input key buffer before read and propagate EFI_STATUS from ReadKeyStroke 2026-05-04 14:09:30 +02:00
7a28cf1c0a Change edit menu boot key binding 2026-05-04 13:57:17 +02:00
1050ddea8a Implement framebuffer double buffering 2026-05-04 11:51:52 +02:00
a7151dbc89 Fix boot stack initialization by returning the highest address 2026-05-03 18:49:51 +02:00
d532303b7f Fix incorrect SystemTime reference in KE::SharedData::GetInterruptTime function 2026-05-03 14:39:14 +02:00
7017985682 Register APIC error handler and stub broadcast IPI for uniprocessor 2026-05-03 13:12:29 +02:00
7aba8aa4ec Fix ACPI FADT timer masks 2026-05-03 02:04:29 +02:00
d1eed619a7 Extend KSD with InterruptTime 2026-04-30 13:00:59 +02:00
6cbda52d6b Extract Dispatcher class from KThread 2026-04-29 20:31:34 +02:00