188364387SHung-ying Tyan /* 288364387SHung-ying Tyan * Chromium OS Matrix Keyboard Message Protocol definitions 388364387SHung-ying Tyan * 488364387SHung-ying Tyan * Copyright (c) 2012 The Chromium OS Authors. 588364387SHung-ying Tyan * 61a459660SWolfgang Denk * SPDX-License-Identifier: GPL-2.0+ 788364387SHung-ying Tyan */ 888364387SHung-ying Tyan 988364387SHung-ying Tyan #ifndef _CROS_MESSAGE_H 1088364387SHung-ying Tyan #define _CROS_MESSAGE_H 1188364387SHung-ying Tyan 1288364387SHung-ying Tyan /* 1388364387SHung-ying Tyan * Command interface between EC and AP, for LPC, I2C and SPI interfaces. 1488364387SHung-ying Tyan * 1588364387SHung-ying Tyan * This is copied from the Chromium OS Open Source Embedded Controller code. 1688364387SHung-ying Tyan */ 1788364387SHung-ying Tyan enum { 1888364387SHung-ying Tyan /* The header byte, which follows the preamble */ 1988364387SHung-ying Tyan MSG_HEADER = 0xec, 2088364387SHung-ying Tyan 2188364387SHung-ying Tyan MSG_HEADER_BYTES = 3, 2288364387SHung-ying Tyan MSG_TRAILER_BYTES = 2, 2388364387SHung-ying Tyan MSG_PROTO_BYTES = MSG_HEADER_BYTES + MSG_TRAILER_BYTES, 2488364387SHung-ying Tyan 2588364387SHung-ying Tyan /* Max length of messages */ 26*836bb6e8SSimon Glass MSG_BYTES = EC_PROTO2_MAX_PARAM_SIZE + MSG_PROTO_BYTES, 2788364387SHung-ying Tyan }; 2888364387SHung-ying Tyan 2988364387SHung-ying Tyan #endif 30