Re: [PATCH 7/8] platform/x86: x86-android-tablets: use 4-argument i2c_smbus_read_block_data()
From: Hans de Goede
Date: Mon Oct 26 2026 - 07:53:21 EST
Hi
On 25-Oct-26 3:48 AM, Dmitry Torokhov wrote:
> Pass the expected response length and destination buffer directly to
> i2c_smbus_read_block_data() in atla10_ec_cmd() instead of copying
> through an intermediate buffer.
>
> Signed-off-by: Dmitry Torokhov <dmitry.torokhov@xxxxxxxxx>
Thanks, patch looks good to me:
Reviewed-by: Hans de Goede <johannes.goede@xxxxxxxxxxxxxxxx>
Regards,
Hans
> ---
> drivers/platform/x86/x86-android-tablets/vexia_atla10_ec.c | 4 +---
> 1 file changed, 1 insertion(+), 3 deletions(-)
>
> diff --git a/drivers/platform/x86/x86-android-tablets/vexia_atla10_ec.c b/drivers/platform/x86/x86-android-tablets/vexia_atla10_ec.c
> index 67dba9aa51f6..bbfa040cd4ec 100644
> --- a/drivers/platform/x86/x86-android-tablets/vexia_atla10_ec.c
> +++ b/drivers/platform/x86/x86-android-tablets/vexia_atla10_ec.c
> @@ -65,16 +65,14 @@ struct atla10_ec_data {
> static int atla10_ec_cmd(struct atla10_ec_data *data, u8 cmd, u8 len, u8 *values)
> {
> struct device *dev = &data->client->dev;
> - u8 buf[I2C_SMBUS_BLOCK_MAX];
> int ret;
>
> - ret = i2c_smbus_read_block_data(data->client, cmd, buf);
> + ret = i2c_smbus_read_block_data(data->client, cmd, len, values);
> if (ret != len) {
> dev_err(dev, "I2C command 0x%02x error: %d\n", cmd, ret);
> return -EIO;
> }
>
> - memcpy(values, buf, len);
> return 0;
> }
>
>