On Wed, Jun 29, 2011 at 3:26 PM, Ike Panhc <ike.pan@xxxxxxxxxxxxx> wrote: > On 06/28/2011 09:35 PM, Keng-Yu Lin wrote: >> BIOS fires notifications in a constant period with VPC bit 1 set when the >> power cord is unplugged. >> >> This event is not known yet to have any effect, but it makes the >> call to sparse_keymap_report_event() and generates many KEY_UNKNOWNs. >> >> This causes the userspace (Gnome Power Manager in my case) unable >> to enter the idle mode. As the result there is no screensaver showing up, >> no dim backlight, etc. >> >> Signed-off-by: Keng-Yu Lin <kengyu@xxxxxxxxxxxxx> >> --- >> drivers/platform/x86/ideapad-laptop.c | 3 ++- >> 1 files changed, 2 insertions(+), 1 deletions(-) >> >> diff --git a/drivers/platform/x86/ideapad-laptop.c b/drivers/platform/x86/ideapad-laptop.c >> index bfdda33..820f013 100644 >> --- a/drivers/platform/x86/ideapad-laptop.c >> +++ b/drivers/platform/x86/ideapad-laptop.c >> @@ -463,7 +463,8 @@ static void ideapad_acpi_notify(struct acpi_device *adevice, u32 event) >> ideapad_sync_rfk_state(adevice); >> else if (vpc_bit == 4) >> read_ec_data(handle, 0x12, &vpc2); >> - else >> + else if (vpc_bit == 1) { >> + } else >> ideapad_input_report(priv, vpc_bit); >> } >> } > > So far I know this event (coming with vpc_bit=1) is for Lenovo PM utility > on Windows. For most of the machine this event is not implemented in BIOS. > > Its ok that we just ignore the event. > > I think it will be better if we can let sparse-keymap or any upper level > application to ignore all unknown scancode or KEY_UNKNOWN but so far I do > not know a better way then this patch. I think sparse_keymap_report_event() sends the KEY_UNKNOWN on purpose as a debugging aid. We should prevent the call to it in ideapad-laptop. I think the patch is probably the simplest way. Thanks, -kengyu -- To unsubscribe from this list: send the line "unsubscribe platform-driver-x86" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html