Skip to content

Commit 6de50e5

Browse files
committed
doc: Add MCTP scan details to mi document
Add some background information on the scan process, including dependencies on D-Bus and mctpd. Signed-off-by: Jeremy Kerr <[email protected]>
1 parent 5df8e3b commit 6de50e5

2 files changed

Lines changed: 28 additions & 0 deletions

File tree

doc/mi.rst

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,3 +27,17 @@ each have a unique ``unsigned int`` as their ID.
2727

2828
The default Network ID is 1; unless you have configured otherwise, MCTP
2929
endpoints will appear on this network.
30+
31+
If compiled with D-Bus support, ``libnvme-mi`` can query the system MCTP daemon
32+
("``mctpd``") to find attached NVMe devices, via the ``nvme_mi_scan_mctp()``
33+
function. Calling this will establish a ``nvme_root_t`` object, populated
34+
with the results of that scan. Use the ``nvme_mi_for_each_endpoint`` macro
35+
to iterate through the scanned endpoints.
36+
37+
Note that the MCTP daemon is provided separately, as part of the MCTP userspace
38+
tools, at https://github.com/CodeConstruct/mctp . ``mctpd`` is responsible for
39+
discovery and enumeration for MCTP endpoints on the system, and will query
40+
each for its protocol capabilities during enumeration. Consequently, NVMe-MI
41+
endpoints will need to report support for NVMe-MI-over-MCTP (protocol 0x4) in
42+
their supported protocols list (ie., as returned by the MCTP Get Message Type
43+
Support command) in order to be discovered.

doc/mi.rst.in

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,3 +27,17 @@ each have a unique ``unsigned int`` as their ID.
2727

2828
The default Network ID is 1; unless you have configured otherwise, MCTP
2929
endpoints will appear on this network.
30+
31+
If compiled with D-Bus support, ``libnvme-mi`` can query the system MCTP daemon
32+
("``mctpd``") to find attached NVMe devices, via the ``nvme_mi_scan_mctp()``
33+
function. Calling this will establish a ``nvme_root_t`` object, populated
34+
with the results of that scan. Use the ``nvme_mi_for_each_endpoint`` macro
35+
to iterate through the scanned endpoints.
36+
37+
Note that the MCTP daemon is provided separately, as part of the MCTP userspace
38+
tools, at https://github.com/CodeConstruct/mctp . ``mctpd`` is responsible for
39+
discovery and enumeration for MCTP endpoints on the system, and will query
40+
each for its protocol capabilities during enumeration. Consequently, NVMe-MI
41+
endpoints will need to report support for NVMe-MI-over-MCTP (protocol 0x4) in
42+
their supported protocols list (ie., as returned by the MCTP Get Message Type
43+
Support command) in order to be discovered.

0 commit comments

Comments
 (0)