| CPC G06F 13/1668 (2013.01) [G06F 12/0253 (2013.01); G06F 13/28 (2013.01); G06F 13/4022 (2013.01); G06F 13/4221 (2013.01)] | 18 Claims |

|
1. A method, comprising:
selecting one of a plurality of NVMe devices as principal device to control communication with a host via a PCle switch;
designating remainder of the plurality of NVMe devices as subordinate devices;
exposing an I/O queue of the principal device to the host such that the host communicates with the subordinate devices without the subordinate devices being exposed to the host;
controlling the communication between the host and the subordinate devices using a PCI peer-to-peer direct memory access (PCI P2P DMA) between the principal device and the subordinate devices;
changing class codes of the remainder of the plurality of NVMe devices such that an NVMe driver of the host does not attach to the remainder of the plurality of NVMe devices; and
storing the changed class codes in a memory of the host such that the changed class codes cannot be changed by the host.
|