1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-05-25 09:05:07 +00:00
serenity/Kernel/Bus/PCI
Pankaj Raghav e99fafb683 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 :^)
2022-01-01 14:55:58 +01:00
..
Access.cpp Kernel: Propagate overflow errors from Memory::page_round_up 2021-12-28 23:08:50 +01:00
Access.h Kernel: Remove unused String.h includes 2021-12-11 13:15:26 -08:00
API.cpp Everywhere: Fix spelling of "offsetted" 2021-11-21 20:22:48 +01:00
API.h Kernel/PCI: Remove all macros and replace them with enum classes 2021-09-29 11:24:33 +02:00
Definitions.h Kernel/NVMe: Add initial NVMe driver support 2022-01-01 14:55:58 +01:00
Device.cpp Kernel: Use AK:any_of in PCI::Device capability checks 2021-12-09 22:53:42 -08:00
Device.h Kernel: Clean up PCI::Device namespace formatting 2021-09-20 16:00:43 +03:00
IDs.h Kernel/VirtIO: Determine VirtIO device class also with the PCI device ID 2021-09-04 20:53:26 +02:00
Initializer.cpp Kernel/PCI: Simplify detect_optimal_access_type function 2021-10-23 19:17:44 +02:00
Initializer.h Kernel/PCI: Move the PCI components as a subfolder to the Bus directory 2021-07-02 13:16:12 +02:00
SysFSPCI.cpp Kernel: Tighten String-related includes 2021-12-30 14:16:03 +01:00
SysFSPCI.h Kernel/SysFS: Prevent allocation for component name during construction 2021-12-14 09:01:33 +01:00