Drew Galbraith
3ab9b4d818
[zion] Move Channel and Port blocked threads to IntrusiveList.
2023-06-21 16:34:30 -07:00
Drew Galbraith
e1af79b975
[zion/glacier] Move RefPtr to glacier.
2023-06-21 15:07:40 -07:00
Drew Galbraith
56eae3d4e5
[zion/glacier] Move SharedPtr to glacier
2023-06-21 14:48:29 -07:00
Drew Galbraith
fe1641ac38
[zion] Create a message queue to be shared between the port and channel
2023-06-20 15:29:32 -07:00
Drew Galbraith
685070d65e
Get rid of the type field on zmessage
2023-06-17 02:01:21 -07:00
Drew Galbraith
2ea1f90690
[zion] Add a direct port write for the kernel
2023-06-17 00:07:58 -07:00
Drew Galbraith
35f24e7c77
Add a Port poll operation
2023-06-16 23:15:28 -07:00
Drew Galbraith
21b73b5b92
[zion] [yellowstone] Pass the denali VMMO by port as a POC.
...
Preparing to bootsrap via port write rather than hard coding capability
ids.
2023-06-16 15:58:50 -07:00
Drew Galbraith
a47bac9966
[zion] Dynamically check Capability type.
...
Instead of passing an enum with the capability when creating it, relying
on polymorphism and a template struct tag to determine the object type
at runtime.
This is cleaner and avoids errors where we pass the wrong capability
type with the cap and do a bad cast at runtime.
2023-06-16 14:53:57 -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