Lines Matching full:levels

26 	unsigned int		*levels;  member
97 if (pb->levels) in compute_duty_cycle()
98 duty_cycle = pb->levels[brightness]; in compute_duty_cycle()
201 * Once we have 4096 levels there's little point going much higher... in pwm_backlight_brightness_default()
208 data->levels = devm_kcalloc(dev, data->max_brightness, in pwm_backlight_brightness_default()
209 sizeof(*data->levels), GFP_KERNEL); in pwm_backlight_brightness_default()
210 if (!data->levels) in pwm_backlight_brightness_default()
220 data->levels[i] = (unsigned int)retval; in pwm_backlight_brightness_default()
256 * Determine the number of brightness levels, if this property is not in pwm_backlight_parse_dt()
257 * set a default table of brightness levels will be used. in pwm_backlight_parse_dt()
259 prop = of_find_property(node, "brightness-levels", &length); in pwm_backlight_parse_dt()
265 /* read brightness levels from DT property */ in pwm_backlight_parse_dt()
267 size_t size = sizeof(*data->levels) * data->max_brightness; in pwm_backlight_parse_dt()
270 data->levels = devm_kzalloc(dev, size, GFP_KERNEL); in pwm_backlight_parse_dt()
271 if (!data->levels) in pwm_backlight_parse_dt()
274 ret = of_property_read_u32_array(node, "brightness-levels", in pwm_backlight_parse_dt()
275 data->levels, in pwm_backlight_parse_dt()
289 * interpolation between each of the values of brightness levels in pwm_backlight_parse_dt()
297 * brightness-levels table, otherwise we can't interpolate in pwm_backlight_parse_dt()
307 * Recalculate the number of brightness levels, now in pwm_backlight_parse_dt()
309 * steps between two levels. in pwm_backlight_parse_dt()
312 if ((data->levels[i + 1] - data->levels[i]) / in pwm_backlight_parse_dt()
319 dev_dbg(dev, "new number of brightness levels: %d\n", in pwm_backlight_parse_dt()
323 * Create a new table of brightness levels with all the in pwm_backlight_parse_dt()
334 value = data->levels[i]; in pwm_backlight_parse_dt()
335 n = (data->levels[i + 1] - value) / num_steps; in pwm_backlight_parse_dt()
343 table[levels_count] = data->levels[i]; in pwm_backlight_parse_dt()
347 table[levels_count] = data->levels[i]; in pwm_backlight_parse_dt()
351 * brightness levels table and replace for the in pwm_backlight_parse_dt()
354 devm_kfree(dev, data->levels); in pwm_backlight_parse_dt()
355 data->levels = table; in pwm_backlight_parse_dt()
359 * of brightness levels. in pwm_backlight_parse_dt()
395 unsigned int min_val = data->levels[0]; in pwm_backlight_is_linear()
396 unsigned int max_val = data->levels[nlevels - 1]; in pwm_backlight_is_linear()
408 unsigned int delta = abs(linear_value - data->levels[i]); in pwm_backlight_is_linear()
552 if (data->levels) { in pwm_backlight_probe()
553 pb->levels = data->levels; in pwm_backlight_probe()
556 * For the DT case, only when brightness levels is defined in pwm_backlight_probe()
557 * data->levels is filled. For the non-DT case, data->levels in pwm_backlight_probe()
561 if (data->levels[i] > pb->scale) in pwm_backlight_probe()
562 pb->scale = data->levels[i]; in pwm_backlight_probe()
570 * If no brightness levels are provided and max_brightness is in pwm_backlight_probe()
572 * max_brightness is set to 0 when brightness levels is not in pwm_backlight_probe()
589 if (data->levels[i] > pb->scale) in pwm_backlight_probe()
590 pb->scale = data->levels[i]; in pwm_backlight_probe()
592 pb->levels = data->levels; in pwm_backlight_probe()