PCI Hotplug core: add 'name' param pci_hp_register interface
[platform/adaptation/renesas_rcar/renesas_kernel.git] / drivers / pci / hotplug / pci_hotplug_core.c
index 2e6c447..02b1ae1 100644 (file)
@@ -547,13 +547,15 @@ out:
  * @bus: bus this slot is on
  * @slot: pointer to the &struct hotplug_slot to register
  * @slot_nr: slot number
+ * @name: name registered with kobject core
  *
  * Registers a hotplug slot with the pci hotplug subsystem, which will allow
  * userspace interaction to the slot.
  *
  * Returns 0 if successful, anything else for an error.
  */
-int pci_hp_register(struct hotplug_slot *slot, struct pci_bus *bus, int slot_nr)
+int pci_hp_register(struct hotplug_slot *slot, struct pci_bus *bus, int slot_nr,
+                       const char *name)
 {
        int result;
        struct pci_slot *pci_slot;
@@ -569,7 +571,7 @@ int pci_hp_register(struct hotplug_slot *slot, struct pci_bus *bus, int slot_nr)
        }
 
        /* Check if we have already registered a slot with the same name. */
-       if (get_slot_from_name(slot->name))
+       if (get_slot_from_name(name))
                return -EEXIST;
 
        /*
@@ -577,7 +579,7 @@ int pci_hp_register(struct hotplug_slot *slot, struct pci_bus *bus, int slot_nr)
         * driver and call it here again. If we've already created the
         * pci_slot, the interface will simply bump the refcount.
         */
-       pci_slot = pci_create_slot(bus, slot_nr, slot->name);
+       pci_slot = pci_create_slot(bus, slot_nr, name);
        if (IS_ERR(pci_slot))
                return PTR_ERR(pci_slot);
 
@@ -593,8 +595,8 @@ int pci_hp_register(struct hotplug_slot *slot, struct pci_bus *bus, int slot_nr)
        /*
         * Allow pcihp drivers to override the ACPI_PCI_SLOT name.
         */
-       if (strcmp(kobject_name(&pci_slot->kobj), slot->name)) {
-               result = kobject_rename(&pci_slot->kobj, slot->name);
+       if (strcmp(kobject_name(&pci_slot->kobj), name)) {
+               result = kobject_rename(&pci_slot->kobj, name);
                if (result) {
                        pci_destroy_slot(pci_slot);
                        return result;
@@ -607,8 +609,7 @@ int pci_hp_register(struct hotplug_slot *slot, struct pci_bus *bus, int slot_nr)
 
        result = fs_add_slot(pci_slot);
        kobject_uevent(&pci_slot->kobj, KOBJ_ADD);
-       dbg("Added slot %s to the list\n", slot->name);
-
+       dbg("Added slot %s to the list\n", name);
 
        return result;
 }