Commit Graph

210 Commits

Author SHA1 Message Date
Drew Galbraith 40a50e8d00 Add entrypoint to rust mammoth. 2024-07-26 14:44:05 -07:00
Drew Galbraith 844f55c7d0 [Mammoth/Voyageurs] Add shift modifiers for scancodes. 2024-02-24 15:25:00 -08:00
Drew Galbraith 8fb55f56b6 [Yellowstone] Start teton after voyageurs is available. 2024-02-24 15:12:21 -08:00
Drew Galbraith 02d4f8c80e [Voyageurs] Send USB keypress data to the keyboard driver. 2024-02-24 14:59:33 -08:00
Drew Galbraith 3c1e435e04 [Voyageurs] Move NormalTrb generation into helper func. 2024-02-24 14:31:14 -08:00
Drew Galbraith e6b232851e [Voyageurs] Add 10 trbs to the queue to handle rapid keypresses. 2024-02-24 14:23:14 -08:00
Drew Galbraith c5f8195255 [Voyageurs] Receive keypress information from the usb keyboard. 2024-02-24 14:18:22 -08:00
Drew Galbraith 2cc9c89051 [Voyageurs] Send ConfigureEndpointCommand to device. 2024-02-24 09:23:58 -08:00
Drew Galbraith af69415d4d [Voyageurs] Get Configuration from USB device. 2024-02-24 08:25:22 -08:00
Drew Galbraith 39b6d32d86 [Voyageurs] Fix offset for physical trb address. 2024-02-23 14:46:28 -08:00
Drew Galbraith b0b7e2faff [Voyageurs] Send GetDescriptor command to the device. 2024-02-23 11:42:10 -08:00
Drew Galbraith 3d7e911045 [Voyageurs] Set LinkTrb Toggle Cycle bit. 2024-02-23 08:19:38 -08:00
Drew Galbraith 8e78950ac7 [Voyageurs] Send AddressDevice Command to move port to 'Addressed' State. 2024-02-22 18:16:08 -08:00
Drew Galbraith dd2687a59a [Voyageurs] Additional logging about command completion events. 2024-02-22 13:33:02 -08:00
Drew Galbraith 4cb0b0b2ae [Voyageurs] XHCI Event Segment working with polling. 2024-02-22 13:25:49 -08:00
Drew Galbraith b41784b938 [Voyageurs] Create an abstraction for managing TRBs. 2024-02-13 19:51:21 -08:00
Drew Galbraith 2228b5b52e [Voyageurs] First Pass XHCI Controller, resets the controller. 2024-02-06 20:51:16 -08:00
Drew Galbraith 3bacfea183 [Yellowstone] Add method to get XHCI configuration space. 2024-02-06 20:49:43 -08:00
Drew Galbraith cd1304beae [Denali] Add back accidentally deleted files. 2024-01-17 14:12:46 -08:00
Drew Galbraith fecaa387b0 [Yunq] Add a basic yunq test into libyunq. 2024-01-16 18:58:03 -08:00
Drew Galbraith 9c860dd6a4 [Yunq] Add support for repeated nested fields 2024-01-11 22:09:42 -08:00
Drew Galbraith a48d63a664 [Yunq] Add support for nested fields in messages. 2024-01-11 21:32:08 -08:00
Drew Galbraith 984d8b143e [Yunq] Move message parser to shared internal function. 2024-01-11 20:47:39 -08:00
Drew Galbraith 7ec4f696a8 [Yunq] Move serialization to yunq library. 2024-01-11 20:36:41 -08:00
Drew Galbraith 0135d8d844 [Yunq] Accept a message view on message parsing. 2024-01-11 20:03:34 -08:00
Drew Galbraith 75d84a0fa5 [Yunq] Read capabilities using the parsing library. 2024-01-11 19:59:36 -08:00
Drew Galbraith 0e6aa532a1 [Yunq] Move MessageView higher in call stack. 2024-01-11 19:51:18 -08:00
Drew Galbraith 30b220b2fb [Yunq] Move repeated field parsing to the yunq library. 2024-01-11 19:36:24 -08:00
Drew Galbraith 9e9ef21a3d [Yunq] POC for moving yunq parsing to a library. 2024-01-11 19:27:57 -08:00
Drew Galbraith 7b8528ea99 [VictoriaFallS] Cache the results of reading inodes.
This reduces the number of reads when starting up the OS by ~30% (32-23
for a basic use case).

In the future we should cache things using a BTree in the VFS but this
is sufficient for now.
2024-01-11 18:29:51 -08:00
Drew Galbraith d74918409c [VictoriaFallS] Refactor Ext2Driver to share inode reading code. 2024-01-11 18:29:05 -08:00
Drew Galbraith b2354ae341 Move many loops over glcr::Vector to range-based loops. 2024-01-11 17:13:35 -08:00
Drew Galbraith 83b0d9ab61 [Denali] Minor AHCI fixes 2024-01-11 15:09:41 -08:00
Drew Galbraith 21265e76ed [Denali] Reduce logging. 2023-12-08 15:27:32 -08:00
Drew Galbraith 0375306f5e [Denali] Record SATA device sector size and count. 2023-12-08 15:25:44 -08:00
Drew Galbraith e308d8e120 [Denali] Rename devices to ports. 2023-12-08 15:14:52 -08:00
Drew Galbraith 69ce3028fa [Denali] Move AHCI read to internal method as well. 2023-12-08 15:11:56 -08:00
Drew Galbraith 3e1da2bc90 [Denali] Add a simpler command method and use it to send identify. 2023-12-08 15:05:43 -08:00
Drew Galbraith e71017070f [Denali] No longer store Commands on the port. 2023-12-08 14:48:41 -08:00
Drew Galbraith 28a0f02b05 [Denali] Move signaling out of the command class. 2023-12-08 14:43:29 -08:00
Drew Galbraith d90c8eb1ef [Denali] Add identify device command. 2023-12-08 14:30:08 -08:00
Drew Galbraith b3bc1c44d7 [Denali] Refactore interrupt handling. 2023-12-08 11:11:20 -08:00
Drew Galbraith 5a18d7d559 [Denali] Update HBA pointers to volatile. Store CommandList in arrayview. 2023-12-07 22:41:15 -08:00
Drew Galbraith c530921bda [Denali] Reset AHCI controller when starting denali. 2023-12-07 22:33:29 -08:00
Drew Galbraith 961389dee8 [Teton] Duplicate yellowstone cap before spawning processes. 2023-12-07 00:18:09 -08:00
Drew Galbraith ebe72af716 [Sys] Reduce debugging noise. 2023-12-06 23:29:48 -08:00
Drew Galbraith 8c95e66277 [VictoriaFalls] Skipp reading blocks indexed at 0. 2023-12-06 23:29:08 -08:00
Drew Galbraith 067da8709c Update TODOs 2023-12-05 16:16:42 -08:00
Drew Galbraith 0b9f83b321 [Teton] Wait on spawned processes to exit. 2023-12-02 13:26:42 -08:00
Drew Galbraith 642fc4d80d [Zion/Mammoth] Move init cap decls to mammoth.
They no longer need to be independent now that we have removed the libc.
2023-12-01 10:42:26 -08:00