xref: /openbmc/u-boot/include/cros_ec_message.h (revision 836bb6e8)
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