]> Pileus Git - ~andy/linux/blobdiff - include/acpi/acpi_bus.h
Merge tag 'ktest-v3.6' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux...
[~andy/linux] / include / acpi / acpi_bus.h
index 18fd41033e03a97be6f3e070082d1aca5323330f..bde976ee068d380a807a2d08ee609b51f33abde8 100644 (file)
@@ -50,6 +50,9 @@ acpi_evaluate_reference(acpi_handle handle,
                        acpi_string pathname,
                        struct acpi_object_list *arguments,
                        struct acpi_handle_list *list);
+acpi_status
+acpi_evaluate_hotplug_ost(acpi_handle handle, u32 source_event,
+                       u32 status_code, struct acpi_buffer *status_buf);
 
 struct acpi_pld {
        unsigned int revision:7; /* 0 */
@@ -174,7 +177,8 @@ struct acpi_device_flags {
        u32 suprise_removal_ok:1;
        u32 power_manageable:1;
        u32 performance_manageable:1;
-       u32 reserved:24;
+       u32 eject_pending:1;
+       u32 reserved:23;
 };
 
 /* File System */
@@ -326,6 +330,11 @@ struct acpi_bus_event {
        u32 data;
 };
 
+struct acpi_eject_event {
+       acpi_handle     handle;
+       u32             event;
+};
+
 extern struct kobject *acpi_kobj;
 extern int acpi_bus_generate_netlink_event(const char*, const char*, u8, int);
 void acpi_bus_private_data_handler(acpi_handle, void *);
@@ -363,6 +372,7 @@ int acpi_bus_register_driver(struct acpi_driver *driver);
 void acpi_bus_unregister_driver(struct acpi_driver *driver);
 int acpi_bus_add(struct acpi_device **child, struct acpi_device *parent,
                 acpi_handle handle, int type);
+void acpi_bus_hot_remove_device(void *context);
 int acpi_bus_trim(struct acpi_device *start, int rmdevice);
 int acpi_bus_start(struct acpi_device *device);
 acpi_status acpi_bus_get_ejd(acpi_handle handle, acpi_handle * ejd);
@@ -396,6 +406,7 @@ struct acpi_pci_root {
 
        u32 osc_support_set;    /* _OSC state of support bits */
        u32 osc_control_set;    /* _OSC state of control bits */
+       phys_addr_t mcfg_addr;
 };
 
 /* helper */
@@ -409,13 +420,13 @@ int acpi_enable_wakeup_device_power(struct acpi_device *dev, int state);
 int acpi_disable_wakeup_device_power(struct acpi_device *dev);
 
 #ifdef CONFIG_PM
-int acpi_pm_device_sleep_state(struct device *, int *);
+int acpi_pm_device_sleep_state(struct device *, int *, int);
 #else
-static inline int acpi_pm_device_sleep_state(struct device *d, int *p)
+static inline int acpi_pm_device_sleep_state(struct device *d, int *p, int m)
 {
        if (p)
                *p = ACPI_STATE_D0;
-       return ACPI_STATE_D3;
+       return (m >= ACPI_STATE_D0 && m <= ACPI_STATE_D3) ? m : ACPI_STATE_D0;
 }
 #endif