leds: lm3601x: Reset LED controller during probe

LED controller should be reset during initialization to avoid abnormal
behaviors. For example, when power to SoC is recycled but power to LED
controller is not, LED controller should not presume to be in original
state.

Signed-off-by: Jack Chen <zenghuchen@google.com>
Link: https://lore.kernel.org/r/20240801153048.3813581-1-zenghuchen@google.com
Signed-off-by: Lee Jones <lee@kernel.org>
This commit is contained in:
Jack Chen 2024-08-01 11:30:48 -04:00 committed by Lee Jones
parent a0864cf320
commit 70a4375e07

View File

@ -443,6 +443,10 @@ static int lm3601x_probe(struct i2c_client *client)
return ret;
}
ret = regmap_write(led->regmap, LM3601X_DEV_ID_REG, LM3601X_SW_RESET);
if (ret)
dev_warn(&client->dev, "Failed to reset the LED controller\n");
mutex_init(&led->lock);
return lm3601x_register_leds(led, fwnode);