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