Commit Graph

715 Commits

Author SHA1 Message Date
119679c996 Mask the APIC Timer 2026-04-26 22:14:07 +02:00
b1d013977f Add compiler intrinsic support functions for 64-bit arithmetic 2026-04-26 17:50:21 +02:00
4d12f7ac01 Implement inverse time conversion functions for Unix and XT epochs 2026-04-25 23:32:07 +02:00
439ea891ca Replace lookup-based time logic with direct epoch calculation formulas 2026-04-24 23:27:25 +02:00
8ab3ddb8eb Define time constants and refactor time routines to use them 2026-04-24 18:38:07 +02:00
4afe678667 Update build configuration 2026-04-24 17:52:12 +02:00
3b76146d53 Implement time conversion routines for Unix and XT epoch formats 2026-04-24 17:48:44 +02:00
341759a325 Implement Kernel Shared Data management and initialization 2026-04-24 13:58:33 +02:00
5dc782ca24 Allocate and map the Kernel Shared Data page at startup 2026-04-24 12:12:23 +02:00
f2baa765b4 Use constants for CMOS port selection 2026-04-24 09:55:36 +02:00
2dd1fdf869 Implement RTC support 2026-04-24 09:52:07 +02:00
58010c27f4 Implement CMOS register access functions 2026-04-23 19:13:56 +02:00
98f2f449f9 Add wrapper for RDTSCP instruction 2026-04-22 22:58:17 +02:00
735ccd96a6 Initialize I/O APIC 2026-04-18 18:15:57 +02:00
cd4e905054 Add support for I/O APIC controllers and interrupt override handling 2026-04-18 00:04:12 +02:00
d37f2e3827 Implement GetKernelParameterValue to parse and extract boot option values 2026-04-13 19:18:04 +02:00
cec5e8b16b Implement detection of timer capabilities 2026-04-12 23:58:48 +02:00
a08e07e515 Refactor ACPI table caching to use a static array 2026-04-12 18:16:33 +02:00
d7f390b236 Harden ACPI initialization and fix MADT traversal for malformed tables 2026-04-12 17:42:15 +02:00
55cb12c978 Ensure APIC idle state before sending self-IPI 2026-04-09 23:51:13 +02:00
7d8bfa8f0a Implement support for APIC Self-InterProcessor Interrupts (SIPI) 2026-04-09 20:25:55 +02:00
d00e96baa4 Invoke APIC timer initialization 2026-04-09 16:17:08 +02:00
17f044cb3f Apply consistent coding style 2026-04-09 11:42:41 +02:00
1fa6e90439 Hook up profile interrupt handler 2026-04-08 23:16:03 +02:00
f15790e25b Initialize unhandled interrupt routine in early boot phase 2026-04-08 20:49:05 +02:00
53c5946c04 Clean up APIC timer initialization 2026-04-08 20:23:37 +02:00
9ffb03217a Implement software interrupt dispatch table and secondary handler lookup 2026-04-08 20:13:35 +02:00
4f65773aa9 Unify trap handler naming and remove unused kernel mode stack setup 2026-04-08 19:52:55 +02:00
f1476912f3 Add definitions for PIT ports and APIC timer divisor configuration 2026-04-08 07:21:40 +02:00
adb591f8c7 Implement APIC timer initialization and calibration 2026-04-08 00:15:03 +02:00
a0d5ee17c2 Replace trap dispatch wrappers with direct symbol mapping 2026-04-07 12:56:33 +02:00
9935d2d26b Update CPU identification code 2026-04-06 21:17:58 +02:00
9eff9874c5 Synchronize headers with merged assembly code 2026-04-02 15:16:21 +02:00
09516835d0 Consolidate boot and architecture support code into a single assembly file 2026-04-02 15:08:12 +02:00
2a24ce9a35 Refactor spurious interrupt handling to use assembly routine 2026-04-02 13:14:49 +02:00
9ea79c92a6 Refactor assembly includes and delete manual offset definitions 2026-04-02 10:50:00 +02:00
0fa23ccf40 Automate generation of assembly offsets from C structures via XTADK 2026-04-02 09:07:01 +02:00
87a91bfeb1 Make XTDK headers assembly-safe 2026-04-01 16:05:34 +02:00
232b92fd7e Implement spurious interrupt handler 2026-04-01 13:03:46 +02:00
d88f9f0a15 Remove erroneous swapgs and implement proper segment setting 2026-04-01 11:18:28 +02:00
154b2062ba Unify GDT selector naming convention 2026-04-01 11:02:05 +02:00
d00577ac8d Fix previous mode detection by reading CS from the trap frame 2026-03-31 23:10:45 +02:00
620fc24cd2 Fix previous mode detection by reading CS from the trap frame and sanitize segment restoration 2026-03-31 20:38:21 +02:00
494b615dc2 Fix x64 ABI compliance by aligning stack and reserving shadow space 2026-03-31 20:06:25 +02:00
d834b7e0c8 Correct kernel stack base calculation for downward growing stacks 2026-03-31 18:59:59 +02:00
987b8f45d7 Unify trap handler macro name 2026-03-31 15:53:11 +02:00
52ecbdeaff Add missing TrapVector constant 2026-03-31 13:02:53 +02:00
121f461491 Refactor trap handling to support task gates 2026-03-31 12:58:46 +02:00
f4b189adef Fix incorrect descriptor type used for NMI TSS 2026-03-30 22:20:09 +02:00
40c4860548 Refine LDT setup and restore critical TSS fields for hardware exceptions 2026-03-30 20:29:43 +02:00