VMCI: dma dg: detect DMA datagram capability
Detect the VMCI DMA datagram capability, and if present, ack it to the device. Reviewed-by: Vishnu Dasa <vdasa@vmware.com> Signed-off-by: Jorgen Hansen <jhansen@vmware.com> Link: https://lore.kernel.org/r/20220207102725.2742-4-jhansen@vmware.com Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
parent
e283a0e8b7
commit
eed2298d93
|
@ -562,6 +562,17 @@ static int vmci_guest_probe_device(struct pci_dev *pdev,
|
|||
}
|
||||
}
|
||||
|
||||
if (mmio_base != NULL) {
|
||||
if (capabilities & VMCI_CAPS_DMA_DATAGRAM) {
|
||||
caps_in_use |= VMCI_CAPS_DMA_DATAGRAM;
|
||||
} else {
|
||||
dev_err(&pdev->dev,
|
||||
"Missing capability: VMCI_CAPS_DMA_DATAGRAM\n");
|
||||
error = -ENXIO;
|
||||
goto err_free_data_buffer;
|
||||
}
|
||||
}
|
||||
|
||||
dev_info(&pdev->dev, "Using capabilities 0x%x\n", caps_in_use);
|
||||
|
||||
/* Let the host know which capabilities we intend to use. */
|
||||
|
|
|
@ -39,6 +39,7 @@
|
|||
#define VMCI_CAPS_DATAGRAM BIT(2)
|
||||
#define VMCI_CAPS_NOTIFICATIONS BIT(3)
|
||||
#define VMCI_CAPS_PPN64 BIT(4)
|
||||
#define VMCI_CAPS_DMA_DATAGRAM BIT(5)
|
||||
|
||||
/* Interrupt Cause register bits. */
|
||||
#define VMCI_ICR_DATAGRAM BIT(0)
|
||||
|
|
Loading…
Reference in New Issue