Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

PCI: PCIe portdrv: Rearrange code so that related things are together

Rearrange code in drivers/pci/pcie/portdrv_bus.c and
drivers/pci/pcie/portdrv_core.c so that related functions and data
structures are closer together.

Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl>
Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>

authored by

Rafael J. Wysocki and committed by
Jesse Barnes
fa6c9937 e7ae8848

+50 -50
+10
drivers/pci/pcie/portdrv_bus.c
··· 44 44 45 45 return 1; 46 46 } 47 + 48 + int pcie_port_bus_register(void) 49 + { 50 + return bus_register(&pcie_port_bus_type); 51 + } 52 + 53 + void pcie_port_bus_unregister(void) 54 + { 55 + bus_unregister(&pcie_port_bus_type); 56 + }
+40 -50
drivers/pci/pcie/portdrv_core.c
··· 19 19 20 20 extern int pcie_mch_quirk; /* MSI-quirk Indicator */ 21 21 22 - static int pcie_port_probe_service(struct device *dev) 23 - { 24 - struct pcie_device *pciedev; 25 - struct pcie_port_service_driver *driver; 26 - int status; 27 - 28 - if (!dev || !dev->driver) 29 - return -ENODEV; 30 - 31 - driver = to_service_driver(dev->driver); 32 - if (!driver || !driver->probe) 33 - return -ENODEV; 34 - 35 - pciedev = to_pcie_device(dev); 36 - status = driver->probe(pciedev, driver->id_table); 37 - if (!status) { 38 - dev_printk(KERN_DEBUG, dev, "service driver %s loaded\n", 39 - driver->name); 40 - get_device(dev); 41 - } 42 - return status; 43 - } 44 - 45 - static int pcie_port_remove_service(struct device *dev) 46 - { 47 - struct pcie_device *pciedev; 48 - struct pcie_port_service_driver *driver; 49 - 50 - if (!dev || !dev->driver) 51 - return 0; 52 - 53 - pciedev = to_pcie_device(dev); 54 - driver = to_service_driver(dev->driver); 55 - if (driver && driver->remove) { 56 - dev_printk(KERN_DEBUG, dev, "unloading service driver %s\n", 57 - driver->name); 58 - driver->remove(pciedev); 59 - put_device(dev); 60 - } 61 - return 0; 62 - } 63 - 64 - static void pcie_port_shutdown_service(struct device *dev) {} 65 - 66 22 /** 67 23 * release_pcie_device - free PCI Express port service device structure 68 24 * @dev: Port service device to release ··· 370 414 pci_disable_msi(dev); 371 415 } 372 416 373 - int pcie_port_bus_register(void) 417 + static int pcie_port_probe_service(struct device *dev) 374 418 { 375 - return bus_register(&pcie_port_bus_type); 419 + struct pcie_device *pciedev; 420 + struct pcie_port_service_driver *driver; 421 + int status; 422 + 423 + if (!dev || !dev->driver) 424 + return -ENODEV; 425 + 426 + driver = to_service_driver(dev->driver); 427 + if (!driver || !driver->probe) 428 + return -ENODEV; 429 + 430 + pciedev = to_pcie_device(dev); 431 + status = driver->probe(pciedev, driver->id_table); 432 + if (!status) { 433 + dev_printk(KERN_DEBUG, dev, "service driver %s loaded\n", 434 + driver->name); 435 + get_device(dev); 436 + } 437 + return status; 376 438 } 377 439 378 - void pcie_port_bus_unregister(void) 440 + static int pcie_port_remove_service(struct device *dev) 379 441 { 380 - bus_unregister(&pcie_port_bus_type); 442 + struct pcie_device *pciedev; 443 + struct pcie_port_service_driver *driver; 444 + 445 + if (!dev || !dev->driver) 446 + return 0; 447 + 448 + pciedev = to_pcie_device(dev); 449 + driver = to_service_driver(dev->driver); 450 + if (driver && driver->remove) { 451 + dev_printk(KERN_DEBUG, dev, "unloading service driver %s\n", 452 + driver->name); 453 + driver->remove(pciedev); 454 + put_device(dev); 455 + } 456 + return 0; 381 457 } 458 + 459 + static void pcie_port_shutdown_service(struct device *dev) {} 382 460 383 461 int pcie_port_service_register(struct pcie_port_service_driver *new) 384 462 { ··· 425 435 return driver_register(&new->driver); 426 436 } 427 437 428 - void pcie_port_service_unregister(struct pcie_port_service_driver *new) 438 + void pcie_port_service_unregister(struct pcie_port_service_driver *drv) 429 439 { 430 - driver_unregister(&new->driver); 440 + driver_unregister(&drv->driver); 431 441 } 432 442 433 443 EXPORT_SYMBOL(pcie_port_service_register);