summary refs log tree commit diff stats
path: root/docs/specs
diff options
context:
space:
mode:
authorKlaus Jensen <k.jensen@samsung.com>2019-06-26 08:51:06 +0200
committerKlaus Jensen <k.jensen@samsung.com>2020-10-27 07:24:47 +0100
commit7f0f1acedf159d00684d495d7a14d52220c1d16b (patch)
tree1dc8557a7ebdf56c5f664b0898b3ab8d40a6ed3a /docs/specs
parent7c9c350c15289b601766c391024e0bfea8a36ee0 (diff)
downloadfocaccia-qemu-7f0f1acedf159d00684d495d7a14d52220c1d16b.tar.gz
focaccia-qemu-7f0f1acedf159d00684d495d7a14d52220c1d16b.zip
hw/block/nvme: support multiple namespaces
This adds support for multiple namespaces by introducing a new 'nvme-ns'
device model. The nvme device creates a bus named from the device name
('id'). The nvme-ns devices then connect to this and registers
themselves with the nvme device.

This changes how an nvme device is created. Example with two namespaces:

  -drive file=nvme0n1.img,if=none,id=disk1
  -drive file=nvme0n2.img,if=none,id=disk2
  -device nvme,serial=deadbeef,id=nvme0
  -device nvme-ns,drive=disk1,bus=nvme0,nsid=1
  -device nvme-ns,drive=disk2,bus=nvme0,nsid=2

The drive property is kept on the nvme device to keep the change
backward compatible, but the property is now optional. Specifying a
drive for the nvme device will always create the namespace with nsid 1.

Signed-off-by: Klaus Jensen <k.jensen@samsung.com>
Reviewed-by: Keith Busch <kbusch@kernel.org>
Reviewed-by: Minwoo Im <minwoo.im.dev@gmail.com>
Diffstat (limited to 'docs/specs')
0 files changed, 0 insertions, 0 deletions