diff options
Diffstat (limited to 'include/keyboard_8042.h')
-rw-r--r-- | include/keyboard_8042.h | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/include/keyboard_8042.h b/include/keyboard_8042.h index 00fdc9901b..7bde59ac35 100644 --- a/include/keyboard_8042.h +++ b/include/keyboard_8042.h @@ -28,4 +28,21 @@ void button_state_changed(enum keyboard_button_type button, int is_pressed); */ void keyboard_host_write(int data, int is_cmd); +/* + * Board specific callback function when a key state is changed. + * + * A board may watch key events and create some easter eggs, or apply dynamic + * translation to the make code (i.e., remap keys). + * + * Returning EC_SUCCESS implies *make_code is still a valid make code to be + * processed. Any other return value will abort processing of this make code. + * If callback alters *make_code or aborts key processing when pressed=1, it is + * responsible for also altering/aborting the matching pressed=0 call. + * + * @param make_code Pointer to scan code (set 2) of key in action. + * @param pressed Is the key being pressed (1) or released (0). + */ +enum ec_error_list keyboard_scancode_callback(uint16_t *make_code, + int8_t pressed); + #endif /* __CROS_EC_KEYBOARD_8042_H */ |