Commit 725522b5453dd680412f2b6463a988e4fd148757

Authored by Greg Kroah-Hartman
1 parent fe480a2675

PCI: add the sysfs driver name to all modules

This adds the module name to all PCI drivers, if they are built into the
kernel or not.  It will show up in /sys/modules/MODULE_NAME/drivers/

It also fixes up the IDE core, which was calling __pci_register_driver()
directly.

Cc: Kay Sievers <kay.sievers@suse.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>

Showing 4 changed files with 12 additions and 8 deletions Side-by-side Diff

drivers/ide/setup-pci.c
... ... @@ -783,10 +783,11 @@
783 783 * Returns are the same as for pci_register_driver
784 784 */
785 785  
786   -int __ide_pci_register_driver(struct pci_driver *driver, struct module *module)
  786 +int __ide_pci_register_driver(struct pci_driver *driver, struct module *module,
  787 + const char *mod_name)
787 788 {
788 789 if(!pre_init)
789   - return __pci_register_driver(driver, module);
  790 + return __pci_register_driver(driver, module, mod_name);
790 791 driver->driver.owner = module;
791 792 list_add_tail(&driver->node, &ide_pci_drivers);
792 793 return 0;
... ... @@ -862,7 +863,7 @@
862 863 {
863 864 list_del(l);
864 865 d = list_entry(l, struct pci_driver, node);
865   - __pci_register_driver(d, d->driver.owner);
  866 + __pci_register_driver(d, d->driver.owner, d->driver.mod_name);
866 867 }
867 868 }
drivers/pci/pci-driver.c
... ... @@ -422,7 +422,8 @@
422 422 * If no error occurred, the driver remains registered even if
423 423 * no device was claimed during registration.
424 424 */
425   -int __pci_register_driver(struct pci_driver *drv, struct module *owner)
  425 +int __pci_register_driver(struct pci_driver *drv, struct module *owner,
  426 + const char *mod_name)
426 427 {
427 428 int error;
428 429  
... ... @@ -430,6 +431,7 @@
430 431 drv->driver.name = drv->name;
431 432 drv->driver.bus = &pci_bus_type;
432 433 drv->driver.owner = owner;
  434 + drv->driver.mod_name = mod_name;
433 435 drv->driver.kobj.ktype = &pci_driver_kobj_type;
434 436  
435 437 if (pci_multithread_probe)
... ... @@ -1192,8 +1192,8 @@
1192 1192 extern int ideprobe_init(void);
1193 1193  
1194 1194 extern void ide_scan_pcibus(int scan_direction) __init;
1195   -extern int __ide_pci_register_driver(struct pci_driver *driver, struct module *owner);
1196   -#define ide_pci_register_driver(d) __ide_pci_register_driver(d, THIS_MODULE)
  1195 +extern int __ide_pci_register_driver(struct pci_driver *driver, struct module *owner, const char *mod_name);
  1196 +#define ide_pci_register_driver(d) __ide_pci_register_driver(d, THIS_MODULE, KBUILD_MODNAME)
1197 1197 void ide_pci_setup_ports(struct pci_dev *, struct ide_pci_device_s *, int, ata_index_t *);
1198 1198 extern void ide_setup_pci_noise (struct pci_dev *dev, struct ide_pci_device_s *d);
1199 1199  
... ... @@ -573,10 +573,11 @@
573 573 void pci_enable_bridges(struct pci_bus *bus);
574 574  
575 575 /* Proper probing supporting hot-pluggable devices */
576   -int __must_check __pci_register_driver(struct pci_driver *, struct module *);
  576 +int __must_check __pci_register_driver(struct pci_driver *, struct module *,
  577 + const char *mod_name);
577 578 static inline int __must_check pci_register_driver(struct pci_driver *driver)
578 579 {
579   - return __pci_register_driver(driver, THIS_MODULE);
  580 + return __pci_register_driver(driver, THIS_MODULE, KBUILD_MODNAME);
580 581 }
581 582  
582 583 void pci_unregister_driver(struct pci_driver *);