Commit Graph
72 Commits
Author SHA1 Message Date
belliash a852993842 Add missing forward references to math related routines 2024-02-13 16:25:41 +01:00
belliash 77bc796769 Implement HlClearApicErrors() and HlSendEoi() routines, change HlDisableLegacyPic() calling convention 2024-02-09 15:11:14 +01:00
belliash 73cd4bd4f2 Export runlevel related routines 2024-02-07 22:26:38 +01:00
belliash 0fc14f6f82 Export spinlock related routines 2024-02-07 22:19:34 +01:00
belliash 99abcd63d1 Implement basic kernel spinlock mechanism 2024-02-05 22:07:39 +01:00
belliash 7727888087 Implement ArFlushTlb() routine 2024-02-04 23:43:38 +01:00
belliash abdb9b25db Implement RtlAtomicBitTestAndSet() and RtlAtomicBitTestAndSet64() intrinsic routines 2024-02-04 22:34:22 +01:00
belliash 9ce841e957 Implement memory barriers 2024-02-04 22:10:37 +01:00
belliash dddd1eb183 Rename internal kernel headers to distinguish them easily from XTDK 2023-11-29 20:39:59 +01:00
belliash 59aa62916a Include architecture specific HAL headers 2023-11-29 20:15:12 +01:00
belliash 3800138f52 Move (A)PIC related forward references to arch-specific headers 2023-11-29 20:13:03 +01:00
Jozef Nagy c8a54e602b Disable legacy 8259 PIC before enabling APIC
Reviewed-on: xt-sys/exectos#5
Reviewed-by: Rafal Kupiec <belliash@noreply.codingworkshop.git>
Co-authored-by: Jozef Nagy <schkwve@gmail.com>
Co-committed-by: Jozef Nagy <schkwve@gmail.com>
2023-11-29 20:07:16 +01:00
belliash f6c621c2a6 Basic processor initialization code 2023-11-28 22:31:39 +01:00
belliash d4ee87fd62 Fix function prototype 2023-11-28 15:39:32 +01:00
belliash d17b06a180 Register interrupt handlers once the APIC initialization is done 2023-11-28 14:20:23 +01:00
belliash e5adc31af7 Implement basic APIC support, including X2APIC 2023-11-27 22:38:15 +01:00
belliash bed49fa0ac Fix function prototypes using fastcall and stdcall calling convensions 2023-11-25 23:25:44 +01:00
belliash e245754d95 Add running level management support 2023-11-25 23:14:15 +01:00
belliash 1cb21a81dd Rename HlInitializeDisplay() to HlInitializeFrameBuffer() 2023-11-22 20:36:05 +01:00
belliash f28c870192 Implement KeHaltSystem() routine 2023-11-22 19:24:14 +01:00
belliash 1eecad21db Implement HlReadApicRegister() and HlWriteApicRegister() routines for basic APIC support 2023-11-20 15:26:03 +01:00
belliash 71d0608643 Implement ArGetStackPointer() routine 2023-11-19 00:09:16 +01:00
belliash ec4a0fcb70 Add missing KepRetireDpcList() routine forward reference 2023-11-15 23:19:20 +01:00
belliash d35dd4fce3 Save processor state during kernel initialization 2023-11-15 15:00:38 +01:00
belliash ccd0514416 Implement more CPU-related routines 2023-11-15 14:52:18 +01:00
belliash 1d9a79736a Allow to postpone thread startup 2023-11-11 16:30:53 +01:00
belliash 63f8dbc59b Initialize CPU power structures, idle process and idle thread 2023-11-02 23:07:11 +01:00
belliash 2621cb6d8a Turn atomic routines architecture independent 2023-10-29 21:43:05 +01:00
belliash 783a4a2aa0 Finish PoInitializeProcessorControlBlock() routine implementation 2023-10-29 20:14:10 +01:00
belliash a359c9b2e8 Keep only atomic routines 2023-10-29 18:22:11 +01:00
belliash 3f2baa5b50 Rename RtlInterlockedDecrementLongPtr() to follow routines naming convention 2023-10-29 12:21:19 +01:00
belliash cf7c467637 Implement RtlInterlockedExchangePointer() routine 2023-10-29 11:48:31 +01:00
belliash 6d63750fc2 Rename KepArchInitialize() routine to KepInitializeMachine() 2023-10-29 10:38:23 +01:00
belliash f05a262da2 Cleanup XTDK and XTOSKRNL headers 2023-10-29 09:58:47 +01:00
belliash 841a6b304b Cleanup KE subsystem headers 2023-10-29 09:14:46 +01:00
belliash 798e4c1d22 Cleanup MM subsystem headers 2023-10-29 00:52:05 +02:00
belliash 600c86949b Cleanup RTL subsystem headers 2023-10-29 00:14:01 +02:00
belliash 4ea54859f2 Add missing HL routine definitions 2023-10-28 23:36:21 +02:00
belliash ad15c55a39 Cleanup AR subsystem headers 2023-10-28 23:35:34 +02:00
belliash 598b34acf7 AR subsystem is architecture dependant, thus there should be no generic routines 2023-10-28 23:08:08 +02:00
belliash d55946c3cf Cleanup HL subsystem headers 2023-10-28 22:56:04 +02:00
belliash 3f520c8e0f Rename xtoskrnl headers 2023-10-28 22:35:33 +02:00
belliash 6f5e7f63f3 Include xtver.h to access version related definitions 2023-10-27 15:43:37 +02:00
belliash dfae0b4727 Implement ArSetGdtEntryBase() routine 2023-03-02 22:51:57 +01:00
belliash e81fb68357 Initial support processor idle functionality 2023-03-02 16:25:41 +01:00
belliash 57dee5c535 Reorder parameters in KeInitializeThread() 2023-02-24 22:29:38 +01:00
belliash 9c74aafe3d Initial implementation of process initialization 2023-02-24 19:52:20 +01:00
belliash c4d1f1cd0d Initial implementation of the thread initialization 2023-02-23 20:11:21 +01:00
belliash cbca1e21c6 Add missing forward reference to KeInitializeThread() 2023-02-21 22:49:13 +01:00
belliash b43afac326 Cleanup definitions in kernel headers 2023-02-11 22:26:13 +01:00