Tony On 09/26/2018 10:01 AM, Tony Lindgren wrote: > * Dan Murphy <dmurphy@xxxxxx> [180926 13:14]: >> --- /dev/null >> +++ b/drivers/leds/ti-lmu-led-common.c >> +static int ti_lmu_common_enable(struct ti_lmu_bank *lmu_bank, bool enable) >> +{ >> + struct regmap *regmap = lmu_bank->regmap; >> + unsigned long enable_time = lmu_bank->enable_usec; >> + u8 reg = lmu_bank->enable_reg; >> + u8 mask = BIT(lmu_bank->bank_id); >> + u8 val = (enable == true) ? mask : 0; >> + int ret; >> + >> + return 0; > > Hmm this early return probably needs to be left out on real hardawre? > Yes it does. I have not debugged or completed this function yet. >> + if (!reg) >> + return -EINVAL; >> + >> + ret = regmap_update_bits(regmap, reg, mask, val); >> + if (ret) >> + return ret; >> + >> + if (enable_time > 0) >> + usleep_range(enable_time, enable_time + 100); >> + >> + return 0; >> +} > > Regards, > > Tony > -- ------------------ Dan Murphy