mirror of
https://github.com/genodelabs/genode.git
synced 2024-12-29 01:58:55 +00:00
04516a0d39
This driver component provides support for using consumer NVMe storage devices, i.e. it omits name space managment and will always use the first name space, on Genode. For now it defaults to a reasonable low configuration: - 1 I/O queue (completion/submission tuple) - 128 entries in the I/O queue - 4096 as the only I/O transaction memory page size Fixes #2747. |
||
---|---|---|
.. | ||
main.cc | ||
pci.h | ||
README | ||
target.mk | ||
util.h |
This directory contains the implementation of a NVMe driver component. Brief ===== The driver supports PCIe NVMe devices matching at least revision 1.1 of the NVMe specification. For now it only supports one name space and uses one completion and one submission queue to handle all I/O requests; one request is limited to 1MiB of data. It lacks any name space management functionality. Configuration ============= The following config illustrates how the driver is configured: !<start name="nvme_drv"> ! <resource name="ram" quantum="8M"/> ! <provides><service name="Block"/></provides> ! <config> ! <policy label_prefix="client1" writeable="yes"/> ! </config> !</start> Report ====== The driver supports reporting of active name spaces, which can be enabled via the configuration 'report' sub-node: !<report namespace="yes"/> The report structure is depicted by the following example: !<controller model="QEMU NVMe Ctrl" serial="FNRD"> ! <namespace id="0" block_count="32768" block_size="512"/> !</controller>