diff options
Diffstat (limited to 'drivers/pci')
-rw-r--r-- | drivers/pci/pcie/portdrv.h | 2 | ||||
-rw-r--r-- | drivers/pci/pcie/portdrv_core.c | 5 | ||||
-rw-r--r-- | drivers/pci/pcie/portdrv_pci.c | 9 |
3 files changed, 11 insertions, 5 deletions
diff --git a/drivers/pci/pcie/portdrv.h b/drivers/pci/pcie/portdrv.h index 1d317d22ee89..67fcd176babd 100644 --- a/drivers/pci/pcie/portdrv.h +++ b/drivers/pci/pcie/portdrv.h | |||
@@ -39,7 +39,7 @@ extern int pcie_port_device_suspend(struct pci_dev *dev, pm_message_t state); | |||
39 | extern int pcie_port_device_resume(struct pci_dev *dev); | 39 | extern int pcie_port_device_resume(struct pci_dev *dev); |
40 | #endif | 40 | #endif |
41 | extern void pcie_port_device_remove(struct pci_dev *dev); | 41 | extern void pcie_port_device_remove(struct pci_dev *dev); |
42 | extern void pcie_port_bus_register(void); | 42 | extern int pcie_port_bus_register(void); |
43 | extern void pcie_port_bus_unregister(void); | 43 | extern void pcie_port_bus_unregister(void); |
44 | 44 | ||
45 | #endif /* _PORTDRV_H_ */ | 45 | #endif /* _PORTDRV_H_ */ |
diff --git a/drivers/pci/pcie/portdrv_core.c b/drivers/pci/pcie/portdrv_core.c index 55c662267868..cf9e810b4bf8 100644 --- a/drivers/pci/pcie/portdrv_core.c +++ b/drivers/pci/pcie/portdrv_core.c | |||
@@ -6,6 +6,7 @@ | |||
6 | * Copyright (C) Tom Long Nguyen (tom.l.nguyen@intel.com) | 6 | * Copyright (C) Tom Long Nguyen (tom.l.nguyen@intel.com) |
7 | */ | 7 | */ |
8 | 8 | ||
9 | #include <linux/compiler.h> | ||
9 | #include <linux/module.h> | 10 | #include <linux/module.h> |
10 | #include <linux/pci.h> | 11 | #include <linux/pci.h> |
11 | #include <linux/kernel.h> | 12 | #include <linux/kernel.h> |
@@ -402,9 +403,9 @@ void pcie_port_device_remove(struct pci_dev *dev) | |||
402 | pci_disable_msi(dev); | 403 | pci_disable_msi(dev); |
403 | } | 404 | } |
404 | 405 | ||
405 | void pcie_port_bus_register(void) | 406 | int __must_check pcie_port_bus_register(void) |
406 | { | 407 | { |
407 | bus_register(&pcie_port_bus_type); | 408 | return bus_register(&pcie_port_bus_type); |
408 | } | 409 | } |
409 | 410 | ||
410 | void pcie_port_bus_unregister(void) | 411 | void pcie_port_bus_unregister(void) |
diff --git a/drivers/pci/pcie/portdrv_pci.c b/drivers/pci/pcie/portdrv_pci.c index 478d0d28f7ad..3284199ce396 100644 --- a/drivers/pci/pcie/portdrv_pci.c +++ b/drivers/pci/pcie/portdrv_pci.c | |||
@@ -129,12 +129,17 @@ static struct pci_driver pcie_portdrv = { | |||
129 | 129 | ||
130 | static int __init pcie_portdrv_init(void) | 130 | static int __init pcie_portdrv_init(void) |
131 | { | 131 | { |
132 | int retval = 0; | 132 | int retval; |
133 | 133 | ||
134 | pcie_port_bus_register(); | 134 | retval = pcie_port_bus_register(); |
135 | if (retval) { | ||
136 | printk(KERN_WARNING "PCIE: bus_register error: %d\n", retval); | ||
137 | goto out; | ||
138 | } | ||
135 | retval = pci_register_driver(&pcie_portdrv); | 139 | retval = pci_register_driver(&pcie_portdrv); |
136 | if (retval) | 140 | if (retval) |
137 | pcie_port_bus_unregister(); | 141 | pcie_port_bus_unregister(); |
142 | out: | ||
138 | return retval; | 143 | return retval; |
139 | } | 144 | } |
140 | 145 | ||