mirror of https://gitee.com/openkylin/linux.git
ACPI / hotplug: Add .fixup() callback to struct acpi_hotplug_context
In order for the ACPI dock station code to be able to use the callbacks pointed to by the ACPI device objects' hotplug contexts add a .fixup() callback pointer to struct acpi_hotplug_context. That callback will be useful to handle PCI devices located in dock stations. Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
This commit is contained in:
parent
d7c7c0256b
commit
59b42fa01f
|
@ -80,7 +80,7 @@ static struct acpiphp_context *acpiphp_init_context(struct acpi_device *adev)
|
|||
return NULL;
|
||||
|
||||
context->refcount = 1;
|
||||
acpi_set_hp_context(adev, &context->hp, acpiphp_hotplug_event);
|
||||
acpi_set_hp_context(adev, &context->hp, acpiphp_hotplug_event, NULL);
|
||||
return context;
|
||||
}
|
||||
|
||||
|
|
|
@ -144,6 +144,7 @@ struct acpi_scan_handler {
|
|||
struct acpi_hotplug_context {
|
||||
struct acpi_device *self;
|
||||
int (*event)(struct acpi_device *, u32);
|
||||
void (*fixup)(struct acpi_device *);
|
||||
};
|
||||
|
||||
/*
|
||||
|
@ -366,10 +367,12 @@ static inline void acpi_set_device_status(struct acpi_device *adev, u32 sta)
|
|||
|
||||
static inline void acpi_set_hp_context(struct acpi_device *adev,
|
||||
struct acpi_hotplug_context *hp,
|
||||
int (*event)(struct acpi_device *, u32))
|
||||
int (*event)(struct acpi_device *, u32),
|
||||
void (*fixup)(struct acpi_device *))
|
||||
{
|
||||
hp->self = adev;
|
||||
hp->event = event;
|
||||
hp->fixup = fixup;
|
||||
adev->hp = hp;
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue