Commit Graph

355 Commits

Author SHA1 Message Date
2e7793dc2b
Implement HlpGetCpuApicId() routine
Some checks failed
Builds / ExectOS (amd64) (push) Failing after 27s
Builds / ExectOS (i686) (push) Failing after 27s
2024-07-22 23:31:20 +02:00
2c5b680426
Implement HlpSendIpi() routine
All checks were successful
Builds / ExectOS (i686) (push) Successful in 36s
Builds / ExectOS (amd64) (push) Successful in 38s
2024-07-22 23:23:55 +02:00
626ece8046
HlReadApicRegister() should return and HlWriteApicRegister() should take ULONGLONG value
All checks were successful
Builds / ExectOS (i686) (push) Successful in 35s
Builds / ExectOS (amd64) (push) Successful in 36s
2024-07-16 22:36:45 +02:00
088940424d
Fix data types and rename some fields to avoid confusion
All checks were successful
Builds / ExectOS (i686) (push) Successful in 36s
Builds / ExectOS (amd64) (push) Successful in 36s
2024-07-16 16:28:12 +02:00
7abd0f3017
Revert unintentional change
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 35s
Builds / ExectOS (i686) (push) Successful in 34s
2024-07-14 12:13:56 +02:00
f8519ec09d
Rename HlpAcpiSystemInfo global variable to HlpSystemInfo
Some checks failed
Builds / ExectOS (amd64) (push) Failing after 27s
Builds / ExectOS (i686) (push) Failing after 27s
2024-07-14 12:11:39 +02:00
3bda67be0a
Basic ACPI system info initialization code for traversing MADT tables
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 36s
Builds / ExectOS (i686) (push) Successful in 35s
2024-07-13 21:08:58 +02:00
cb64235953
Use PHYSICAL_ADDRESS data type in MmAllocateHardwareMemory() routine as it is used in MmMapHardwareMemory() as well to avoid the need of data conversion
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 35s
Builds / ExectOS (i686) (push) Successful in 34s
2024-07-13 15:54:10 +02:00
801cf64f45
Update kernel readme
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 39s
Builds / ExectOS (i686) (push) Successful in 37s
2024-07-10 16:10:48 +02:00
f52c50242a
Correct comment
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 38s
Builds / ExectOS (i686) (push) Successful in 36s
2024-07-09 22:57:02 +02:00
3f10e1b59e
Fix page fault when trying to find ACPI table
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 36s
Builds / ExectOS (i686) (push) Successful in 35s
2024-07-09 22:47:26 +02:00
47219585d4
Fix pointer operation overflow
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 36s
Builds / ExectOS (i686) (push) Successful in 36s
2024-07-09 22:40:32 +02:00
e46f2e6116
Ensure that table header is not set before attempting to find ACPI table
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 42s
Builds / ExectOS (i686) (push) Successful in 41s
2024-07-09 22:36:40 +02:00
cc0edeeb47
Add missing forward reference update to fix build
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 36s
Builds / ExectOS (i686) (push) Successful in 37s
2024-06-22 19:16:00 +02:00
156cb7bcac
Refactor system resources to be able to distinguish if requested resource does not exist or if it is locked and cannot be reused
Some checks failed
Builds / ExectOS (amd64) (push) Failing after 28s
Builds / ExectOS (i686) (push) Failing after 28s
2024-06-22 18:54:34 +02:00
c2db94125d
Add appropriate crediting for Minoca authors for the System Resources component
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 37s
Builds / ExectOS (i686) (push) Successful in 37s
2024-06-21 17:00:20 +02:00
330d3fa72e
Fix routines order for better maintainability
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 40s
Builds / ExectOS (i686) (push) Successful in 39s
2024-06-21 16:50:05 +02:00
712107ae10
Simplify XTOS library
All checks were successful
Builds / ExectOS (i686) (push) Successful in 35s
Builds / ExectOS (amd64) (push) Successful in 34s
2024-06-12 18:40:52 +02:00
906e09fd9f
Refactor COM port support, to get rid of global variables in library
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 37s
Builds / ExectOS (i686) (push) Successful in 36s
2024-06-12 18:02:29 +02:00
91e8a86ee2
Implement kernel undefined behavior sanitizer support
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 35s
Builds / ExectOS (i686) (push) Successful in 34s
2024-06-12 16:19:24 +02:00
2f16f4f613
Traverse Local x2APIC structures to find all processors
All checks were successful
Builds / ExectOS (i686) (push) Successful in 34s
Builds / ExectOS (amd64) (push) Successful in 36s
2024-06-07 23:05:12 +02:00
f36b59c961
Store processor identities in system info structure
All checks were successful
Builds / ExectOS (i686) (push) Successful in 1m13s
Builds / ExectOS (amd64) (push) Successful in 1m14s
2024-06-07 20:19:56 +02:00
86bc2042e5
Cleanup XTDK headers
All checks were successful
Builds / ExectOS (i686) (push) Successful in 35s
Builds / ExectOS (amd64) (push) Successful in 36s
2024-06-06 23:09:03 +02:00
658cb2d3c8
Get system information based on the ACPI (currently only number of CPUs)
All checks were successful
Builds / ExectOS (i686) (push) Successful in 35s
Builds / ExectOS (amd64) (push) Successful in 37s
2024-06-06 22:05:32 +02:00
829fc49aac
Fix ACPI cache causing some undefined behavior
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 36s
Builds / ExectOS (i686) (push) Successful in 35s
2024-06-06 21:52:41 +02:00
92e861ebae
Cleanup APIC related headers
All checks were successful
Builds / ExectOS (i686) (push) Successful in 39s
Builds / ExectOS (amd64) (push) Successful in 43s
2024-06-06 21:50:20 +02:00
4212453cf5
Fix APIC initialization code
All checks were successful
Builds / ExectOS (i686) (push) Successful in 35s
Builds / ExectOS (amd64) (push) Successful in 37s
2024-06-06 16:49:08 +02:00
ef65bceccd
Initialize legacy PIC and mask all interrupts
All checks were successful
Builds / ExectOS (i686) (push) Successful in 37s
Builds / ExectOS (amd64) (push) Successful in 37s
2024-06-05 16:08:54 +02:00
b061c87fc9
Fix routines with no prototype using XTAPI calling convention compiler warnings
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 36s
Builds / ExectOS (i686) (push) Successful in 35s
2024-06-04 21:41:16 +02:00
8a4caba26f
Fix routine with no prototype using XTAPI calling convention compiler warning
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 33s
Builds / ExectOS (i686) (push) Successful in 33s
2024-06-04 21:39:10 +02:00
76e1fc6099
Enable hardware layer initialization code
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 35s
Builds / ExectOS (i686) (push) Successful in 34s
2024-06-04 21:36:09 +02:00
7b29897efb
Initialize ACPI Timer
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 33s
Builds / ExectOS (i686) (push) Successful in 34s
2024-06-04 21:04:09 +02:00
7704e5d399
Initial kernel ACPI support
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 37s
Builds / ExectOS (i686) (push) Successful in 36s
2024-06-04 16:24:13 +02:00
c289dab514
Add ACPI resource type
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 36s
Builds / ExectOS (i686) (push) Successful in 35s
2024-06-02 21:36:59 +02:00
6176ca38a8
Cleanup hardware allocation memory pool related code
Some checks failed
Builds / ExectOS (amd64) (push) Successful in 32s
Builds / ExectOS (i686) (push) Failing after 32s
2024-06-02 17:29:31 +02:00
abb65b99fe
HlPool manages hardware related memory
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 1m39s
Builds / ExectOS (i686) (push) Successful in 1m36s
2024-06-02 17:01:45 +02:00
a7c4f6c2aa
Fix MmMapHalMemory() not using the ReturnAddress for calculating virtual address
All checks were successful
Builds / ExectOS (i686) (push) Successful in 36s
Builds / ExectOS (amd64) (push) Successful in 39s
2024-05-26 10:50:31 +02:00
4a275b3dec
Just skip unsupported system resources
All checks were successful
Builds / ExectOS (i686) (push) Successful in 50s
Builds / ExectOS (amd64) (push) Successful in 52s
2024-05-26 00:09:31 +02:00
94a40501d4
Mask APIC ICR0 and disable APIC interrupts for initialization time by raising APIC TPR
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 49s
Builds / ExectOS (i686) (push) Successful in 48s
2024-05-24 23:39:06 +02:00
b4588d5b4c
Make ExectOS only run on processors which support PAE
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 55s
Builds / ExectOS (i686) (push) Successful in 53s
2024-05-24 16:30:39 +02:00
5221db2e63
Rename LOADER_MEMORY_MAPPING structure to more meaningful LOADER_MEMORY_DESCRIPTOR
All checks were successful
Builds / ExectOS (i686) (push) Successful in 2m8s
Builds / ExectOS (amd64) (push) Successful in 2m11s
2024-05-23 19:00:50 +02:00
edbc2cc045
Initialize architecture specific hardware extensions
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 47s
Builds / ExectOS (i686) (push) Successful in 45s
2024-05-22 22:53:29 +02:00
609538b9be
Implement MmpGetPdeAddress() and MmpGetPteAddress() routines for i686 architecture as well as MmpMemoryExtensionEnabled() for checking PAE/LA57 support
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 51s
Builds / ExectOS (i686) (push) Successful in 50s
2024-05-22 22:47:28 +02:00
03727a61d3
Implement hardware layer pool memory management
Some checks failed
Builds / ExectOS (amd64) (push) Failing after 46s
Builds / ExectOS (i686) (push) Failing after 44s
2024-05-22 18:51:09 +02:00
2103b2dafd
Make sure frame buffer is initialized before drawing
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 50s
Builds / ExectOS (i686) (push) Successful in 49s
2024-05-18 16:57:38 +02:00
d2014a5e82
Use HlpRGBColor() internally
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 42s
Builds / ExectOS (i686) (push) Successful in 41s
2024-05-17 23:29:03 +02:00
811b173387
Re-enable interrupts only if they were enabled previously
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 42s
Builds / ExectOS (i686) (push) Successful in 40s
2024-05-17 23:24:04 +02:00
740df726e9
Implement ArInterruptsEnabled() routine
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 40s
Builds / ExectOS (i686) (push) Successful in 39s
2024-05-17 23:19:25 +02:00
5591e1b377
Fix ArGetCpuFlags() routine
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 40s
Builds / ExectOS (i686) (push) Successful in 38s
2024-05-17 23:16:16 +02:00
41bc673694
Initialize framebuffer device based on a system resource provided by boot loader
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 41s
Builds / ExectOS (i686) (push) Successful in 38s
2024-05-17 22:37:42 +02:00