aboutsummaryrefslogtreecommitdiffstats
path: root/include/acpi
diff options
context:
space:
mode:
authorPatrick Mochel <mochel@linux.intel.com>2006-12-07 07:56:27 -0500
committerLen Brown <len.brown@intel.com>2006-12-15 23:38:34 -0500
commit5d9464a46918ced087c351a10f38cee95725f85b (patch)
treeacb45582f9c43a867a60cc5fa8ae2c6197dc1d2d /include/acpi
parentd43ec68e9837dfa6618ab473622683fdbf6e68a9 (diff)
ACPI: add ACPI bus_type for driver model
Add ACPI bus_type for Linux driver model. 1. .shutdown method is added into acpi_driver.ops needed by bus_type operations. 2. remove useless parameter 'int state' in .resume method. 3. change parameter 'int state' to 'pm_message_t state' in .suspend method. Note: The new .uevent method mark ACPI drivers by PNPID instead of by name. Udev script needs to look for "HWID=" or "COMPTID=" to load ACPI drivers as a result. Signed-off-by: Li Shaohua <shaohua.li@intel.com> Signed-off-by: Zhang Rui <rui.zhang@intel.com> Signed-off-by: Len Brown <len.brown@intel.com>
Diffstat (limited to 'include/acpi')
-rw-r--r--include/acpi/acpi_bus.h9
1 files changed, 6 insertions, 3 deletions
diff --git a/include/acpi/acpi_bus.h b/include/acpi/acpi_bus.h
index a09538eb61e..d7dd5261545 100644
--- a/include/acpi/acpi_bus.h
+++ b/include/acpi/acpi_bus.h
@@ -92,13 +92,14 @@ typedef int (*acpi_op_remove) (struct acpi_device * device, int type);
92typedef int (*acpi_op_lock) (struct acpi_device * device, int type); 92typedef int (*acpi_op_lock) (struct acpi_device * device, int type);
93typedef int (*acpi_op_start) (struct acpi_device * device); 93typedef int (*acpi_op_start) (struct acpi_device * device);
94typedef int (*acpi_op_stop) (struct acpi_device * device, int type); 94typedef int (*acpi_op_stop) (struct acpi_device * device, int type);
95typedef int (*acpi_op_suspend) (struct acpi_device * device, int state); 95typedef int (*acpi_op_suspend) (struct acpi_device * device, pm_message_t state);
96typedef int (*acpi_op_resume) (struct acpi_device * device, int state); 96typedef int (*acpi_op_resume) (struct acpi_device * device);
97typedef int (*acpi_op_scan) (struct acpi_device * device); 97typedef int (*acpi_op_scan) (struct acpi_device * device);
98typedef int (*acpi_op_bind) (struct acpi_device * device); 98typedef int (*acpi_op_bind) (struct acpi_device * device);
99typedef int (*acpi_op_unbind) (struct acpi_device * device); 99typedef int (*acpi_op_unbind) (struct acpi_device * device);
100typedef int (*acpi_op_match) (struct acpi_device * device, 100typedef int (*acpi_op_match) (struct acpi_device * device,
101 struct acpi_driver * driver); 101 struct acpi_driver * driver);
102typedef int (*acpi_op_shutdown) (struct acpi_device * device);
102 103
103struct acpi_bus_ops { 104struct acpi_bus_ops {
104 u32 acpi_op_add:1; 105 u32 acpi_op_add:1;
@@ -112,7 +113,8 @@ struct acpi_bus_ops {
112 u32 acpi_op_bind:1; 113 u32 acpi_op_bind:1;
113 u32 acpi_op_unbind:1; 114 u32 acpi_op_unbind:1;
114 u32 acpi_op_match:1; 115 u32 acpi_op_match:1;
115 u32 reserved:21; 116 u32 acpi_op_shutdown:1;
117 u32 reserved:20;
116}; 118};
117 119
118struct acpi_device_ops { 120struct acpi_device_ops {
@@ -127,6 +129,7 @@ struct acpi_device_ops {
127 acpi_op_bind bind; 129 acpi_op_bind bind;
128 acpi_op_unbind unbind; 130 acpi_op_unbind unbind;
129 acpi_op_match match; 131 acpi_op_match match;
132 acpi_op_shutdown shutdown;
130}; 133};
131 134
132struct acpi_driver { 135struct acpi_driver {