aboutsummaryrefslogtreecommitdiffstats
path: root/include/acpi
diff options
context:
space:
mode:
authorShaohua Li <shaohua.li@intel.com>2008-08-27 22:06:16 -0400
committerLen Brown <len.brown@intel.com>2008-09-23 23:23:00 -0400
commit1253f7aabfebc51446dbec5c8895c5c8846dfe06 (patch)
treedd365b884581931ab01473307d519d277cbffaa4 /include/acpi
parentf730ae1838635a02aa60834762c61566911d004c (diff)
dock: introduce .uevent for devices in dock, eg libata
dock's uevent reported itself, not ata. It might be difficult to find an ata device just according to a dock. This patch introduces docking ops for each device in a dock. when docking, dock driver can send device specific uevent. This should help dock station too (not just bay) Signed-off-by: Shaohua Li <shaohua.li@intel.com> Acked-by: Tejun Heo <htejun@gmail.com> Signed-off-by: Len Brown <len.brown@intel.com>
Diffstat (limited to 'include/acpi')
-rw-r--r--include/acpi/acpi_drivers.h9
1 files changed, 7 insertions, 2 deletions
diff --git a/include/acpi/acpi_drivers.h b/include/acpi/acpi_drivers.h
index e5f38e5ce86f..4f5042a0ef80 100644
--- a/include/acpi/acpi_drivers.h
+++ b/include/acpi/acpi_drivers.h
@@ -115,12 +115,17 @@ int acpi_processor_set_thermal_limit(acpi_handle handle, int type);
115/*-------------------------------------------------------------------------- 115/*--------------------------------------------------------------------------
116 Dock Station 116 Dock Station
117 -------------------------------------------------------------------------- */ 117 -------------------------------------------------------------------------- */
118struct acpi_dock_ops {
119 acpi_notify_handler handler;
120 acpi_notify_handler uevent;
121};
122
118#if defined(CONFIG_ACPI_DOCK) || defined(CONFIG_ACPI_DOCK_MODULE) 123#if defined(CONFIG_ACPI_DOCK) || defined(CONFIG_ACPI_DOCK_MODULE)
119extern int is_dock_device(acpi_handle handle); 124extern int is_dock_device(acpi_handle handle);
120extern int register_dock_notifier(struct notifier_block *nb); 125extern int register_dock_notifier(struct notifier_block *nb);
121extern void unregister_dock_notifier(struct notifier_block *nb); 126extern void unregister_dock_notifier(struct notifier_block *nb);
122extern int register_hotplug_dock_device(acpi_handle handle, 127extern int register_hotplug_dock_device(acpi_handle handle,
123 acpi_notify_handler handler, 128 struct acpi_dock_ops *ops,
124 void *context); 129 void *context);
125extern void unregister_hotplug_dock_device(acpi_handle handle); 130extern void unregister_hotplug_dock_device(acpi_handle handle);
126#else 131#else
@@ -136,7 +141,7 @@ static inline void unregister_dock_notifier(struct notifier_block *nb)
136{ 141{
137} 142}
138static inline int register_hotplug_dock_device(acpi_handle handle, 143static inline int register_hotplug_dock_device(acpi_handle handle,
139 acpi_notify_handler handler, 144 struct acpi_dock_ops *ops,
140 void *context) 145 void *context)
141{ 146{
142 return -ENODEV; 147 return -ENODEV;