pci: allocate pci id for nvme
The emulated nvme device (hw/block/nvme.c) is currently using an internal Intel device id. Prepare to change that by allocating a device id under the 1b36 (Red Hat, Inc.) vendor id. Signed-off-by: Klaus Jensen <k.jensen@samsung.com> Acked-by: Gerd Hoffmann <kraxel@redhat.com> Reviewed-by: Maxim Levitsky <mlevitsk@redhat.com> Reviewed-by: Keith Busch <kbusch@kernel.org>
This commit is contained in:
		
							parent
							
								
									7f0f1acedf
								
							
						
					
					
						commit
						c1e1824661
					
				@ -1877,6 +1877,7 @@ L: qemu-block@nongnu.org
 | 
				
			|||||||
S: Supported
 | 
					S: Supported
 | 
				
			||||||
F: hw/block/nvme*
 | 
					F: hw/block/nvme*
 | 
				
			||||||
F: tests/qtest/nvme-test.c
 | 
					F: tests/qtest/nvme-test.c
 | 
				
			||||||
 | 
					F: docs/specs/nvme.txt
 | 
				
			||||||
T: git git://git.infradead.org/qemu-nvme.git nvme-next
 | 
					T: git git://git.infradead.org/qemu-nvme.git nvme-next
 | 
				
			||||||
 | 
					
 | 
				
			||||||
megasas
 | 
					megasas
 | 
				
			||||||
 | 
				
			|||||||
							
								
								
									
										23
									
								
								docs/specs/nvme.txt
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										23
									
								
								docs/specs/nvme.txt
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,23 @@
 | 
				
			|||||||
 | 
					NVM Express Controller
 | 
				
			||||||
 | 
					======================
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					The nvme device (-device nvme) emulates an NVM Express Controller.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Reference Specifications
 | 
				
			||||||
 | 
					------------------------
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					The device currently implements most mandatory features of NVMe v1.3d, see
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  https://nvmexpress.org/resources/specifications/
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					for the specification.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Known issues
 | 
				
			||||||
 | 
					------------
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					* The accounting numbers in the SMART/Health are reset across power cycles
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					* Interrupt Coalescing is not supported and is disabled by default in volation
 | 
				
			||||||
 | 
					  of the specification.
 | 
				
			||||||
@ -63,6 +63,7 @@ PCI devices (other than virtio):
 | 
				
			|||||||
1b36:000b  PCIe Expander Bridge (-device pxb-pcie)
 | 
					1b36:000b  PCIe Expander Bridge (-device pxb-pcie)
 | 
				
			||||||
1b36:000d  PCI xhci usb host adapter
 | 
					1b36:000d  PCI xhci usb host adapter
 | 
				
			||||||
1b36:000f  mdpy (mdev sample device), linux/samples/vfio-mdev/mdpy.c
 | 
					1b36:000f  mdpy (mdev sample device), linux/samples/vfio-mdev/mdpy.c
 | 
				
			||||||
 | 
					1b36:0010  PCIe NVMe device (-device nvme)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
All these devices are documented in docs/specs.
 | 
					All these devices are documented in docs/specs.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
				
			|||||||
@ -106,6 +106,7 @@ extern bool pci_available;
 | 
				
			|||||||
#define PCI_DEVICE_ID_REDHAT_XHCI        0x000d
 | 
					#define PCI_DEVICE_ID_REDHAT_XHCI        0x000d
 | 
				
			||||||
#define PCI_DEVICE_ID_REDHAT_PCIE_BRIDGE 0x000e
 | 
					#define PCI_DEVICE_ID_REDHAT_PCIE_BRIDGE 0x000e
 | 
				
			||||||
#define PCI_DEVICE_ID_REDHAT_MDPY        0x000f
 | 
					#define PCI_DEVICE_ID_REDHAT_MDPY        0x000f
 | 
				
			||||||
 | 
					#define PCI_DEVICE_ID_REDHAT_NVME        0x0010
 | 
				
			||||||
#define PCI_DEVICE_ID_REDHAT_QXL         0x0100
 | 
					#define PCI_DEVICE_ID_REDHAT_QXL         0x0100
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#define FMT_PCIBUS                      PRIx64
 | 
					#define FMT_PCIBUS                      PRIx64
 | 
				
			||||||
 | 
				
			|||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user