Commit Graph

  • 1758ee4215 Initial ramdisk support Justin C. Miller 2018-09-05 22:42:18 -07:00
  • dc40c2f6ad Changes from the reorg branch Justin C. Miller 2018-09-05 22:26:23 -07:00
  • 2fb92e8592 Move AHCI driver into separate drivers/ directory Justin C. Miller 2018-05-23 00:15:10 -07:00
  • 57829e1b79 Correct the name of 'modules' folder to 'libraries' Justin C. Miller 2018-05-22 10:15:43 -07:00
  • bc26d7d01d Fixing test compilation Justin C. Miller 2018-09-05 20:17:29 -07:00
  • b93519e06f Updating README build instructions Justin C. Miller 2018-09-05 10:17:01 -07:00
  • 5d861d243a Loading processes from within their memory space Justin C. Miller 2018-09-05 10:09:00 -07:00
  • f1b84ab370 Default to non-user in all kernel pages now Justin C. Miller 2018-09-04 09:27:57 -07:00
  • d5b8902d8f Moving the rest (except ACPI tables) to high mem v0.2.0 Justin C. Miller 2018-09-03 15:15:19 -07:00
  • 799fbbdd10 _Actually_ move the kernel to the last TiB. Justin C. Miller 2018-09-01 14:54:12 -07:00
  • d33f1bc6f2 Page index to address translation script Justin C. Miller 2018-09-01 14:50:49 -07:00
  • 28a90e550e wscript change to dynamically detect KVM support for QEMU Justin C. Miller 2018-08-31 09:25:39 -07:00
  • 647801f096 Initial work on swapping page tables per process Justin C. Miller 2018-08-27 09:09:56 -07:00
  • 1664566bd2 enable KVM for qemu Justin C. Miller 2018-08-27 06:45:36 -07:00
  • cd09c17d71 Commented out CPUID log messages, they're never differnet under qemu Justin C. Miller 2018-08-27 06:41:09 -07:00
  • f74f3f03d1 Include prog_if in PCI device class log message Justin C. Miller 2018-08-27 06:40:30 -07:00
  • 23006b2b43 Fixed number of args in ahci interrupt log call Justin C. Miller 2018-08-27 06:39:31 -07:00
  • 7f69a6c9b1 Clean up AHCI: volatile, and sata_reset Justin C. Miller 2018-05-22 00:31:01 -07:00
  • 1726d10554 Unify syscall/interrupt handling of rsp Justin C. Miller 2018-05-21 22:57:43 -07:00
  • 757bc21550 Add note to implement FSXAVE Justin C. Miller 2018-05-21 01:05:38 -07:00
  • e187679f93 Add 2 more chars to log names Justin C. Miller 2018-05-21 01:02:47 -07:00
  • 2597e2002b Get super basic ring3 task switching working Justin C. Miller 2018-05-21 01:00:34 -07:00
  • e6f819ed90 Fix non-packed TSS struct Justin C. Miller 2018-05-21 00:57:02 -07:00
  • 0c8bcb2400 Add get_rip/get_rsp helpers Justin C. Miller 2018-05-21 00:56:35 -07:00
  • c5761cc51e Add more wscript options for qemu/vbox debugging Justin C. Miller 2018-05-21 00:55:29 -07:00
  • 24ccf65aba WIP ring3 Justin C. Miller 2018-05-20 01:03:04 -07:00
  • 814d6f1de6 Minor GDT fixes Justin C. Miller 2018-05-20 01:02:50 -07:00
  • bfaab294e6 Set up initial task switching (ring0 only) Justin C. Miller 2018-05-18 23:55:15 -07:00
  • 0ddcf668cb Allow for 2MiB large pages Justin C. Miller 2018-05-18 23:21:37 -07:00
  • 4005e9e791 Split gdt.* from interrupts.* Justin C. Miller 2018-05-17 09:26:57 -07:00
  • abaa007c54 Set TSS and load it Justin C. Miller 2018-05-17 01:39:47 -07:00
  • 87d80f84c2 Remove AHCI debug dumps Justin C. Miller 2018-05-21 09:07:32 -07:00
  • 3fdf246a22 Split waf listen command out from vbox command Justin C. Miller 2018-05-20 17:59:59 -07:00
  • 79b95d0045 Move FIS creation into make_command Justin C. Miller 2018-05-20 17:59:08 -07:00
  • 1e66e5cd82 Re-add CFL setting that was lost Justin C. Miller 2018-05-20 16:34:15 -07:00
  • 193d9939f0 Add some AHCI debugging dumps Justin C. Miller 2018-05-20 02:02:06 -07:00
  • 81fc559802 Add initial ATA identify support to AHCI driver Justin C. Miller 2018-05-17 00:20:55 -07:00
  • 0d75cc999c Add GPT partition handling as virtual block devices Justin C. Miller 2018-05-16 10:14:40 -07:00
  • a5da56d02f Add guid type Justin C. Miller 2018-05-16 00:29:43 -07:00
  • a7e20fd390 Update notes about VBox Justin C. Miller 2018-05-15 21:51:20 -07:00
  • 9f38e7e5f5 Switch to building VBox images on-demand from QEMU image Justin C. Miller 2018-05-15 21:39:12 -07:00
  • 93e60cc136 Give kassert its own vector instead of DBZ Justin C. Miller 2018-05-15 21:38:44 -07:00
  • 5f7ec50055 Add fixes I made while looking for VBox bug Justin C. Miller 2018-05-15 21:37:27 -07:00
  • ff0019841f Fix message in loader Justin C. Miller 2018-05-15 21:28:46 -07:00
  • 7eeeced2ca Change wscript vbox copy Justin C. Miller 2018-05-14 22:53:01 -07:00
  • 0fc369789e Change GDT code to enforce correct CS Justin C. Miller 2018-05-14 22:52:28 -07:00
  • 09f72f5ac6 GDT and GPF changes to track down Vbox bugs Justin C. Miller 2018-05-13 23:22:39 -07:00
  • 716109bab5 Add block device management to device manager Justin C. Miller 2018-05-12 20:27:46 -07:00
  • 0684fcf7e9 Separate read function into blocking and async portions Justin C. Miller 2018-05-12 20:16:25 -07:00
  • 289104cde0 Enable AHCI interrupts. v0.1.3 Justin C. Miller 2018-05-12 18:27:13 -07:00
  • c9277e4b12 Split ahci read into separate functions Justin C. Miller 2018-05-12 13:55:09 -07:00
  • 08125fc2a5 Fix AHCI reads Justin C. Miller 2018-05-12 00:35:04 -07:00
  • d06dd2ef43 Rearrange AHCI code, attempt to read WIP Justin C. Miller 2018-05-11 01:24:59 -07:00
  • 8ae3eea19c Move AHCI ports to their own class Justin C. Miller 2018-05-10 09:50:31 -07:00
  • a1bc76f305 Move malloc into kutil Justin C. Miller 2018-05-10 09:49:57 -07:00
  • 045bede481 Improve stack tracing Justin C. Miller 2018-05-11 01:25:40 -07:00
  • 0a231f2e0e Return to disk-based booting Justin C. Miller 2018-05-10 01:24:31 -07:00
  • 87e7c5f00a Updating wscripts to use custom tasks Justin C. Miller 2018-05-09 10:16:44 -07:00
  • 7ded9fe219 Add initial AHCI structures and probe capabilities Justin C. Miller 2018-05-09 02:30:06 -07:00
  • b389e75d33 Move PCI classes to separate files Justin C. Miller 2018-05-09 01:21:30 -07:00
  • 9128bfc5f1 Switch to clang and improve cpprt Justin C. Miller 2018-05-09 01:17:18 -07:00
  • bb227d2c37 Update README.md Justin C. Miller 2018-05-08 22:16:11 -07:00
  • 954da93301 Add LICENSE.md Justin C. Miller 2018-05-08 21:53:54 -07:00
  • 1dce0f265d Add memory manager tests Justin C. Miller 2018-05-08 21:53:27 -07:00
  • 0f54630725 Move memory_manager and assert into kutil. Justin C. Miller 2018-05-08 01:11:03 -07:00
  • 712cd69242 Put devices into a device vector. Justin C. Miller 2018-05-08 01:02:34 -07:00
  • ff3bd640f0 Add simple vector implementation to kutil for device_manager Justin C. Miller 2018-05-07 09:47:34 -07:00
  • abb347e1a8 Implement free() to finish buddy allocator Justin C. Miller 2018-05-07 00:59:45 -07:00
  • 949c9c0b8c Remove boot elf loader debug spam Justin C. Miller 2018-05-06 23:01:03 -07:00
  • 627a9f7972 Add structures in prep for better device tracking Justin C. Miller 2018-05-06 22:58:40 -07:00
  • cce892e92f Load ELF file by sections to get addresses right Justin C. Miller 2018-05-06 22:03:44 -07:00
  • 97fb8ef653 Map 1MiB instead of 1 page for APIC (prep for MSI) Justin C. Miller 2018-05-06 18:31:00 -07:00
  • 649d6169c9 Ditch BAR logging for PIC devices Justin C. Miller 2018-05-06 18:28:47 -07:00
  • 9efb97c2a7 Increase to 64 IRQs Justin C. Miller 2018-05-06 18:24:12 -07:00
  • d876aa141c Add better number formatting to printf Justin C. Miller 2018-05-06 02:18:24 -07:00
  • f64efad057 Add initial PCIe enumeration Justin C. Miller 2018-05-06 01:38:19 -07:00
  • 20edb87505 Move block list dump to separate method in page manager Justin C. Miller 2018-05-06 01:37:39 -07:00
  • 34156c55ae Add simple stack trace to exception handler Justin C. Miller 2018-05-05 17:12:02 -07:00
  • 569bc243f1 Fix bug in log::enable Justin C. Miller 2018-05-05 15:33:56 -07:00
  • bc6a42735c Bring Intel/HP efi source into project, remove gnu-efi Justin C. Miller 2018-05-05 14:13:38 -07:00
  • b2f2a9c721 Set chipset to q35 Justin C. Miller 2018-05-05 11:26:59 -07:00
  • 8a00b9c77d Spend a few more bytes on 'push' instruction to clear warnings Justin C. Miller 2018-05-05 11:26:13 -07:00
  • d7506b6aaf Rename intr log to apic, remove debug defaults Justin C. Miller 2018-05-05 11:02:41 -07:00
  • 3a86e89116 Update wscripts Justin C. Miller 2018-05-05 11:01:34 -07:00
  • 0e71bdab65 add FADT acpi table Justin C. Miller 2018-05-04 23:54:28 -07:00
  • 0c553b3406 Switch to waf build system, first attempt Justin C. Miller 2018-05-04 19:05:19 -07:00
  • 33012f35ef Re-integrate framebuffer console Justin C. Miller 2018-05-03 22:01:33 -07:00
  • a6b915f6b4 Updating NOTES Justin C. Miller 2018-05-03 21:59:47 -07:00
  • 772c981c39 Update NOTES.md Justin C. Miller 2018-05-03 01:15:42 -07:00
  • 05905f8c3c Move LAPIC LINT enable after log message for better debugging Justin C. Miller 2018-05-03 00:58:45 -07:00
  • 9542bd8a44 Add beginning of better vmem allocator Justin C. Miller 2018-05-03 00:57:58 -07:00
  • d9fe457b44 Add beginning basic serial driver Justin C. Miller 2018-05-03 00:08:22 -07:00
  • 59700b07db Add initial IO APIC support Justin C. Miller 2018-05-02 16:46:37 -07:00
  • 428e4563d0 Add initial classes representing APIC Justin C. Miller 2018-05-01 01:03:19 -07:00
  • 6c3bbaa686 Update ISO make tartget to xorrisofs Justin C. Miller 2018-04-30 20:27:37 -07:00
  • 7009bb6d05 Move parse_version.py into scripts Justin C. Miller 2018-04-30 17:39:17 -07:00
  • 23a5692d59 Switch to building floppy images instead of GPT disks Justin C. Miller 2018-04-30 08:36:17 -07:00
  • 2d4e7cfdee Check CPUID info, switch cpu flag to Broadwell Justin C. Miller 2018-04-29 23:50:56 -07:00
  • 99222d8ab9 Log more info about ACPI APIC table data Justin C. Miller 2018-04-29 23:50:01 -07:00
  • a845fee689 Remove test kalloc from main Justin C. Miller 2018-04-29 18:09:19 -07:00