Hi Gwendal,

On 30/8/20 8:59, Gwendal Grignou wrote:
> By default, the lightbar commands are set to the
> biggest lightbar command and response. That length is greater than 128
> bytes and may not work on all machines.
> But all EC are probed for lightbar by sending a get version request.
> Set that request size precisely.
> 
> Before the command would be:
> cros_ec_cmd: version: 0, command: EC_CMD_LIGHTBAR_CMD, outsize: 194, insize: 
> 128, result: 0
> Afer:
> cros_ec_cmd: version: 0, command: EC_CMD_LIGHTBAR_CMD, outsize: 1, insize: 8, 
> result: 0
> 
> Fixes: a841178445bb7 ("mfd: cros_ec: Use a zero-length array for command 
> data")
> Signed-off-by: Gwendal Grignou <gwen...@chromium.org>

I changed the subject to match "platform/chrome: cros_ec_lightbar" and applied
for 5.10.

Thanks,
 Enric

> ---
> Changes since v2:
> - Add fix field where the inefficiency was present.
> 
> Changes since v1:
> - Remove BUG and TEST fields.
> 
>  drivers/platform/chrome/cros_ec_lightbar.c | 2 ++
>  1 file changed, 2 insertions(+)
> 
> diff --git a/drivers/platform/chrome/cros_ec_lightbar.c 
> b/drivers/platform/chrome/cros_ec_lightbar.c
> index b59180bff5a3e..ef61298c30bdd 100644
> --- a/drivers/platform/chrome/cros_ec_lightbar.c
> +++ b/drivers/platform/chrome/cros_ec_lightbar.c
> @@ -116,6 +116,8 @@ static int get_lightbar_version(struct cros_ec_dev *ec,
>  
>       param = (struct ec_params_lightbar *)msg->data;
>       param->cmd = LIGHTBAR_CMD_VERSION;
> +     msg->outsize = sizeof(param->cmd);
> +     msg->result = sizeof(resp->version);
>       ret = cros_ec_cmd_xfer_status(ec->ec_dev, msg);
>       if (ret < 0) {
>               ret = 0;
> 

Reply via email to