Re: [PATCH 2/2] leds: tps6131x: add support for Texas Instruments TPS6131X flash LED driver

From: Matthias Fend
Date: Mon Mar 10 2025 - 04:05:21 EST


Hi Krzysztof,

Am 10.03.2025 um 08:46 schrieb Krzysztof Kozlowski:
On 28/02/2025 11:31, Matthias Fend wrote:
+ tps6131x->reset_gpio = devm_gpiod_get_optional(&client->dev, "reset", GPIOD_OUT_HIGH);
+ ret = tps6131x_reset_chip(tps6131x);
+ if (ret)
+ return dev_err_probe(&client->dev, ret, "Failed to reset LED controller\n");
+
+ ret = tps6131x_init_chip(tps6131x);
+ if (ret)
+ return dev_err_probe(&client->dev, ret, "Failed to initialize LED controller\n");
+
+ ret = tps6131x_led_class_setup(tps6131x);
+ if (ret)
+ return dev_err_probe(&client->dev, ret, "Failed to setup led class\n");
+
+ ret = tps6131x_v4l2_setup(tps6131x);
+ if (ret)
+ return dev_err_probe(&client->dev, ret, "Failed to setup v4l2 flash\n");
+
+ return 0;
+}
+
+static void tps6131x_remove(struct i2c_client *client)
+{
+ struct tps6131x *tps6131x = i2c_get_clientdata(client);
+
+ v4l2_flash_release(tps6131x->v4l2_flash);
+
+ cancel_delayed_work_sync(&tps6131x->torch_refresh_work);
+}
+
+static const struct of_device_id of_tps6131x_leds_match[] = {
+ { .compatible = "ti,tps61310" },
+ { .compatible = "ti,tps61311" },


No differences? So devices are fully compatible? Then it should be
expressed in the binding with fallback. Or the binding description or
commit msg should explain why they are not compatible.

Yes, from a software perspective both are identical.
The only difference I found between the two variants are different valley current limits. These are described in the bindings.

Best regards
~Matthias



Best regards,
Krzysztof