qemu-e2k/hw
Lukasz Maniak 99f48ae7ae hw/nvme: Add support for Secondary Controller List
Introduce handling for Secondary Controller List (Identify command with
CNS value of 15h).

Secondary controller ids are unique in the subsystem, hence they are
reserved by it upon initialization of the primary controller to the
number of sriov_max_vfs.

ID reservation requires the addition of an intermediate controller slot
state, so the reserved controller has the address 0xFFFF.
A secondary controller is in the reserved state when it has no virtual
function assigned, but its primary controller is realized.
Secondary controller reservations are released to NULL when its primary
controller is unregistered.

Signed-off-by: Lukasz Maniak <lukasz.maniak@linux.intel.com>
Acked-by: Michael S. Tsirkin <mst@redhat.com>
Reviewed-by: Klaus Jensen <k.jensen@samsung.com>
Signed-off-by: Klaus Jensen <k.jensen@samsung.com>
2022-06-23 23:24:28 +02:00
..
9pfs 9pfs: fix 'Twalk' to only send error if no component walked 2022-06-16 12:44:52 +02:00
acpi acpi/erst: fix fallthrough code upon validation failure 2022-06-16 12:54:58 -04:00
adc hw/adc/zynq-xadc: Use qemu_irq typedef 2022-05-19 16:19:02 +01:00
alpha
arm aspeed: Add I2C buses to AST1030 model 2022-06-22 09:49:34 +02:00
audio hw/audio/cs4231a: Const'ify global tables 2022-06-11 11:44:50 +02:00
avr
block hw/block/fdc-sysbus: Always mark sysbus floppy controllers as not having DMA 2022-06-11 11:36:14 +02:00
char acpi: serial-is: replace ISADeviceClass::build_aml with AcpiDevAmlIfClass:build_dev_aml 2022-06-09 19:32:48 -04:00
core qdev: unplug blocker for devices 2022-06-15 14:50:41 +01:00
cpu
cris
cxl pci-bridge/cxl_downstream: Add a CXL switch downstream port 2022-06-16 12:54:57 -04:00
display virtio-gpu: Respect UI refresh rate for EDID 2022-06-14 10:34:37 +02:00
dma ptimer: Rename PTIMER_POLICY_DEFAULT to PTIMER_POLICY_LEGACY 2022-05-19 16:19:03 +01:00
gpio hw/gpio: replace HWADDR_PRIx with PRIx64 2022-05-25 10:31:33 +02:00
hppa hppa: Fix serial port assignments and pass-through 2022-05-28 12:25:42 +02:00
hyperv hw/hyperv/vmbus: Remove unused vmbus_load/save_req() 2022-05-30 19:49:42 +02:00
i2c aspeed/i2c: Enable SLAVE_ADDR_RX_MATCH always 2022-06-22 09:49:34 +02:00
i386 hw/i386/pc: Unexport functions used only internally 2022-06-11 11:44:50 +02:00
ide include/hw/ide: Unexport pci_piix3_xen_ide_unplug() 2022-06-09 14:47:42 +01:00
input acpi: pckbd: replace ISADeviceClass::build_aml with AcpiDevAmlIfClass:build_dev_aml 2022-06-09 19:32:48 -04:00
intc pnv/xive2: Access direct mapped thread contexts from all chips 2022-06-20 08:38:58 -03:00
ipack
ipmi acpi: ipmi: use AcpiDevAmlIf interface to build IPMI device descriptors 2022-06-09 19:32:49 -04:00
isa hw/isa/piix3: Inline and remove piix3_create() 2022-06-11 11:44:50 +02:00
loongarch hw/loongarch: Add LoongArch virt power manager support. 2022-06-06 18:14:13 +00:00
m68k ptimer: Rename PTIMER_POLICY_DEFAULT to PTIMER_POLICY_LEGACY 2022-05-19 16:19:03 +01:00
mem mem/cxl_type3: Add read and write functions for associated hostmem. 2022-05-13 07:57:26 -04:00
microblaze
mips hw/mips/boston: Initialize g_autofree pointers 2022-06-11 23:50:35 +02:00
misc aspeed/hace: Add missing newlines to unimp messages 2022-06-22 09:49:34 +02:00
net hw/net/fsl_etsec/etsec: Remove obsolete and unused etsec_create() 2022-06-11 11:44:50 +02:00
nios2
nubus
nvme hw/nvme: Add support for Secondary Controller List 2022-06-23 23:24:28 +02:00
nvram machine: use QAPI struct for boot configuration 2022-05-12 12:29:43 +02:00
openrisc hw/openrisc: use right OMPIC size variable 2022-05-15 10:33:01 +09:00
pci vfio-user: handle device interrupts 2022-06-15 16:43:42 +01:00
pci-bridge pci-bridge/cxl_downstream: Add a CXL switch downstream port 2022-06-16 12:54:57 -04:00
pci-host ppc/pnv: fix extra indent spaces with DEFINE_PROP* 2022-06-20 08:38:58 -03:00
pcmcia
ppc ppc: fix boot with sam460ex 2022-06-20 08:38:58 -03:00
rdma
remote vfio-user: handle reset of remote device 2022-06-15 16:43:42 +01:00
riscv hw/core/loader: return image sizes as ssize_t 2022-06-10 09:31:42 +10:00
rtc hw/rtc/mc146818rtc: QOM'ify io_base offset 2022-06-11 11:44:50 +02:00
rx
s390x virtio: stop ioeventfd on reset 2022-06-14 16:50:30 +02:00
scsi virtio,pc,pci: fixes,cleanups,features 2022-06-10 18:15:34 -07:00
sd hw/sd/allwinner-sdhost: report FIFO water level as 1 when data ready 2022-05-30 12:34:46 +01:00
sensor
sh4
smbios
sparc machine: make memory-backend a link property 2022-05-12 12:29:44 +02:00
sparc64 hw: Reuse TYPE_I8042 define 2022-06-11 11:44:50 +02:00
ssi
timer Fix 'writeable' typos 2022-06-08 19:38:47 +01:00
tpm acpi: tpm-tis: use AcpiDevAmlIfClass:build_dev_aml to provide device's AML 2022-06-09 19:32:49 -04:00
tricore
usb usbredir: avoid queuing hello packet on snapshot restore 2022-06-14 10:34:36 +02:00
vfio ui/console: Do not return a value with ui_info 2022-06-14 10:34:37 +02:00
virtio vhost: also check queue state in the vhost_dev_set_log error routine 2022-06-16 12:54:58 -04:00
watchdog
xen hw/xen/xen_pt: Resolve igd_passthrough_isa_bridge_create() indirection 2022-05-12 12:07:06 +02:00
xenpv Warn user if the vga flag is passed but no vga device is created 2022-05-09 08:21:14 +02:00
xtensa hw/xtensa: fix reset value of MIROUT register of MX PIC 2022-05-06 15:27:40 -07:00
Kconfig hw/loongarch: Add support loongson3 virt machine type. 2022-06-06 18:09:03 +00:00
meson.build hw/loongarch: Add support loongson3 virt machine type. 2022-06-06 18:09:03 +00:00