On Thu, Jun 15, 2023 at 12:58:22PM +0200, Rasmus Villemoes wrote: > Implement support for using the values given in the > isil,battery-trip-levels-microvolt property to set appropriate values > in the VB85TP/VB75TP bits in the PWR_VBAT register. A few nit-picks below. ... > +static void isl12022_set_trip_levels(struct device *dev) > +{ > + struct regmap *regmap = dev_get_drvdata(dev); > + u32 levels[2] = {0, 0}; A nit, 0, 0 is not needed, {} will do the job. > + int ret, i, j, x[2]; > + u8 val, mask; BUILD_BUG_ON(ARRAY_SIZE(x) != ARRAY_SIZE(levels)) ? > + device_property_read_u32_array(dev, "isil,battery-trip-levels-microvolt", > + levels, 2); A nit, ARRAY_SIZE(levels) ? > + for (i = 0; i < 2; i++) { ARRAY_SIZE(x) ? > + for (j = 0; j < ARRAY_SIZE(trip_levels[i]) - 1; j++) { > + if (levels[i] <= trip_levels[i][j]) > + break; > + } > + x[i] = j; > + } > + > + val = FIELD_PREP(ISL12022_REG_VB85_MASK, x[0]) | > + FIELD_PREP(ISL12022_REG_VB75_MASK, x[1]); > + mask = ISL12022_REG_VB85_MASK | ISL12022_REG_VB75_MASK; > + > + ret = regmap_update_bits(regmap, ISL12022_REG_PWR_VBAT, mask, val); > + if (ret) > + dev_warn(dev, "unable to set battery alarm levels: %d\n", ret); > +} -- With Best Regards, Andy Shevchenko