platform/chrome: Update ChromeOS EC header for UCSI

Add EC host commands for reading and writing UCSI structures
in the EC. The corresponding kernel driver is cros-ec-ucsi.

Also update PD events supported by the EC.

Acked-by: Tzung-Bi Shih <tzungbi@kernel.org>
Signed-off-by: Pavan Holla <pholla@chromium.org>
Signed-off-by: Łukasz Bartosik <ukaszb@chromium.org>
Link: https://lore.kernel.org/r/20241231131047.1757434-2-ukaszb@chromium.org
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
Pavan Holla 2024-12-31 13:10:46 +00:00 committed by Greg Kroah-Hartman
parent 533561a8aa
commit 401d07d530

View File

@ -5044,8 +5044,11 @@ struct ec_response_pd_status {
#define PD_EVENT_POWER_CHANGE BIT(1)
#define PD_EVENT_IDENTITY_RECEIVED BIT(2)
#define PD_EVENT_DATA_SWAP BIT(3)
#define PD_EVENT_TYPEC BIT(4)
#define PD_EVENT_PPM BIT(5)
struct ec_response_host_event_status {
uint32_t status; /* PD MCU host event status */
uint32_t status; /* PD MCU host event status */
} __ec_align4;
/* Set USB type-C port role and muxes */
@ -6105,6 +6108,29 @@ struct ec_response_typec_vdm_response {
#undef VDO_MAX_SIZE
/*
* UCSI OPM-PPM commands
*
* These commands are used for communication between OPM and PPM.
* Only UCSI3.0 is tested.
*/
#define EC_CMD_UCSI_PPM_SET 0x0140
/* The data size is stored in the host command protocol header. */
struct ec_params_ucsi_ppm_set {
uint16_t offset;
uint8_t data[];
} __ec_align2;
#define EC_CMD_UCSI_PPM_GET 0x0141
/* For 'GET' sub-commands, data will be returned as a raw payload. */
struct ec_params_ucsi_ppm_get {
uint16_t offset;
uint8_t size;
} __ec_align2;
/*****************************************************************************/
/* The command range 0x200-0x2FF is reserved for Rotor. */