ec/google/chromeec: Add API to turn on lightbar

Implement google_chromeec_lightbar_on() to allow the host to
explicitly enable the Chrome EC lightbar. This function sends the
LIGHTBAR_CMD_ON sub-command through the EC_CMD_LIGHTBAR_CMD
host command.

BUG=None
TEST=Verified lightbar can be re-enabled after being turned off on
supported hardware.

Change-Id: I838525ba091281fefb3b6a33b9974037d06706d4
Signed-off-by: Subrata Banik <subratabanik@google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/91381
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Kapil Porwal <kapilporwal@google.com>
This commit is contained in:
Subrata Banik 2026-02-23 10:35:10 +05:30
commit b68ba24244
2 changed files with 36 additions and 0 deletions

View file

@ -2007,6 +2007,32 @@ int google_chromeec_lightbar_off(void)
return google_chromeec_command(&cmd);
}
/*
* Sends a command to enable the Chrome EC lightbar.
*
* This function wraps the LIGHTBAR_CMD_ON sub-command into a standard
* EC_CMD_LIGHTBAR_CMD host command.
*
* @return 0 on success, or a non-zero EC transport error code on failure.
*/
int google_chromeec_lightbar_on(void)
{
const struct ec_params_lightbar req = {
.cmd = LIGHTBAR_CMD_ON,
};
struct chromeec_command cmd = {
.cmd_code = EC_CMD_LIGHTBAR_CMD,
.cmd_size_out = 0,
.cmd_data_out = NULL,
.cmd_size_in = sizeof(req),
.cmd_data_in = &req,
};
return google_chromeec_command(&cmd);
}
/*
* Check if the battery is critically low and not currently charging.
*

View file

@ -572,6 +572,16 @@ int google_chromeec_set_lightbar_rgb(unsigned int led, int red, int green,
*/
int google_chromeec_lightbar_off(void);
/*
* Sends a command to enable the Chrome EC lightbar.
*
* This function wraps the LIGHTBAR_CMD_ON sub-command into a standard
* EC_CMD_LIGHTBAR_CMD host command.
*
* @return 0 on success, or a non-zero EC transport error code on failure.
*/
int google_chromeec_lightbar_on(void);
/*
* Check if the battery is critically low and AC is not present.
*