aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/pci/xen-pcifront.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/pci/xen-pcifront.c')
-rw-r--r--drivers/pci/xen-pcifront.c23
1 files changed, 12 insertions, 11 deletions
diff --git a/drivers/pci/xen-pcifront.c b/drivers/pci/xen-pcifront.c
index 8fc2e9532575..8785014f656e 100644
--- a/drivers/pci/xen-pcifront.c
+++ b/drivers/pci/xen-pcifront.c
@@ -1,3 +1,4 @@
1// SPDX-License-Identifier: GPL-2.0
1/* 2/*
2 * Xen PCI Frontend. 3 * Xen PCI Frontend.
3 * 4 *
@@ -261,8 +262,8 @@ static int pci_frontend_enable_msix(struct pci_dev *dev,
261 struct msi_desc *entry; 262 struct msi_desc *entry;
262 263
263 if (nvec > SH_INFO_MAX_VEC) { 264 if (nvec > SH_INFO_MAX_VEC) {
264 dev_err(&dev->dev, "too much vector for pci frontend: %x." 265 pci_err(dev, "too many vectors (0x%x) for PCI frontend:"
265 " Increase SH_INFO_MAX_VEC.\n", nvec); 266 " Increase SH_INFO_MAX_VEC\n", nvec);
266 return -EINVAL; 267 return -EINVAL;
267 } 268 }
268 269
@@ -281,7 +282,7 @@ static int pci_frontend_enable_msix(struct pci_dev *dev,
281 /* we get the result */ 282 /* we get the result */
282 for (i = 0; i < nvec; i++) { 283 for (i = 0; i < nvec; i++) {
283 if (op.msix_entries[i].vector <= 0) { 284 if (op.msix_entries[i].vector <= 0) {
284 dev_warn(&dev->dev, "MSI-X entry %d is invalid: %d!\n", 285 pci_warn(dev, "MSI-X entry %d is invalid: %d!\n",
285 i, op.msix_entries[i].vector); 286 i, op.msix_entries[i].vector);
286 err = -EINVAL; 287 err = -EINVAL;
287 vector[i] = -1; 288 vector[i] = -1;
@@ -295,7 +296,7 @@ static int pci_frontend_enable_msix(struct pci_dev *dev,
295 err = op.value; 296 err = op.value;
296 } 297 }
297 } else { 298 } else {
298 dev_err(&dev->dev, "enable msix get err %x\n", err); 299 pci_err(dev, "enable msix get err %x\n", err);
299 } 300 }
300 return err; 301 return err;
301} 302}
@@ -316,7 +317,7 @@ static void pci_frontend_disable_msix(struct pci_dev *dev)
316 317
317 /* What should do for error ? */ 318 /* What should do for error ? */
318 if (err) 319 if (err)
319 dev_err(&dev->dev, "pci_disable_msix get err %x\n", err); 320 pci_err(dev, "pci_disable_msix get err %x\n", err);
320} 321}
321 322
322static int pci_frontend_enable_msi(struct pci_dev *dev, int vector[]) 323static int pci_frontend_enable_msi(struct pci_dev *dev, int vector[])
@@ -335,13 +336,13 @@ static int pci_frontend_enable_msi(struct pci_dev *dev, int vector[])
335 if (likely(!err)) { 336 if (likely(!err)) {
336 vector[0] = op.value; 337 vector[0] = op.value;
337 if (op.value <= 0) { 338 if (op.value <= 0) {
338 dev_warn(&dev->dev, "MSI entry is invalid: %d!\n", 339 pci_warn(dev, "MSI entry is invalid: %d!\n",
339 op.value); 340 op.value);
340 err = -EINVAL; 341 err = -EINVAL;
341 vector[0] = -1; 342 vector[0] = -1;
342 } 343 }
343 } else { 344 } else {
344 dev_err(&dev->dev, "pci frontend enable msi failed for dev " 345 pci_err(dev, "pci frontend enable msi failed for dev "
345 "%x:%x\n", op.bus, op.devfn); 346 "%x:%x\n", op.bus, op.devfn);
346 err = -EINVAL; 347 err = -EINVAL;
347 } 348 }
@@ -560,7 +561,7 @@ static void free_root_bus_devs(struct pci_bus *bus)
560 while (!list_empty(&bus->devices)) { 561 while (!list_empty(&bus->devices)) {
561 dev = container_of(bus->devices.next, struct pci_dev, 562 dev = container_of(bus->devices.next, struct pci_dev,
562 bus_list); 563 bus_list);
563 dev_dbg(&dev->dev, "removing device\n"); 564 pci_dbg(dev, "removing device\n");
564 pci_stop_and_remove_bus_device(dev); 565 pci_stop_and_remove_bus_device(dev);
565 } 566 }
566} 567}
@@ -595,6 +596,7 @@ static pci_ers_result_t pcifront_common_process(int cmd,
595 struct pci_driver *pdrv; 596 struct pci_driver *pdrv;
596 int bus = pdev->sh_info->aer_op.bus; 597 int bus = pdev->sh_info->aer_op.bus;
597 int devfn = pdev->sh_info->aer_op.devfn; 598 int devfn = pdev->sh_info->aer_op.devfn;
599 int domain = pdev->sh_info->aer_op.domain;
598 struct pci_dev *pcidev; 600 struct pci_dev *pcidev;
599 int flag = 0; 601 int flag = 0;
600 602
@@ -603,7 +605,7 @@ static pci_ers_result_t pcifront_common_process(int cmd,
603 cmd, bus, devfn); 605 cmd, bus, devfn);
604 result = PCI_ERS_RESULT_NONE; 606 result = PCI_ERS_RESULT_NONE;
605 607
606 pcidev = pci_get_bus_and_slot(bus, devfn); 608 pcidev = pci_get_domain_bus_and_slot(domain, bus, devfn);
607 if (!pcidev || !pcidev->driver) { 609 if (!pcidev || !pcidev->driver) {
608 dev_err(&pdev->xdev->dev, "device or AER driver is NULL\n"); 610 dev_err(&pdev->xdev->dev, "device or AER driver is NULL\n");
609 pci_dev_put(pcidev); 611 pci_dev_put(pcidev);
@@ -613,8 +615,7 @@ static pci_ers_result_t pcifront_common_process(int cmd,
613 615
614 if (pdrv) { 616 if (pdrv) {
615 if (pdrv->err_handler && pdrv->err_handler->error_detected) { 617 if (pdrv->err_handler && pdrv->err_handler->error_detected) {
616 dev_dbg(&pcidev->dev, 618 pci_dbg(pcidev, "trying to call AER service\n");
617 "trying to call AER service\n");
618 if (pcidev) { 619 if (pcidev) {
619 flag = 1; 620 flag = 1;
620 switch (cmd) { 621 switch (cmd) {