mfd: cros_ec: Add API for Touchpad support
authorGwendal Grignou <gwendal@chromium.org>
Mon, 3 Jun 2019 18:33:56 +0000 (11:33 -0700)
committerLee Jones <lee.jones@linaro.org>
Mon, 10 Jun 2019 08:15:08 +0000 (09:15 +0100)
Add API to control touchpad presented by Embedded Controller.

Signed-off-by: Gwendal Grignou <gwendal@chromium.org>
Acked-by: Enric Balletbo i Serra <enric.balletbo@collabora.com>
Acked-by: Benson Leung <bleung@chromium.org>
Reviewed-by: Fabien Lahoudere <fabien.lahoudere@collabora.com>
Signed-off-by: Lee Jones <lee.jones@linaro.org>
include/linux/mfd/cros_ec_commands.h

index 52fd9bfafc7f615114d7dddf2fb884e39f4f234d..1d0311df44d3e3b5aec3ccfdb141f21790361060 100644 (file)
@@ -5043,6 +5043,32 @@ struct ec_response_pd_chip_info_v1 {
        };
 } __ec_align2;
 
+/*****************************************************************************/
+/* Touchpad MCU commands: range 0x0500-0x05FF */
+
+/* Perform touchpad self test */
+#define EC_CMD_TP_SELF_TEST 0x0500
+
+/* Get number of frame types, and the size of each type */
+#define EC_CMD_TP_FRAME_INFO 0x0501
+
+struct ec_response_tp_frame_info {
+       uint32_t n_frames;
+       uint32_t frame_sizes[0];
+} __ec_align4;
+
+/* Create a snapshot of current frame readings */
+#define EC_CMD_TP_FRAME_SNAPSHOT 0x0502
+
+/* Read the frame */
+#define EC_CMD_TP_FRAME_GET 0x0503
+
+struct ec_params_tp_frame_get {
+       uint32_t frame_index;
+       uint32_t offset;
+       uint32_t size;
+} __ec_align4;
+
 /*****************************************************************************/
 /* EC-EC communication commands: range 0x0600-0x06FF */