Commit e849b874 authored by Gwendal Grignou's avatar Gwendal Grignou Committed by Lee Jones

mfd: cros_ec: move HDMI CEC API definition

Move near the end of file.
Signed-off-by: default avatarGwendal Grignou <gwendal@chromium.org>
Acked-by: default avatarEnric Balletbo i Serra <enric.balletbo@collabora.com>
Acked-by: default avatarBenson Leung <bleung@chromium.org>
Reviewed-by: default avatarFabien Lahoudere <fabien.lahoudere@collabora.com>
Signed-off-by: default avatarLee Jones <lee.jones@linaro.org>
parent ce86c87d
......@@ -3211,6 +3211,81 @@ struct ec_response_battery_vendor_param {
} __ec_align4;
/*****************************************************************************/
/*
* HDMI CEC commands
*
* These commands are for sending and receiving message via HDMI CEC
*/
#define MAX_CEC_MSG_LEN 16
/* CEC message from the AP to be written on the CEC bus */
#define EC_CMD_CEC_WRITE_MSG 0x00B8
/**
* struct ec_params_cec_write - Message to write to the CEC bus
* @msg: message content to write to the CEC bus
*/
struct ec_params_cec_write {
uint8_t msg[MAX_CEC_MSG_LEN];
} __ec_align1;
/* Set various CEC parameters */
#define EC_CMD_CEC_SET 0x00BA
/**
* struct ec_params_cec_set - CEC parameters set
* @cmd: parameter type, can be CEC_CMD_ENABLE or CEC_CMD_LOGICAL_ADDRESS
* @val: in case cmd is CEC_CMD_ENABLE, this field can be 0 to disable CEC
* or 1 to enable CEC functionality, in case cmd is
* CEC_CMD_LOGICAL_ADDRESS, this field encodes the requested logical
* address between 0 and 15 or 0xff to unregister
*/
struct ec_params_cec_set {
uint8_t cmd; /* enum cec_command */
uint8_t val;
} __ec_align1;
/* Read various CEC parameters */
#define EC_CMD_CEC_GET 0x00BB
/**
* struct ec_params_cec_get - CEC parameters get
* @cmd: parameter type, can be CEC_CMD_ENABLE or CEC_CMD_LOGICAL_ADDRESS
*/
struct ec_params_cec_get {
uint8_t cmd; /* enum cec_command */
} __ec_align1;
/**
* struct ec_response_cec_get - CEC parameters get response
* @val: in case cmd was CEC_CMD_ENABLE, this field will 0 if CEC is
* disabled or 1 if CEC functionality is enabled,
* in case cmd was CEC_CMD_LOGICAL_ADDRESS, this will encode the
* configured logical address between 0 and 15 or 0xff if unregistered
*/
struct ec_response_cec_get {
uint8_t val;
} __ec_align1;
/* CEC parameters command */
enum cec_command {
/* CEC reading, writing and events enable */
CEC_CMD_ENABLE,
/* CEC logical address */
CEC_CMD_LOGICAL_ADDRESS,
};
/* Events from CEC to AP */
enum mkbp_cec_event {
/* Outgoing message was acknowledged by a follower */
EC_MKBP_CEC_SEND_OK = BIT(0),
/* Outgoing message was not acknowledged */
EC_MKBP_CEC_SEND_FAILED = BIT(1),
};
/*****************************************************************************/
/* Commands for I2S recording on audio codec. */
#define EC_CMD_CODEC_I2S 0x00BC
......@@ -3339,79 +3414,6 @@ struct ec_params_reboot_ec {
*/
#define EC_CMD_GET_PANIC_INFO 0x00D3
/*****************************************************************************/
/*
* HDMI CEC commands
*
* These commands are for sending and receiving message via HDMI CEC
*/
#define EC_MAX_CEC_MSG_LEN 16
/* CEC message from the AP to be written on the CEC bus */
#define EC_CMD_CEC_WRITE_MSG 0x00B8
/**
* struct ec_params_cec_write - Message to write to the CEC bus
* @msg: message content to write to the CEC bus
*/
struct ec_params_cec_write {
uint8_t msg[EC_MAX_CEC_MSG_LEN];
} __ec_align1;
/* Set various CEC parameters */
#define EC_CMD_CEC_SET 0x00BA
/**
* struct ec_params_cec_set - CEC parameters set
* @cmd: parameter type, can be CEC_CMD_ENABLE or CEC_CMD_LOGICAL_ADDRESS
* @val: in case cmd is CEC_CMD_ENABLE, this field can be 0 to disable CEC
* or 1 to enable CEC functionality, in case cmd is CEC_CMD_LOGICAL_ADDRESS,
* this field encodes the requested logical address between 0 and 15
* or 0xff to unregister
*/
struct ec_params_cec_set {
uint8_t cmd; /* enum cec_command */
uint8_t val;
} __ec_align1;
/* Read various CEC parameters */
#define EC_CMD_CEC_GET 0x00BB
/**
* struct ec_params_cec_get - CEC parameters get
* @cmd: parameter type, can be CEC_CMD_ENABLE or CEC_CMD_LOGICAL_ADDRESS
*/
struct ec_params_cec_get {
uint8_t cmd; /* enum cec_command */
} __ec_align1;
/**
* struct ec_response_cec_get - CEC parameters get response
* @val: in case cmd was CEC_CMD_ENABLE, this field will 0 if CEC is
* disabled or 1 if CEC functionality is enabled,
* in case cmd was CEC_CMD_LOGICAL_ADDRESS, this will encode the
* configured logical address between 0 and 15 or 0xff if unregistered
*/
struct ec_response_cec_get {
uint8_t val;
} __ec_align1;
/* CEC parameters command */
enum ec_cec_command {
/* CEC reading, writing and events enable */
CEC_CMD_ENABLE,
/* CEC logical address */
CEC_CMD_LOGICAL_ADDRESS,
};
/* Events from CEC to AP */
enum mkbp_cec_event {
/* Outgoing message was acknowledged by a follower */
EC_MKBP_CEC_SEND_OK = BIT(0),
/* Outgoing message was not acknowledged */
EC_MKBP_CEC_SEND_FAILED = BIT(1),
};
/*****************************************************************************/
/*
* Special commands
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment