Commit graph

  • d5a5041c4b Add multithreading to rust code. Drew Galbraith 2024-07-28 19:02:03 -07:00
  • 19144f7be9 Fix rust compiler warnings. Drew Galbraith 2024-07-28 18:14:18 -07:00
  • 1e073d5060 Split yunq compliation to library and use it in build process. Drew Galbraith 2024-07-28 18:08:34 -07:00
  • 370ba9ae40 Hacky auto build for rust yunq. Drew Galbraith 2024-07-28 14:32:50 -07:00
  • 2cbf871d09 Add codegen for new rust yunq parser. Drew Galbraith 2024-07-27 20:23:03 -07:00
  • 8f35d38e93 Add macros to derive message serializations. Drew Galbraith 2024-07-27 18:30:17 -07:00
  • ccd13fecf1 Use in macro. Drew Galbraith 2024-07-27 08:36:56 -07:00
  • 3eea4d811a Example yunq implementation for one Yellowstone endpoint. Drew Galbraith 2024-07-26 23:36:07 -07:00
  • 51d40f6db6 Return result type from syscall and format info on panic. Drew Galbraith 2024-07-26 16:31:57 -07:00
  • e310eee468 Add method for formatting strings. Drew Galbraith 2024-07-26 15:57:10 -07:00
  • 32ccbedb7a Basic allocations in rust user-space. Drew Galbraith 2024-07-26 15:20:21 -07:00
  • 40a50e8d00 Add entrypoint to rust mammoth. Drew Galbraith 2024-07-26 14:44:05 -07:00
  • d6833be0ad [Yunq] Codegen example for yunq implementation. Drew Galbraith 2024-06-11 15:11:56 -07:00
  • 12fb84cfad [Yunq] Add typechecking to rust implementation. Drew Galbraith 2024-06-11 13:32:28 -07:00
  • 1cda053758 Create a first pass at a rust parser for the yunq language. Drew Galbraith 2024-06-11 13:01:58 -07:00
  • 5b1debde54 Automatically rebuild a rust file when running qemu. Drew Galbraith 2024-06-08 15:58:16 -07:00
  • b0048b0a4f Barebones rust example working in user space. Drew Galbraith 2024-06-08 15:47:58 -07:00
  • 844f55c7d0 [Mammoth/Voyageurs] Add shift modifiers for scancodes. Drew Galbraith 2024-02-24 15:25:00 -08:00
  • a9351b222d [Mammoth] Change scancodes to USB codes. Drew Galbraith 2024-02-24 15:12:44 -08:00
  • 8fb55f56b6 [Yellowstone] Start teton after voyageurs is available. Drew Galbraith 2024-02-24 15:12:21 -08:00
  • 02d4f8c80e [Voyageurs] Send USB keypress data to the keyboard driver. Drew Galbraith 2024-02-24 14:59:33 -08:00
  • 3c1e435e04 [Voyageurs] Move NormalTrb generation into helper func. Drew Galbraith 2024-02-24 14:31:14 -08:00
  • e6b232851e [Voyageurs] Add 10 trbs to the queue to handle rapid keypresses. Drew Galbraith 2024-02-24 14:23:14 -08:00
  • c5f8195255 [Voyageurs] Receive keypress information from the usb keyboard. Drew Galbraith 2024-02-24 14:18:11 -08:00
  • 2cc9c89051 [Voyageurs] Send ConfigureEndpointCommand to device. Drew Galbraith 2024-02-24 09:23:58 -08:00
  • af69415d4d [Voyageurs] Get Configuration from USB device. Drew Galbraith 2024-02-24 08:25:22 -08:00
  • 39b6d32d86 [Voyageurs] Fix offset for physical trb address. Drew Galbraith 2024-02-23 14:46:28 -08:00
  • b0b7e2faff [Voyageurs] Send GetDescriptor command to the device. Drew Galbraith 2024-02-23 11:42:10 -08:00
  • 3d7e911045 [Voyageurs] Set LinkTrb Toggle Cycle bit. Drew Galbraith 2024-02-23 08:19:38 -08:00
  • 8e78950ac7 [Voyageurs] Send AddressDevice Command to move port to 'Addressed' State. Drew Galbraith 2024-02-22 18:16:08 -08:00
  • dd2687a59a [Voyageurs] Additional logging about command completion events. Drew Galbraith 2024-02-22 13:33:02 -08:00
  • 4cb0b0b2ae [Voyageurs] XHCI Event Segment working with polling. Drew Galbraith 2024-02-22 13:25:49 -08:00
  • b41784b938 [Voyageurs] Create an abstraction for managing TRBs. Drew Galbraith 2024-02-13 19:39:55 -08:00
  • 2228b5b52e [Voyageurs] First Pass XHCI Controller, resets the controller. Drew Galbraith 2024-02-06 20:51:16 -08:00
  • 3bacfea183 [Yellowstone] Add method to get XHCI configuration space. Drew Galbraith 2024-02-06 20:49:43 -08:00
  • 27c39d05e8 [Yunq] Add basic test for repeated fields. Drew Galbraith 2024-01-17 15:15:55 -08:00
  • 65e9fa1767 Update asm compiler for test-mem as well. Drew Galbraith 2024-01-17 14:56:32 -08:00
  • 9222f59da3 [Yunq] Add tests for capability serialization. Drew Galbraith 2024-01-17 14:31:52 -08:00
  • 01e10fb47e Set asm att compiler to gcc in the test environment. Drew Galbraith 2024-01-17 14:25:54 -08:00
  • a98e66ac47 [Yunq] Add serialization tests for Types message. Drew Galbraith 2024-01-17 14:15:53 -08:00
  • 3114ac110a [Glacier] Fix string memory deletion (thanks valgrind)../scripts/qemu.sh Drew Galbraith 2024-01-17 14:14:33 -08:00
  • cd1304beae [Denali] Add back accidentally deleted files. Drew Galbraith 2024-01-17 14:12:46 -08:00
  • a1f0197e83 [Yunq] Add parse/serialize for i64 field along with tests. Drew Galbraith 2024-01-17 13:57:02 -08:00
  • e83720e67c [Yunq] Only generate client and server files if an interface exists. Drew Galbraith 2024-01-17 13:56:22 -08:00
  • fecaa387b0 [Yunq] Add a basic yunq test into libyunq. Drew Galbraith 2024-01-16 18:58:03 -08:00
  • 9c860dd6a4 [Yunq] Add support for repeated nested fields Drew Galbraith 2024-01-11 22:09:42 -08:00
  • 05f2403dc2 [Mammoth] Allow allocating slightly more memory. Drew Galbraith 2024-01-11 22:09:24 -08:00
  • a48d63a664 [Yunq] Add support for nested fields in messages. Drew Galbraith 2024-01-11 21:32:08 -08:00
  • 9e12531651 [Yunq] Move method numbers to a scheme set by the parser. Drew Galbraith 2024-01-11 21:00:51 -08:00
  • 3b91819a4b [Yunq] Move message fields to a numbering scheme set by the parser. Drew Galbraith 2024-01-11 20:59:20 -08:00
  • ee341fa739 Draft 0.1.1 release notes added with work so far. Drew Galbraith 2024-01-11 20:53:31 -08:00
  • 984d8b143e [Yunq] Move message parser to shared internal function. Drew Galbraith 2024-01-11 20:47:39 -08:00
  • a71d5e9d24 [Yunq] Explicitly specialize serialization template functions. Drew Galbraith 2024-01-11 20:41:51 -08:00
  • 7ec4f696a8 [Yunq] Move serialization to yunq library. Drew Galbraith 2024-01-11 20:36:41 -08:00
  • 0135d8d844 [Yunq] Accept a message view on message parsing. Drew Galbraith 2024-01-11 20:03:34 -08:00
  • 75d84a0fa5 [Yunq] Read capabilities using the parsing library. Drew Galbraith 2024-01-11 19:59:36 -08:00
  • 0e6aa532a1 [Yunq] Move MessageView higher in call stack. Drew Galbraith 2024-01-11 19:51:18 -08:00
  • 30b220b2fb [Yunq] Move repeated field parsing to the yunq library. Drew Galbraith 2024-01-11 19:36:24 -08:00
  • 9e9ef21a3d [Yunq] POC for moving yunq parsing to a library. Drew Galbraith 2024-01-11 19:27:57 -08:00
  • 8a711266ef [Zion] Fix init program loader debugging. Drew Galbraith 2024-01-11 19:02:15 -08:00
  • 7b8528ea99 [VictoriaFallS] Cache the results of reading inodes. Drew Galbraith 2024-01-11 18:29:51 -08:00
  • e7cc98a20c [Mammoth] Add the ability to duplicate an owned memory region. Drew Galbraith 2024-01-11 18:29:45 -08:00
  • be392252a4 [Glacier] Add HashMap move semantics. Drew Galbraith 2024-01-11 18:29:29 -08:00
  • d74918409c [VictoriaFallS] Refactor Ext2Driver to share inode reading code. Drew Galbraith 2024-01-11 18:29:05 -08:00
  • 5eb72da9c8 Move glcr::Array & glcr::ArrayView loops to range-based. Drew Galbraith 2024-01-11 17:39:55 -08:00
  • 0a57d149b6 [Glacier] Add iterator to Array and ArrayView. Drew Galbraith 2024-01-11 17:39:31 -08:00
  • 66e7e95855 [Glacier] Factor Vector iterator logic into standalone class. Drew Galbraith 2024-01-11 17:32:06 -08:00
  • b2354ae341 Move many loops over glcr::Vector to range-based loops. Drew Galbraith 2024-01-11 17:13:35 -08:00
  • c06d1741f3 [Glacier] Add a vector iterator. Drew Galbraith 2024-01-11 16:59:10 -08:00
  • 36a09f98c9 [Glacier] Add a vector move contructor test. Drew Galbraith 2024-01-11 16:50:27 -08:00
  • 1b18739403 Separate memory testing script and only generate Cmake dir if necessary. Drew Galbraith 2024-01-11 16:45:26 -08:00
  • 5f1053cf17 [Glacier] Add Vector tests with memory check. Drew Galbraith 2024-01-11 16:42:43 -08:00
  • 09d902dfb5 [Glacier] Add a basic unit testing framework. Drew Galbraith 2024-01-11 16:09:37 -08:00
  • 83b0d9ab61 [Denali] Minor AHCI fixes Drew Galbraith 2024-01-11 15:09:41 -08:00
  • 21265e76ed [Denali] Reduce logging. Drew Galbraith 2023-12-08 15:27:32 -08:00
  • 0375306f5e [Denali] Record SATA device sector size and count. Drew Galbraith 2023-12-08 15:25:44 -08:00
  • e308d8e120 [Denali] Rename devices to ports. Drew Galbraith 2023-12-08 15:14:52 -08:00
  • 69ce3028fa [Denali] Move AHCI read to internal method as well. Drew Galbraith 2023-12-08 15:11:56 -08:00
  • 3e1da2bc90 [Denali] Add a simpler command method and use it to send identify. Drew Galbraith 2023-12-08 15:05:43 -08:00
  • e71017070f [Denali] No longer store Commands on the port. Drew Galbraith 2023-12-08 14:48:41 -08:00
  • 28a0f02b05 [Denali] Move signaling out of the command class. Drew Galbraith 2023-12-08 14:43:29 -08:00
  • d7c1022b7f [Zion] Print RBP on GP Fault. Drew Galbraith 2023-12-08 14:30:24 -08:00
  • d90c8eb1ef [Denali] Add identify device command. Drew Galbraith 2023-12-08 14:30:08 -08:00
  • 81469496d1 Add compile option to align stack for xmm usage. Drew Galbraith 2023-12-08 14:29:18 -08:00
  • b3bc1c44d7 [Denali] Refactore interrupt handling. Drew Galbraith 2023-12-08 11:11:20 -08:00
  • 5a18d7d559 [Denali] Update HBA pointers to volatile. Store CommandList in arrayview. Drew Galbraith 2023-12-07 22:41:15 -08:00
  • c530921bda [Denali] Reset AHCI controller when starting denali. Drew Galbraith 2023-12-07 22:33:29 -08:00
  • 8adde27d9b [Zion] Add a thread sleep call. Drew Galbraith 2023-12-07 00:19:17 -08:00
  • 66e94ac41b [Glacier] Allow removing from an intrusive list. Drew Galbraith 2023-12-07 00:18:33 -08:00
  • 961389dee8 [Teton] Duplicate yellowstone cap before spawning processes. Drew Galbraith 2023-12-07 00:18:09 -08:00
  • ebe72af716 [Sys] Reduce debugging noise. Drew Galbraith 2023-12-06 23:29:48 -08:00
  • 8c95e66277 [VictoriaFalls] Skipp reading blocks indexed at 0. Drew Galbraith 2023-12-06 23:29:08 -08:00
  • 594a6aac54 Update README. 0.1.0 Drew Galbraith 2023-12-05 17:02:16 -08:00
  • f1c67d88ed First pass at 0.1.0 release notes. Drew Galbraith 2023-12-05 16:51:45 -08:00
  • 067da8709c Update TODOs Drew Galbraith 2023-12-05 16:16:42 -08:00
  • 815a603c1c [Zion] Mark pages as not present before calling invlpg. Drew Galbraith 2023-12-05 16:11:37 -08:00
  • 1f8085f791 [Zion] Call invlpg when unmapping memory. Drew Galbraith 2023-12-05 15:53:42 -08:00
  • 0b9f83b321 [Teton] Wait on spawned processes to exit. Drew Galbraith 2023-12-02 13:26:42 -08:00
  • 8c5dd00443 [Glacier] Add debug methods for HashMap and RefPtr. Drew Galbraith 2023-12-02 13:25:28 -08:00
  • d9a4be6555 [Zion] Add a ProcessWait syscall. Drew Galbraith 2023-12-01 11:36:27 -08:00