On Sun 18 Apr 16:34 CDT 2021, Marijn Suijten wrote: > `last_repeat` holds the actual value requested by the user whereas > `repeat` is a software iteration variable that is unused in hardware > patterns. > > Furthermore `last_repeat` is the field returned to the user when reading > the `repeat` sysfs property. This field is initialized to `-1` which is > - together with `1` - the only valid value in the upcoming Qualcomm LPG > driver. It is thus unexpected when `repeat` with an initialization > value of `0` is passed into the the driver, when the sysfs property > clearly presents a value of `-1`. > Reviewed-by: Bjorn Andersson <bjorn.andersson@xxxxxxxxxx> Tested-by: Bjorn Andersson <bjorn.andersson@xxxxxxxxxx> Regards, Bjorn > Signed-off-by: Marijn Suijten <marijn.suijten@xxxxxxxxxxxxxx> > --- > drivers/leds/trigger/ledtrig-pattern.c | 3 ++- > 1 file changed, 2 insertions(+), 1 deletion(-) > > diff --git a/drivers/leds/trigger/ledtrig-pattern.c b/drivers/leds/trigger/ledtrig-pattern.c > index 4d138d5317e9..2853b75df338 100644 > --- a/drivers/leds/trigger/ledtrig-pattern.c > +++ b/drivers/leds/trigger/ledtrig-pattern.c > @@ -126,7 +126,8 @@ static int pattern_trig_start_pattern(struct led_classdev *led_cdev) > > if (data->is_hw_pattern) { > return led_cdev->pattern_set(led_cdev, data->patterns, > - data->npatterns, data->repeat); > + data->npatterns, > + data->last_repeat); > } > > /* At least 2 tuples for software pattern. */ > -- > 2.31.1 >