Thanks! On 2024-06-06 11:05:07+0000, Guenter Roeck wrote: > 0-day complains: > > drivers-hwmon-cros_ec_hwmon.c:sparse:sparse:cast-to-restricted-__le16 > > Fix by using a __le16 typed variable as parameter to le16_to_cpu(). > > Fixes: bc3e45258096 ("hwmon: add ChromeOS EC driver") > Cc: Thomas Weißschuh <linux@xxxxxxxxxxxxxx> > Cc: Tzung-Bi Shih <tzungbi@xxxxxxxxxx> > Signed-off-by: Guenter Roeck <linux@xxxxxxxxxxxx> Acked-by: Thomas Weißschuh <linux@xxxxxxxxxxxxxx> Guenter, does sparse work locally for you? When I run it via "make C=1 drivers/hwmon/cros_ec_hwmon.o" I only get some random warnings from included headers but nothing of value. Tzung-Bi, could you pick up this patch through chrome-platform? (And also "hwmon: (cros_ec) Prevent read overflow in probe()" [0]) [0] https://lore.kernel.org/lkml/42331b70-bd3c-496c-8c79-3ec4faad40b8@moroto.mountain/ > --- > drivers/hwmon/cros_ec_hwmon.c | 5 +++-- > 1 file changed, 3 insertions(+), 2 deletions(-) > > diff --git a/drivers/hwmon/cros_ec_hwmon.c b/drivers/hwmon/cros_ec_hwmon.c > index 41f268fa8260..f586987c3502 100644 > --- a/drivers/hwmon/cros_ec_hwmon.c > +++ b/drivers/hwmon/cros_ec_hwmon.c > @@ -26,12 +26,13 @@ struct cros_ec_hwmon_priv { > static int cros_ec_hwmon_read_fan_speed(struct cros_ec_device *cros_ec, u8 index, u16 *speed) > { > int ret; > + __le16 __speed; > > - ret = cros_ec_cmd_readmem(cros_ec, EC_MEMMAP_FAN + index * 2, 2, speed); > + ret = cros_ec_cmd_readmem(cros_ec, EC_MEMMAP_FAN + index * 2, 2, &__speed); > if (ret < 0) > return ret; > > - *speed = le16_to_cpu(*speed); > + *speed = le16_to_cpu(__speed); > return 0; > } > > -- > 2.39.2 >