diff options
author | Daisuke Nojiri <dnojiri@chromium.org> | 2022-03-28 12:52:36 -0700 |
---|---|---|
committer | Chromeos LUCI <chromeos-scoped@luci-project-accounts.iam.gserviceaccount.com> | 2022-03-30 22:43:19 +0000 |
commit | 9c78cd31c0db7d9997646812f7cea663e3d9ca63 (patch) | |
tree | 43b974d16ca16c815dc8700cc195d906ea19106c /common/rgb_keyboard.c | |
parent | 057ac6a5794753a775e52f63c329ef7ecc3e088b (diff) | |
download | chrome-ec-9c78cd31c0db7d9997646812f7cea663e3d9ca63.tar.gz |
RGBKBD: Add EC_CMD_RGBKBD command
Host programs call EC_CMD_RGBKBD to set or get data, config, etc.
of an RGB keyboard.
This patch adds EC_RGBKBD_SUBCMD_CLEAR sub-command.
localhost ~ # ectool --device 18d1:5022 rgbkbd clear 0xff0000
BUG=b:223465912
BRANCH=None
TEST=Prism/Vell. See above.
Signed-off-by: Daisuke Nojiri <dnojiri@chromium.org>
Change-Id: I20013a2b3c7b831ce0f8dcee5833c9c4017795da
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3558056
Reviewed-by: caveh jalali <caveh@chromium.org>
Diffstat (limited to 'common/rgb_keyboard.c')
-rw-r--r-- | common/rgb_keyboard.c | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/common/rgb_keyboard.c b/common/rgb_keyboard.c index 2214c2218e..4edbcac3a8 100644 --- a/common/rgb_keyboard.c +++ b/common/rgb_keyboard.c @@ -289,6 +289,25 @@ static enum ec_status hc_rgbkbd_set_color(struct host_cmd_handler_args *args) DECLARE_HOST_COMMAND(EC_CMD_RGBKBD_SET_COLOR, hc_rgbkbd_set_color, EC_VER_MASK(0)); +static enum ec_status hc_rgbkbd(struct host_cmd_handler_args *args) +{ + const struct ec_params_rgbkbd *p = args->params; + enum ec_status rv = EC_RES_ERROR; + + switch (p->subcmd) { + case EC_RGBKBD_SUBCMD_CLEAR: + rgbkbd_reset_color(p->color); + rv = EC_RES_SUCCESS; + break; + default: + rv = EC_RES_INVALID_PARAM; + break; + } + + return rv; +} +DECLARE_HOST_COMMAND(EC_CMD_RGBKBD, hc_rgbkbd, EC_VER_MASK(0)); + test_export_static int cc_rgbk(int argc, char **argv) { struct rgbkbd *ctx; |