mirror of
https://github.com/RGBCube/serenity
synced 2025-07-27 07:37:46 +00:00
Kernel/NVMe: Add initial NVMe driver support
Add a basic NVMe driver support to serenity based on NVMe spec 1.4. The driver can support multiple NVMe drives (subsystems). But in a NVMe drive, the driver can support one controller with multiple namespaces. Each core will get a separate NVMe Queue. As the system lacks MSI support, PIN based interrupts are used for IO. Tested the NVMe support by replacing IDE driver with the NVMe driver :^)
This commit is contained in:
parent
602b35aa62
commit
e99fafb683
13 changed files with 946 additions and 0 deletions
|
@ -97,6 +97,9 @@ set(KERNEL_SOURCES
|
|||
Storage/Partition/GUIDPartitionTable.cpp
|
||||
Storage/Partition/MBRPartitionTable.cpp
|
||||
Storage/Partition/PartitionTable.cpp
|
||||
Storage/NVMe/NVMeController.cpp
|
||||
Storage/NVMe/NVMeNameSpace.cpp
|
||||
Storage/NVMe/NVMeQueue.cpp
|
||||
Storage/StorageDevice.cpp
|
||||
Storage/RamdiskController.cpp
|
||||
Storage/RamdiskDevice.cpp
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue