mirror of
https://github.com/Telecominfraproject/OpenCellular.git
synced 2025-12-27 18:25:05 +00:00
This is experimental for now; the capsense chip simply reports its buttons as the number keys on the keyboard (1-8). BUG=chrome-os-partner:23382 BRANCH=samus,ToT TEST=manual To test, you'll need a reworked and correctly programmed capsense module. Boot the system, and switch to VT2. Touch the capsense bar and you'll see the input appear on the console as though you were typing numbers. Note that the capsense hardware is still buggy. Refer to the bug for workarounds. Change-Id: I4c3a8b70b8197ffd538c38c59c9336383365afa7 Signed-off-by: Bill Richardson <wfrichar@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/185434 Reviewed-by: Randall Spangler <rspangler@chromium.org> Reviewed-by: Dave Parker <dparker@chromium.org>
53 lines
1.1 KiB
C
53 lines
1.1 KiB
C
/* Copyright (c) 2014 The Chromium OS Authors. All rights reserved.
|
|
* Use of this source code is governed by a BSD-style license that can be
|
|
* found in the LICENSE file.
|
|
*/
|
|
|
|
/* Button API for Chrome EC */
|
|
|
|
#ifndef __CROS_EC_BUTTON_H
|
|
#define __CROS_EC_BUTTON_H
|
|
|
|
#include "common.h"
|
|
#include "gpio.h"
|
|
|
|
#define BUTTON_FLAG_ACTIVE_HIGH (1 << 0)
|
|
|
|
enum keyboard_button_type {
|
|
KEYBOARD_BUTTON_POWER = 0,
|
|
KEYBOARD_BUTTON_VOLUME_DOWN,
|
|
KEYBOARD_BUTTON_VOLUME_UP,
|
|
KEYBOARD_BUTTON_CAPSENSE_1,
|
|
KEYBOARD_BUTTON_CAPSENSE_2,
|
|
KEYBOARD_BUTTON_CAPSENSE_3,
|
|
KEYBOARD_BUTTON_CAPSENSE_4,
|
|
KEYBOARD_BUTTON_CAPSENSE_5,
|
|
KEYBOARD_BUTTON_CAPSENSE_6,
|
|
KEYBOARD_BUTTON_CAPSENSE_7,
|
|
KEYBOARD_BUTTON_CAPSENSE_8,
|
|
|
|
KEYBOARD_BUTTON_COUNT
|
|
};
|
|
|
|
struct button_config {
|
|
const char *name;
|
|
enum keyboard_button_type type;
|
|
enum gpio_signal gpio;
|
|
uint32_t debounce_us;
|
|
int flags;
|
|
};
|
|
|
|
/*
|
|
* Defined in board.c. Should be CONFIG_BUTTON_COUNT elements long.
|
|
*/
|
|
extern const struct button_config buttons[];
|
|
|
|
/*
|
|
* Interrupt handler for button.
|
|
*
|
|
* @param signal Signal which triggered the interrupt.
|
|
*/
|
|
void button_interrupt(enum gpio_signal signal);
|
|
|
|
#endif /* __CROS_EC_BUTTON_H */
|