Thread (5 messages) 5 messages, 4 authors, 2008-10-27

Re: [PATCH] ACPI: Always report a sync event after a lid state change

From: Len Brown <lenb@kernel.org>
Date: 2008-10-24 19:37:12
Also in: linux-acpi

Dmitry,

Looking around the tree, the other calls to
input_report_switch() and input_report_key()
are all followed by input_sync().

I guess we didn't understand the API when we added
these calls to button.c?

Looks like the other users of input_report_* in
drivers/acpi and drivers/misc are okay,
with the exception of toshiba_acpi.c --
the most neglected driver we have,
so I"ll do the same to that one?

Ack?

thanks,
-Len


On Fri, 24 Oct 2008, Guillem Jover wrote:
quoted hunk ↗ jump to hunk
Currently not always an EV_SYN event is reported to userland
after the EV_SW SW_LID event has been sent. This is easy to verify
by using “input-events” from input-utils and just closing and opening
the lid.

Signed-off-by: Guillem Jover <redacted>
---
 drivers/acpi/button.c |    3 ++-
 1 files changed, 2 insertions(+), 1 deletions(-)
diff --git a/drivers/acpi/button.c b/drivers/acpi/button.c
index 1dfec41..59352d9 100644
--- a/drivers/acpi/button.c
+++ b/drivers/acpi/button.c
@@ -262,6 +262,7 @@ static int acpi_lid_send_state(struct acpi_button *button)
 		return -ENODEV;
 	/* input layer checks if event is redundant */
 	input_report_switch(button->input, SW_LID, !state);
+	input_sync(button->input);
 	return 0;
 }
 
@@ -285,8 +286,8 @@ static void acpi_button_notify(acpi_handle handle, u32 event, void *data)
 			input_report_key(input, keycode, 1);
 			input_sync(input);
 			input_report_key(input, keycode, 0);
+			input_sync(input);
 		}
-		input_sync(input);
 
 		acpi_bus_generate_proc_event(button->device, event,
 					++button->pushed);
-- 
1.6.0.2

--
To unsubscribe from this list: send the line "unsubscribe linux-acpi" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help