Lines Matching refs:pdev
167 static int vmci_check_host_caps(struct pci_dev *pdev) in vmci_check_host_caps() argument
177 dev_err(&pdev->dev, "%s: Insufficient memory\n", __func__); in vmci_check_host_caps()
194 dev_dbg(&pdev->dev, "%s: Host capability check: %s\n", in vmci_check_host_caps()
374 static int vmci_enable_msix(struct pci_dev *pdev, in vmci_enable_msix() argument
385 result = pci_enable_msix_exact(pdev, in vmci_enable_msix()
390 result = pci_enable_msix_exact(pdev, vmci_dev->msix_entries, 1); in vmci_enable_msix()
456 static int vmci_guest_probe_device(struct pci_dev *pdev, in vmci_guest_probe_device() argument
466 dev_dbg(&pdev->dev, "Probing for vmci/PCI guest device\n"); in vmci_guest_probe_device()
468 error = pcim_enable_device(pdev); in vmci_guest_probe_device()
470 dev_err(&pdev->dev, in vmci_guest_probe_device()
475 error = pcim_iomap_regions(pdev, 1 << 0, KBUILD_MODNAME); in vmci_guest_probe_device()
477 dev_err(&pdev->dev, "Failed to reserve/map IO regions\n"); in vmci_guest_probe_device()
481 iobase = pcim_iomap_table(pdev)[0]; in vmci_guest_probe_device()
483 dev_info(&pdev->dev, "Found VMCI PCI device at %#lx, irq %u\n", in vmci_guest_probe_device()
484 (unsigned long)iobase, pdev->irq); in vmci_guest_probe_device()
486 vmci_dev = devm_kzalloc(&pdev->dev, sizeof(*vmci_dev), GFP_KERNEL); in vmci_guest_probe_device()
488 dev_err(&pdev->dev, in vmci_guest_probe_device()
493 vmci_dev->dev = &pdev->dev; in vmci_guest_probe_device()
505 dev_err(&pdev->dev, in vmci_guest_probe_device()
510 pci_set_master(pdev); /* To enable queue_pair functionality. */ in vmci_guest_probe_device()
523 dev_err(&pdev->dev, "Device does not support datagrams\n"); in vmci_guest_probe_device()
534 &pdev->dev, PAGE_SIZE, &vmci_dev->notification_base, in vmci_guest_probe_device()
537 dev_warn(&pdev->dev, in vmci_guest_probe_device()
545 dev_info(&pdev->dev, "Using capabilities 0x%x\n", capabilities); in vmci_guest_probe_device()
553 vmci_pdev = pdev; in vmci_guest_probe_device()
564 dev_warn(&pdev->dev, in vmci_guest_probe_device()
573 error = vmci_check_host_caps(pdev); in vmci_guest_probe_device()
587 dev_warn(&pdev->dev, in vmci_guest_probe_device()
595 if (!vmci_disable_msix && !vmci_enable_msix(pdev, vmci_dev)) { in vmci_guest_probe_device()
598 } else if (!vmci_disable_msi && !pci_enable_msi(pdev)) { in vmci_guest_probe_device()
600 vmci_dev->irq = pdev->irq; in vmci_guest_probe_device()
603 vmci_dev->irq = pdev->irq; in vmci_guest_probe_device()
613 dev_err(&pdev->dev, "Irq %u in use: %d\n", in vmci_guest_probe_device()
629 dev_err(&pdev->dev, in vmci_guest_probe_device()
636 dev_dbg(&pdev->dev, "Registered device\n"); in vmci_guest_probe_device()
650 pci_set_drvdata(pdev, vmci_dev); in vmci_guest_probe_device()
660 pci_disable_msix(pdev); in vmci_guest_probe_device()
662 pci_disable_msi(pdev); in vmci_guest_probe_device()
666 dev_warn(&pdev->dev, in vmci_guest_probe_device()
674 dma_free_coherent(&pdev->dev, PAGE_SIZE, in vmci_guest_probe_device()
692 static void vmci_guest_remove_device(struct pci_dev *pdev) in vmci_guest_remove_device() argument
694 struct vmci_guest_device *vmci_dev = pci_get_drvdata(pdev); in vmci_guest_remove_device()
697 dev_dbg(&pdev->dev, "Removing device\n"); in vmci_guest_remove_device()
705 dev_warn(&pdev->dev, in vmci_guest_remove_device()
714 dev_dbg(&pdev->dev, "Resetting vmci device\n"); in vmci_guest_remove_device()
726 pci_disable_msix(pdev); in vmci_guest_remove_device()
728 pci_disable_msi(pdev); in vmci_guest_remove_device()
740 dma_free_coherent(&pdev->dev, PAGE_SIZE, in vmci_guest_remove_device()