diff options
Diffstat (limited to 'drivers/platform/x86/intel/hid.c')
| -rw-r--r-- | drivers/platform/x86/intel/hid.c | 9 | 
1 files changed, 8 insertions, 1 deletions
diff --git a/drivers/platform/x86/intel/hid.c b/drivers/platform/x86/intel/hid.c index 7457ca2b27a6..c7a827645864 100644 --- a/drivers/platform/x86/intel/hid.c +++ b/drivers/platform/x86/intel/hid.c @@ -49,6 +49,8 @@ static const struct acpi_device_id intel_hid_ids[] = {  	{"INTC1076", 0},  	{"INTC1077", 0},  	{"INTC1078", 0}, +	{"INTC107B", 0}, +	{"INTC10CB", 0},  	{"", 0},  };  MODULE_DEVICE_TABLE(acpi, intel_hid_ids); @@ -504,6 +506,7 @@ static void notify_handler(acpi_handle handle, u32 event, void *context)  	struct platform_device *device = context;  	struct intel_hid_priv *priv = dev_get_drvdata(&device->dev);  	unsigned long long ev_index; +	struct key_entry *ke;  	int err;  	/* @@ -545,11 +548,15 @@ static void notify_handler(acpi_handle handle, u32 event, void *context)  		if (event == 0xc0 || !priv->array)  			return; -		if (!sparse_keymap_entry_from_scancode(priv->array, event)) { +		ke = sparse_keymap_entry_from_scancode(priv->array, event); +		if (!ke) {  			dev_info(&device->dev, "unknown event 0x%x\n", event);  			return;  		} +		if (ke->type == KE_IGNORE) +			return; +  wakeup:  		pm_wakeup_hard_event(&device->dev);  |