class Nvme
Defined at line 46 of file ../../src/devices/block/drivers/nvme/nvme.h
Protected Members
Pci pci_
optional mmio_
InterruptMode irq_mode_
interrupt irq_
bti bti_
Public Methods
void Nvme (fdf::DriverStartArgs start_args, fdf::UnownedSynchronizedDispatcher dispatcher)
Defined at line 50 of file ../../src/devices/block/drivers/nvme/nvme.h
inspect::Inspector & inspect ()
Defined at line 65 of file ../../src/devices/block/drivers/nvme/nvme.h
inspect::Node & inspect_node ()
Defined at line 66 of file ../../src/devices/block/drivers/nvme/nvme.h
QueuePair * io_queue ()
Defined at line 68 of file ../../src/devices/block/drivers/nvme/nvme.h
uint32_t max_data_transfer_bytes ()
Defined at line 69 of file ../../src/devices/block/drivers/nvme/nvme.h
bool volatile_write_cache_enabled ()
Defined at line 70 of file ../../src/devices/block/drivers/nvme/nvme.h
uint16_t atomic_write_unit_normal ()
Defined at line 71 of file ../../src/devices/block/drivers/nvme/nvme.h
uint16_t atomic_write_unit_power_fail ()
Defined at line 72 of file ../../src/devices/block/drivers/nvme/nvme.h
std::vector<std::unique_ptr<nvme::Namespace>> & namespaces ()
Defined at line 74 of file ../../src/devices/block/drivers/nvme/nvme.h
zx::result<> Start ()
Defined at line 705 of file ../../src/devices/block/drivers/nvme/nvme.cc
void PrepareStop (fdf::PrepareStopCompleter completer)
Defined at line 246 of file ../../src/devices/block/drivers/nvme/nvme.cc
zx::result<Completion> DoAdminCommandSync (Submission & submission, std::optional<zx::unowned_vmo> admin_data)
Perform an admin command synchronously (i.e., blocks for the command to complete or timeout).
Returns the command completion.
Defined at line 76 of file ../../src/devices/block/drivers/nvme/nvme.cc
fidl::WireSyncClient<fuchsia_driver_framework::Node> & root_node ()
Called by children device of this controller for invoking AddChild() or instantiating
compat::DeviceServer.
Defined at line 78 of file ../../src/devices/block/drivers/nvme/nvme.h
std::string_view driver_name ()
Defined at line 79 of file ../../src/devices/block/drivers/nvme/nvme.h
const std::shared_ptr<fdf::Namespace> & driver_incoming ()
Defined at line 80 of file ../../src/devices/block/drivers/nvme/nvme.h
std::shared_ptr<fdf::OutgoingDirectory> & driver_outgoing ()
Defined at line 81 of file ../../src/devices/block/drivers/nvme/nvme.h
const std::optional<std::string> & driver_node_name ()
Defined at line 82 of file ../../src/devices/block/drivers/nvme/nvme.h
void QueueIoCommand (IoCommand * io_cmd)
Queue an IO command to be performed asynchronously.
Defined at line 237 of file ../../src/devices/block/drivers/nvme/nvme.cc
Protected Methods
zx::result<fit::function<void ()>> InitResources ()
Returns a function for releasing the initialized resources. Override to inject dependency for
unit testing.
Defined at line 655 of file ../../src/devices/block/drivers/nvme/nvme.cc
Friends
class FakeController