Commit Graph
336 Commits
Author SHA1 Message Date
belliash 76f22fbdc4 Initialize segments and processor registers for i686 architecture
ci/woodpecker/push/build Pipeline was successful
2023-02-05 15:45:22 +01:00
belliash 911903d0eb Add missing routine description
ci/woodpecker/push/build Pipeline was successful
2023-02-05 10:08:49 +01:00
belliash d6aac59199 Let kernel initialize stack on it's own without relying on boot loader
ci/woodpecker/push/build Pipeline was successful
2023-02-05 09:55:59 +01:00
belliash 0b743a5f26 Add stub routine for identifying processor
ci/woodpecker/push/build Pipeline was successful
2023-02-05 00:42:30 +01:00
belliash c6cadbd655 Initialize MXCSR register
ci/woodpecker/push/build Pipeline was successful
2023-02-05 00:30:12 +01:00
belliash 5eaf7d63a3 Initialize Page Attribute Table
ci/woodpecker/push/build Pipeline was successful
2023-02-05 00:14:34 +01:00
belliash 55cdae7c83 Initialize AMD64 processor registers
ci/woodpecker/push/build Pipeline was successful
2023-02-04 23:40:03 +01:00
belliash f181215341 Initialize segment registers
ci/woodpecker/push/build Pipeline was successful
2023-02-04 00:17:07 +01:00
belliash f37722b6e6 Distinguish ProcessorBlock and ProcessorControlBlock
ci/woodpecker/push/build Pipeline was successful
2023-02-03 19:28:03 +01:00
belliash b90f37dad4 Fill in Interrupt Descriptor Table (IDT)
ci/woodpecker/push/build Pipeline was successful
2023-02-03 18:40:10 +01:00
belliash 648ad1636a Cleanup TSS initialization code
ci/woodpecker/push/build Pipeline was successful
2023-02-03 18:27:50 +01:00
belliash 269214ed34 Another improvements to GDT
ci/woodpecker/push/build Pipeline was successful
2023-02-03 18:00:37 +01:00
belliash a49d0804ce Add trap handlers for both i686 and amd64
ci/woodpecker/push/build Pipeline was successful
2023-02-02 23:31:32 +01:00
belliash 404f2f85c6 Cleanup the Interrupt Stack Table
ci/woodpecker/push/build Pipeline was successful
2023-02-01 23:47:57 +01:00
belliash 7fc1f04cd0 TSS entry is already put into GDT table, just initialize it
ci/woodpecker/push/build Pipeline was successful
2023-02-01 23:37:12 +01:00
belliash cbd21ced39 Use a size of the structure, not a pointer
ci/woodpecker/push/build Pipeline was successful
2023-02-01 22:38:36 +01:00
belliash dc1a94b982 This is 'Processor Block'
ci/woodpecker/push/build Pipeline was successful
2023-02-01 22:02:07 +01:00
belliash 3522539d4b Initialize Interrupt Descriptor Table (IDT)
ci/woodpecker/push/build Pipeline was successful
2023-02-01 21:56:17 +01:00
belliash 1ef205d47b Initialize DoubleFault and NonMaskableInterrupt TSS entries
ci/woodpecker/push/build Pipeline was successful
2023-02-01 20:36:40 +01:00
belliash e2813bcdaa Fix entries in Global Descriptor Table (GDT)
ci/woodpecker/push/build Pipeline was successful
2023-02-01 20:24:55 +01:00
belliash 892c9eca86 Do not hardcode I/O map base
ci/woodpecker/push/build Pipeline was successful
2023-01-30 22:38:41 +01:00
belliash a761d3125a Architecture specific initialization prior to processor structures initialization
ci/woodpecker/push/build Pipeline was successful
2023-01-30 20:34:05 +01:00
belliash 6f068513cd Initial processor block initialization
ci/woodpecker/push/build Pipeline was successful
2023-01-30 19:07:05 +01:00
belliash bca7ac41b8 Initialize boot CPU structures inside kernel on i686 architecture
ci/woodpecker/push/build Pipeline was successful
2023-01-29 10:54:52 +01:00
belliash 7ac434cb99 Move architecture specific globals to external header, as ex. there is no GDT on ARM
ci/woodpecker/push/build Pipeline was successful
2023-01-29 09:48:59 +01:00
belliash ae60753e33 Add missing source files for i686 architecture
ci/woodpecker/push/build Pipeline was successful
2023-01-29 00:52:05 +01:00
belliash 7bf4a9ab8d Initialize boot CPU structures inside kernel on AMD64
ci/woodpecker/push/build Pipeline was successful
2023-01-29 00:45:17 +01:00
belliash 8733a23b20 Include kernel top header
ci/woodpecker/push/build Pipeline was successful
2023-01-29 00:34:34 +01:00
belliash 757560ffeb Do not use EFI RunTime Services in kernel as they are not mapped correctly
ci/woodpecker/push/build Pipeline was successful
2023-01-29 00:32:52 +01:00
belliash 9cd9a1eafa Correct typos
ci/woodpecker/push/build Pipeline was successful
2023-01-29 00:25:25 +01:00
belliash 27e2fdf4f2 Introduce architecture library as new kernel subsystem and move selected routines into new subsystem
ci/woodpecker/push/build Pipeline was successful
2023-01-28 10:34:55 +01:00
belliash d5f9b20b51 Import kernel readme
ci/woodpecker/push/build Pipeline was successful
2023-01-27 22:59:53 +01:00
belliash e94e50b5d9 Implement HlLoadInterruptDescriptorTable() intrinsics for loading IDT
ci/woodpecker/push/build Pipeline was successful
2023-01-26 20:08:57 +01:00
belliash b57e79aa7f Proceed with architecture specific initialization
ci/woodpecker/push/build Pipeline was successful
2023-01-25 19:37:13 +01:00
belliash 8da38af489 Rename KepInitializeBootStructures() to KepInitializeStack()
ci/woodpecker/push/build Pipeline was successful
2023-01-25 19:28:12 +01:00
belliash 3c3e93afc7 Save kernel initialization block earlier
ci/woodpecker/push/build Pipeline was successful
2023-01-25 18:45:08 +01:00
belliash 707dc37868 Fix type of Source parameter in HlLoadSegment() routine
ci/woodpecker/push/build Pipeline was successful
2023-01-24 23:08:48 +01:00
belliash 35aa514f95 Implement HlLoadSegment() intrinsics routine
ci/woodpecker/push/build Pipeline was successful
2023-01-24 19:27:18 +01:00
belliash d3d8d144a0 Implement HlLoadGlobalDescriptorTable() intrinsic
ci/woodpecker/push/build Pipeline was successful
2023-01-23 20:13:51 +01:00
belliash adc6677c9d Code formatting
ci/woodpecker/push/build Pipeline was successful
2023-01-23 20:04:32 +01:00
belliash c81b858757 Implement HlReadGSQuadWord() intrinsic
ci/woodpecker/push/build Pipeline was successful
2023-01-23 19:59:54 +01:00
belliash f20ab3e52e Implement HlLoadTaskRegister() for loading TSS segment selector into task register
ci/woodpecker/push/build Pipeline was successful
2023-01-23 15:26:35 +01:00
belliash 9cbe2d458c Initial support for EFI framebuffer 2023-01-23 15:26:35 +01:00
belliash fb60625abc Add more intrinsic routines
ci/woodpecker/push/build Pipeline was successful
2023-01-13 22:32:45 +01:00
belliash 12b8c5f539 Switch kernel stack and move boot structures initialization into separate routine
ci/woodpecker/push/build Pipeline was successful
2023-01-08 10:35:49 +01:00
belliash 3caca6e1bf Set kernel subsystem to XT_NATIVE_KERNEL
ci/woodpecker/push/build Pipeline was successful
2023-01-06 19:25:21 +01:00
belliash f2b51ff69c Code formatting
ci/woodpecker/push/build Pipeline was successful
2023-01-05 22:45:52 +01:00
belliash 3131aac7a9 Move serial ports I/O address to architecture specific header
ci/woodpecker/push/build Pipeline was successful
2023-01-05 15:58:36 +01:00
belliash 5730e8692e Reorganisation of KeStartXtSystem() routine and early debug printing
ci/woodpecker/push/build Pipeline was successful
2023-01-04 23:08:59 +01:00
belliash c5a7d0fe05 Improvements in COM port support
ci/woodpecker/push/build Pipeline was successful
2023-01-02 16:14:00 +01:00