diff options
author | Laurent riffard <laurent.riffard@free.fr> | 2005-10-27 17:12:54 -0400 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@suse.de> | 2005-11-10 19:09:16 -0500 |
commit | 863b18f4b5e7d9e6903b353328cf6fa084dbb619 (patch) | |
tree | e181466c3e7e676fa08e4bce2052ada38d98228d /include/linux/ide.h | |
parent | f8eb1005a5bdb019d2a4ff3ef8d8e8015b22afcb (diff) |
[PATCH] PCI: automatically set device_driver.owner
A nice feature of sysfs is that it can create the symlink from the
driver to the module that is contained in it.
It requires that the device_driver.owner is set, what is not the
case for many PCI drivers.
This patch allows pci_register_driver to set automatically the
device_driver.owner for any PCI driver.
Credits to Al Viro who suggested the method.
Signed-off-by: Laurent Riffard <laurent.riffard@free.fr>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
--
drivers/ide/setup-pci.c | 12 +++++++-----
drivers/pci/pci-driver.c | 9 +++++----
include/linux/ide.h | 3 ++-
include/linux/pci.h | 10 ++++++++--
4 files changed, 22 insertions(+), 12 deletions(-)
Diffstat (limited to 'include/linux/ide.h')
-rw-r--r-- | include/linux/ide.h | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/include/linux/ide.h b/include/linux/ide.h index 77ae55d4c13c..ac8b25fa6506 100644 --- a/include/linux/ide.h +++ b/include/linux/ide.h | |||
@@ -1329,7 +1329,8 @@ void ide_init_disk(struct gendisk *, ide_drive_t *); | |||
1329 | extern int ideprobe_init(void); | 1329 | extern int ideprobe_init(void); |
1330 | 1330 | ||
1331 | extern void ide_scan_pcibus(int scan_direction) __init; | 1331 | extern void ide_scan_pcibus(int scan_direction) __init; |
1332 | extern int ide_pci_register_driver(struct pci_driver *driver); | 1332 | extern int __ide_pci_register_driver(struct pci_driver *driver, struct module *owner); |
1333 | #define ide_pci_register_driver(d) __ide_pci_register_driver(d, THIS_MODULE) | ||
1333 | extern void ide_pci_unregister_driver(struct pci_driver *driver); | 1334 | extern void ide_pci_unregister_driver(struct pci_driver *driver); |
1334 | void ide_pci_setup_ports(struct pci_dev *, struct ide_pci_device_s *, int, ata_index_t *); | 1335 | void ide_pci_setup_ports(struct pci_dev *, struct ide_pci_device_s *, int, ata_index_t *); |
1335 | extern void ide_setup_pci_noise (struct pci_dev *dev, struct ide_pci_device_s *d); | 1336 | extern void ide_setup_pci_noise (struct pci_dev *dev, struct ide_pci_device_s *d); |