Commit 8800c0eb authored by Len Brown's avatar Len Brown

Pull remove-hotkey into release branch

parents 9cdd79c9 5ee6edbc
driver/acpi/hotkey.c implement:
1. /proc/acpi/hotkey/event_config
(event based hotkey or event config interface):
a. add a event based hotkey(event) :
echo "0:bus::action:method:num:num" > event_config
b. delete a event based hotkey(event):
echo "1:::::num:num" > event_config
c. modify a event based hotkey(event):
echo "2:bus::action:method:num:num" > event_config
2. /proc/acpi/hotkey/poll_config
(polling based hotkey or event config interface):
a.add a polling based hotkey(event) :
echo "0:bus:method:action:method:num" > poll_config
this adding command will create a proc file
/proc/acpi/hotkey/method, which is used to get
result of polling.
b.delete a polling based hotkey(event):
echo "1:::::num" > event_config
c.modify a polling based hotkey(event):
echo "2:bus:method:action:method:num" > poll_config
3./proc/acpi/hotkey/action
(interface to call aml method associated with a
specific hotkey(event))
echo "event_num:event_type:event_argument" >
/proc/acpi/hotkey/action.
The result of the execution of this aml method is
attached to /proc/acpi/hotkey/poll_method, which is dynamically
created. Please use command "cat /proc/acpi/hotkey/polling_method"
to retrieve it.
Note: Use cmdline "acpi_generic_hotkey" to over-ride
platform-specific with generic driver.
...@@ -253,29 +253,6 @@ Who: Venkatesh Pallipadi <venkatesh.pallipadi@intel.com> ...@@ -253,29 +253,6 @@ Who: Venkatesh Pallipadi <venkatesh.pallipadi@intel.com>
--------------------------- ---------------------------
<<<<<<< test:Documentation/feature-removal-schedule.txt
What: ACPI hotkey driver (CONFIG_ACPI_HOTKEY)
When: 2.6.21
Why: hotkey.c was an attempt to consolidate multiple drivers that use
ACPI to implement hotkeys. However, hotkeys are not documented
in the ACPI specification, so the drivers used undocumented
vendor-specific hooks and turned out to be more different than
the same.
Further, the keys and the features supplied by each platform
are different, so there will always be a need for
platform-specific drivers.
So the new plan is to delete hotkey.c and instead, work on the
platform specific drivers to try to make them look the same
to the user when they supply the same features.
hotkey.c has always depended on CONFIG_EXPERIMENTAL
Who: Len Brown <len.brown@intel.com>
---------------------------
What: /sys/firmware/acpi/namespace What: /sys/firmware/acpi/namespace
When: 2.6.21 When: 2.6.21
Why: The ACPI namespace is effectively the symbol list for Why: The ACPI namespace is effectively the symbol list for
......
...@@ -133,15 +133,6 @@ config ACPI_VIDEO ...@@ -133,15 +133,6 @@ config ACPI_VIDEO
Note that this is an ref. implementation only. It may or may not work Note that this is an ref. implementation only. It may or may not work
for your integrated video device. for your integrated video device.
config ACPI_HOTKEY
tristate "Generic Hotkey (EXPERIMENTAL)"
depends on EXPERIMENTAL
depends on X86
default n
help
Experimental consolidated hotkey driver.
If you are unsure, say N.
config ACPI_FAN config ACPI_FAN
tristate "Fan" tristate "Fan"
default y default y
......
...@@ -46,7 +46,6 @@ obj-$(CONFIG_ACPI_FAN) += fan.o ...@@ -46,7 +46,6 @@ obj-$(CONFIG_ACPI_FAN) += fan.o
obj-$(CONFIG_ACPI_DOCK) += dock.o obj-$(CONFIG_ACPI_DOCK) += dock.o
obj-$(CONFIG_ACPI_BAY) += bay.o obj-$(CONFIG_ACPI_BAY) += bay.o
obj-$(CONFIG_ACPI_VIDEO) += video.o obj-$(CONFIG_ACPI_VIDEO) += video.o
obj-$(CONFIG_ACPI_HOTKEY) += hotkey.o
obj-y += pci_root.o pci_link.o pci_irq.o pci_bind.o obj-y += pci_root.o pci_link.o pci_irq.o pci_bind.o
obj-$(CONFIG_ACPI_POWER) += power.o obj-$(CONFIG_ACPI_POWER) += power.o
obj-$(CONFIG_ACPI_PROCESSOR) += processor.o obj-$(CONFIG_ACPI_PROCESSOR) += processor.o
......
...@@ -1377,10 +1377,6 @@ static int __init asus_acpi_init(void) ...@@ -1377,10 +1377,6 @@ static int __init asus_acpi_init(void)
if (acpi_disabled) if (acpi_disabled)
return -ENODEV; return -ENODEV;
if (!acpi_specific_hotkey_enabled) {
printk(KERN_ERR "Using generic hotkey driver\n");
return -ENODEV;
}
asus_proc_dir = proc_mkdir(PROC_ASUS, acpi_root_dir); asus_proc_dir = proc_mkdir(PROC_ASUS, acpi_root_dir);
if (!asus_proc_dir) { if (!asus_proc_dir) {
printk(KERN_ERR "Asus ACPI: Unable to create /proc entry\n"); printk(KERN_ERR "Asus ACPI: Unable to create /proc entry\n");
......
This diff is collapsed.
...@@ -2701,11 +2701,6 @@ static int __init acpi_ibm_init(void) ...@@ -2701,11 +2701,6 @@ static int __init acpi_ibm_init(void)
if (acpi_disabled) if (acpi_disabled)
return -ENODEV; return -ENODEV;
if (!acpi_specific_hotkey_enabled) {
printk(IBM_ERR "using generic hotkey driver\n");
return -ENODEV;
}
/* ec is required because many other handles are relative to it */ /* ec is required because many other handles are relative to it */
IBM_HANDLE_INIT(ec); IBM_HANDLE_INIT(ec);
if (!ec_handle) { if (!ec_handle) {
......
...@@ -68,9 +68,6 @@ EXPORT_SYMBOL(acpi_in_debugger); ...@@ -68,9 +68,6 @@ EXPORT_SYMBOL(acpi_in_debugger);
extern char line_buf[80]; extern char line_buf[80];
#endif /*ENABLE_DEBUGGER */ #endif /*ENABLE_DEBUGGER */
int acpi_specific_hotkey_enabled = TRUE;
EXPORT_SYMBOL(acpi_specific_hotkey_enabled);
static unsigned int acpi_irq_irq; static unsigned int acpi_irq_irq;
static acpi_osd_handler acpi_irq_handler; static acpi_osd_handler acpi_irq_handler;
static void *acpi_irq_context; static void *acpi_irq_context;
...@@ -992,14 +989,6 @@ static int __init acpi_wake_gpes_always_on_setup(char *str) ...@@ -992,14 +989,6 @@ static int __init acpi_wake_gpes_always_on_setup(char *str)
__setup("acpi_wake_gpes_always_on", acpi_wake_gpes_always_on_setup); __setup("acpi_wake_gpes_always_on", acpi_wake_gpes_always_on_setup);
static int __init acpi_hotkey_setup(char *str)
{
acpi_specific_hotkey_enabled = FALSE;
return 1;
}
__setup("acpi_generic_hotkey", acpi_hotkey_setup);
/* /*
* max_cstate is defined in the base kernel so modules can * max_cstate is defined in the base kernel so modules can
* change it w/o depending on the state of the processor module. * change it w/o depending on the state of the processor module.
......
...@@ -561,10 +561,6 @@ static int __init toshiba_acpi_init(void) ...@@ -561,10 +561,6 @@ static int __init toshiba_acpi_init(void)
if (acpi_disabled) if (acpi_disabled)
return -ENODEV; return -ENODEV;
if (!acpi_specific_hotkey_enabled) {
printk(MY_INFO "Using generic hotkey driver\n");
return -ENODEV;
}
/* simple device detection: look for HCI method */ /* simple device detection: look for HCI method */
if (is_valid_acpi_path(METHOD_HCI_1)) if (is_valid_acpi_path(METHOD_HCI_1))
method_hci = METHOD_HCI_1; method_hci = METHOD_HCI_1;
......
...@@ -1088,11 +1088,6 @@ static int __init asus_laptop_init(void) ...@@ -1088,11 +1088,6 @@ static int __init asus_laptop_init(void)
if (acpi_disabled) if (acpi_disabled)
return -ENODEV; return -ENODEV;
if (!acpi_specific_hotkey_enabled) {
printk(ASUS_ERR "Using generic hotkey driver\n");
return -ENODEV;
}
result = acpi_bus_register_driver(&asus_hotk_driver); result = acpi_bus_register_driver(&asus_hotk_driver);
if (result < 0) if (result < 0)
return result; return result;
......
...@@ -105,12 +105,6 @@ int acpi_ec_ecdt_probe(void); ...@@ -105,12 +105,6 @@ int acpi_ec_ecdt_probe(void);
int acpi_processor_set_thermal_limit(acpi_handle handle, int type); int acpi_processor_set_thermal_limit(acpi_handle handle, int type);
/* --------------------------------------------------------------------------
Hot Keys
-------------------------------------------------------------------------- */
extern int acpi_specific_hotkey_enabled;
/*-------------------------------------------------------------------------- /*--------------------------------------------------------------------------
Dock Station Dock Station
-------------------------------------------------------------------------- */ -------------------------------------------------------------------------- */
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment