Drew Galbraith
838ef01a2a
[Zion] Add a keyboard interrupt handler and a driver manager.
2023-11-25 11:14:30 -08:00
Drew Galbraith
0915cf45dc
Remove the basically-empty C library for now.
2023-11-24 08:48:16 -08:00
Drew Galbraith
8d730c67c1
[Mammoth] Move most classes to the mmth namespace.
2023-11-22 14:59:41 -08:00
Drew Galbraith
5f8d577948
[Mammoth] Move remaining classes to a shared folder.
2023-11-22 14:39:27 -08:00
Drew Galbraith
c42fb858ba
[Mammoth] Move thread and process to the proc/ folder
2023-11-22 14:10:10 -08:00
Drew Galbraith
99a75a4a76
[Mammoth] Move request/response context to ipc/ folder.
2023-11-22 13:56:40 -08:00
Drew Galbraith
f1cbfd18b7
[Mammoth] Move Mutex and Semaphore to a separate folder.
2023-11-22 13:45:04 -08:00
Drew Galbraith
2b8ae027df
[Denali] Use semaphores for DMA callback signaling.
2023-11-22 10:56:07 -08:00
Drew Galbraith
322502fcee
[Denali] Zero out uninitialized devices.
2023-11-19 22:54:01 -08:00
Drew Galbraith
344e84c313
[Mammoth] Get rid of last uses of MappedMemoryRegion.
2023-11-19 20:48:23 -08:00
Drew Galbraith
d41a565721
[Mammoth] Add an OwnedMemoryRegion for ContiguousPhysical.
2023-11-19 20:42:38 -08:00
Drew Galbraith
3e9923f227
[Mammoth] Add an owned memory capability that cleans itself up.
2023-11-19 17:54:28 -08:00
Drew Galbraith
c080c61398
[Denali] Reduce noise on AHCI interrupt.
2023-11-15 16:21:19 -08:00
Drew Galbraith
7c105c8a31
[Sys] Successfully spin up a new process from disk.
2023-11-15 09:47:32 -08:00
Drew Galbraith
17ed4ca1f6
Fix remainder of formats in userland.
2023-11-05 09:25:11 -08:00
Drew Galbraith
26b61db021
Move userspace to a templated StrFormat.
2023-11-03 02:48:21 -07:00
Drew Galbraith
3e4fdfee84
[Denali] Move denali server to yunq.
2023-10-25 20:28:28 -07:00
Drew Galbraith
acfaf26391
[Denali] Use mutexes to synchronize the AHCI responses.
...
This is a temporary solution to allow denali to migrate to the
yunq framework until we have a good async solution.
2023-10-25 19:39:09 -07:00
Drew Galbraith
caccb08e16
Generalize the EndpointServer to require less boilerplate.
...
Classes can now inherit from the EndpointServer and just implement the
HandleRequest function.
2023-08-01 15:52:08 -07:00
Drew Galbraith
72483a3437
Add a yellowstone stub and partially migrate denali
2023-07-05 14:51:24 -07:00
Drew Galbraith
a8db218204
[denali] Relocate AHCI structures to memory we control
2023-07-05 14:32:19 -07:00
Drew Galbraith
1412c5b73e
[denali] Factory construct the AHCI Driver
2023-06-26 17:35:51 -07:00
Drew Galbraith
16dd675828
[denali] Get Ahci device address from yellowstone.
2023-06-26 17:01:59 -07:00
Drew Galbraith
c064af5fa7
Endpoint syscalls implemented
2023-06-21 23:14:42 -07:00
Drew Galbraith
3a3ab8717b
[denali] Use glcr::ErrorOr as a POC.
2023-06-21 18:38:11 -07:00
Drew Galbraith
0b86a94f14
Migrate to error constants in glacier
2023-06-21 18:28:54 -07:00
Drew Galbraith
bd431b94ce
[zion] Move port calls to new syscall process.
2023-06-20 14:55:54 -07:00
Drew Galbraith
0aa38ac4a4
[denali] Make denali less noisy on interrupt
2023-06-19 21:51:53 -07:00
Drew Galbraith
685070d65e
Get rid of the type field on zmessage
2023-06-17 02:01:21 -07:00
Drew Galbraith
5e99dbf7d1
Refactor all Zion decls into one header
2023-06-17 01:45:53 -07:00
Drew Galbraith
e5da93757a
Working AHCI DMA IPC from yellowstone to denali.
...
We have a weird bug in context switching where a process's rsp0 ends up
pointing at the wrong value sometimes which crashes the OS.
2023-06-16 01:31:23 -07:00
Drew Galbraith
ffa2d97a64
First iteration of denali server
2023-06-15 16:20:29 -07:00
Drew Galbraith
b8b6576b7f
Cleanup AHCI Ident a bit and reduce logging
2023-06-12 23:32:24 -07:00
Drew Galbraith
6986f534f8
Add a method for blocking threads on ports.
...
Additionally add the first lock class since we are becoming more
concurrent.
2023-06-12 20:56:25 -07:00
Drew Galbraith
0f0e39d1e9
Further parse AHCI information.
...
Send an IDENTIFY command to each drive and set up a hook to handle
interrupts.
2023-06-12 19:20:51 -07:00
Drew Galbraith
30bb10207e
Add the Denali disk driver.
...
Begin enumerating information from the PCI structure and HBA AHCI
structures.
Currently the PCI structure address is hardcoded but it should be
passed via a capability from the init process in the future.
2023-06-08 02:36:59 -07:00