Searched hist:"22 e0f5a9ecab85f36a0fe69892d950c1ac212c91" (Results 1 – 1 of 1) sorted by relevance
| /rk3399_rockchip-uboot/drivers/input/ |
| H A D | i8042.c | 22e0f5a9ecab85f36a0fe69892d950c1ac212c91 Mon Nov 14 20:18:12 UTC 2011 Gabe Black <gabeblack@chromium.org> x86: Fix some bugs in the i8402 driver when no controller is present
If no controller is present, the i8402 driver should return immediately and not attempt to operate on the missing hardware.
In kbd_input_empty, the status register is checked every millisecond to see whether the input buffer is empty, up to a timeout which is tracked by decrimenting a counter each time the check is performed. The decrement is performed with a postfix -- operator, and the value of the counter is checked in place. That means that when the counter reaches zero and the loop terminates, it will actually be decrimented one more time and become -1. That value is returned as the return value of the function. That would give the right answer if it wasn't for that extra decrement because a timeout would indicate that the buffer never became empty.
This change fixes both of those bugs.
Signed-off-by: Gabe Black <gabeblack@chromium.org>
|