diff options
Diffstat (limited to 'drivers/platform/x86/acer-wmi.c')
| -rw-r--r-- | drivers/platform/x86/acer-wmi.c | 15 | 
1 files changed, 11 insertions, 4 deletions
diff --git a/drivers/platform/x86/acer-wmi.c b/drivers/platform/x86/acer-wmi.c index 79fa5ab3fd00..1be71f956d5c 100644 --- a/drivers/platform/x86/acer-wmi.c +++ b/drivers/platform/x86/acer-wmi.c @@ -149,6 +149,8 @@ struct event_return_value {  #define ACER_WMID3_GDS_THREEG		(1<<6)	/* 3G */  #define ACER_WMID3_GDS_WIMAX		(1<<7)	/* WiMAX */  #define ACER_WMID3_GDS_BLUETOOTH	(1<<11)	/* BT */ +#define ACER_WMID3_GDS_RFBTN		(1<<14)	/* RF Button */ +  #define ACER_WMID3_GDS_TOUCHPAD		(1<<1)	/* Touchpad */  /* Hotkey Customized Setting and Acer Application Status. @@ -221,6 +223,7 @@ struct hotkey_function_type_aa {  #define ACER_CAP_BRIGHTNESS		(1<<3)  #define ACER_CAP_THREEG			(1<<4)  #define ACER_CAP_ACCEL			(1<<5) +#define ACER_CAP_RFBTN			(1<<6)  #define ACER_CAP_ANY			(0xFFFFFFFF)  /* @@ -700,7 +703,7 @@ struct acpi_buffer *result)  	input.length = sizeof(struct wmab_args);  	input.pointer = (u8 *)regbuf; -	status = wmi_evaluate_method(AMW0_GUID1, 1, 1, &input, result); +	status = wmi_evaluate_method(AMW0_GUID1, 0, 1, &input, result);  	return status;  } @@ -965,7 +968,7 @@ WMI_execute_u32(u32 method_id, u32 in, u32 *out)  	u32 tmp = 0;  	acpi_status status; -	status = wmi_evaluate_method(WMID_GUID1, 1, method_id, &input, &result); +	status = wmi_evaluate_method(WMID_GUID1, 0, method_id, &input, &result);  	if (ACPI_FAILURE(status))  		return status; @@ -1264,6 +1267,10 @@ static void __init type_aa_dmi_decode(const struct dmi_header *header, void *d)  		interface->capability |= ACER_CAP_THREEG;  	if (type_aa->commun_func_bitmap & ACER_WMID3_GDS_BLUETOOTH)  		interface->capability |= ACER_CAP_BLUETOOTH; +	if (type_aa->commun_func_bitmap & ACER_WMID3_GDS_RFBTN) { +		interface->capability |= ACER_CAP_RFBTN; +		commun_func_bitmap &= ~ACER_WMID3_GDS_RFBTN; +	}  	commun_fn_key_number = type_aa->commun_fn_key_number;  } @@ -1275,7 +1282,7 @@ static acpi_status __init WMID_set_capabilities(void)  	acpi_status status;  	u32 devices; -	status = wmi_query_block(WMID_GUID2, 1, &out); +	status = wmi_query_block(WMID_GUID2, 0, &out);  	if (ACPI_FAILURE(status))  		return status; @@ -2018,7 +2025,7 @@ static u32 get_wmid_devices(void)  	acpi_status status;  	u32 devices = 0; -	status = wmi_query_block(WMID_GUID2, 1, &out); +	status = wmi_query_block(WMID_GUID2, 0, &out);  	if (ACPI_FAILURE(status))  		return 0;  | 
