aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/pci/pci-driver.c
diff options
context:
space:
mode:
authorBill Pemberton <wfp5p@virginia.edu>2012-11-21 15:34:58 -0500
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2012-11-28 16:00:58 -0500
commit8ccc9aa17a0ccfabf3b2eb31243c3204f81166f6 (patch)
tree065092ec1dbac6c0b717ea8291db2b90a4c5b53d /drivers/pci/pci-driver.c
parentb40b97ae736cad3084b13d2969b10c474572de89 (diff)
PCI: Move pci_uevent into pci-driver.c
With the demise of CONFIG_HOTPLUG as an option, the pci_uevent function located in hotplug.c will now always be used and doesn't need special treatment in the Makefile. Move pci_uevent into pci-driver.c and remove hotplug.c Signed-off-by: Bill Pemberton <wfp5p@virginia.edu> Acked-by: Bjorn Helgaas <bhelgaas@google.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/pci/pci-driver.c')
-rw-r--r--drivers/pci/pci-driver.c33
1 files changed, 33 insertions, 0 deletions
diff --git a/drivers/pci/pci-driver.c b/drivers/pci/pci-driver.c
index 8919801cb27e..1dc78c5cabf8 100644
--- a/drivers/pci/pci-driver.c
+++ b/drivers/pci/pci-driver.c
@@ -1215,6 +1215,39 @@ void pci_dev_put(struct pci_dev *dev)
1215 put_device(&dev->dev); 1215 put_device(&dev->dev);
1216} 1216}
1217 1217
1218static int pci_uevent(struct device *dev, struct kobj_uevent_env *env)
1219{
1220 struct pci_dev *pdev;
1221
1222 if (!dev)
1223 return -ENODEV;
1224
1225 pdev = to_pci_dev(dev);
1226 if (!pdev)
1227 return -ENODEV;
1228
1229 if (add_uevent_var(env, "PCI_CLASS=%04X", pdev->class))
1230 return -ENOMEM;
1231
1232 if (add_uevent_var(env, "PCI_ID=%04X:%04X", pdev->vendor, pdev->device))
1233 return -ENOMEM;
1234
1235 if (add_uevent_var(env, "PCI_SUBSYS_ID=%04X:%04X", pdev->subsystem_vendor,
1236 pdev->subsystem_device))
1237 return -ENOMEM;
1238
1239 if (add_uevent_var(env, "PCI_SLOT_NAME=%s", pci_name(pdev)))
1240 return -ENOMEM;
1241
1242 if (add_uevent_var(env, "MODALIAS=pci:v%08Xd%08Xsv%08Xsd%08Xbc%02Xsc%02Xi%02x",
1243 pdev->vendor, pdev->device,
1244 pdev->subsystem_vendor, pdev->subsystem_device,
1245 (u8)(pdev->class >> 16), (u8)(pdev->class >> 8),
1246 (u8)(pdev->class)))
1247 return -ENOMEM;
1248 return 0;
1249}
1250
1218struct bus_type pci_bus_type = { 1251struct bus_type pci_bus_type = {
1219 .name = "pci", 1252 .name = "pci",
1220 .match = pci_bus_match, 1253 .match = pci_bus_match,