[openwrt/openwrt] kernel: leds-gca230718: remove _remove

LEDE Commits lede-commits at lists.infradead.org
Mon Dec 23 15:25:02 PST 2024


hauke pushed a commit to openwrt/openwrt.git, branch main:
https://git.openwrt.org/4c8bb0a20f8a42b598941fec8b02db6599e3c325

commit 4c8bb0a20f8a42b598941fec8b02db6599e3c325
Author: Rosen Penev <rosenp at gmail.com>
AuthorDate: Sun Oct 6 17:08:24 2024 -0700

    kernel: leds-gca230718: remove _remove
    
    Not needed. Everything can be replaced with devm.
    
    Signed-off-by: Rosen Penev <rosenp at gmail.com>
    Link: https://github.com/openwrt/openwrt/pull/16869
    Signed-off-by: Hauke Mehrtens <hauke at hauke-m.de>
---
 package/kernel/leds-gca230718/src/leds-gca230718.c | 27 ++++++----------------
 1 file changed, 7 insertions(+), 20 deletions(-)

diff --git a/package/kernel/leds-gca230718/src/leds-gca230718.c b/package/kernel/leds-gca230718/src/leds-gca230718.c
index 7467e35ac6..4cfa205203 100644
--- a/package/kernel/leds-gca230718/src/leds-gca230718.c
+++ b/package/kernel/leds-gca230718/src/leds-gca230718.c
@@ -39,14 +39,6 @@ struct gca230718_private {
 	struct gca230718_led leds[GCA230718_MAX_LEDS];
 };
 
-static void gca230718_init_private_led_data(struct gca230718_private *data)
-{
-	u8 ledIndex;
-	for (ledIndex = 0; ledIndex < GCA230718_MAX_LEDS; ledIndex++) {
-		data->leds[ledIndex].client = NULL;
-	}
-}
-
 static void gca230718_send_sequence(struct i2c_client *client, u8 byte0,
 				    struct gca230718_private *priv)
 {
@@ -114,6 +106,7 @@ static int gca230718_set_brightness(struct led_classdev *led_cdev,
 static int gca230718_probe(struct i2c_client *client)
 {
 	struct gca230718_private *priv;
+	int err;
 
 	pr_info("Enter gca230718_probe for device address %u\n", client->addr);
 	priv = devm_kzalloc(&client->dev, sizeof(struct gca230718_private),
@@ -122,11 +115,14 @@ static int gca230718_probe(struct i2c_client *client)
 		pr_info("Error during allocating memory for private data\n");
 		return -ENOMEM;
 	}
-	struct device_node *ledNode;
-	mutex_init(&priv->lock);
-	gca230718_init_private_led_data(priv);
+
+	err = devm_mutex_init(&client->dev, &priv->lock);
+	if (err)
+		return err;
+
 	i2c_set_clientdata(client, priv);
 
+	struct device_node *ledNode;
 	for_each_child_of_node(client->dev.of_node, ledNode) {
 		u32 regValue = 0;
 		if (of_property_read_u32(ledNode, "reg", &regValue))
@@ -173,14 +169,6 @@ static int gca230718_probe(struct i2c_client *client)
 	return 0;
 }
 
-static void gca230718_remove(struct i2c_client *client)
-{
-	struct gca230718_private *priv;
-	priv = i2c_get_clientdata(client);
-	mutex_destroy(&priv->lock);
-	gca230718_init_private_led_data(priv);
-}
-
 static const struct i2c_device_id gca230718_i2c_ids[] = {
 	{ "gca230718", 0 },
 	{},
@@ -195,7 +183,6 @@ MODULE_DEVICE_TABLE(of, gca230718_dt_ids);
 
 static struct i2c_driver gca230718_driver = {
 	.probe		= gca230718_probe,
-	.remove		= gca230718_remove,
 	.id_table	= gca230718_i2c_ids,
 	.driver = {
 		.name		= KBUILD_MODNAME,




More information about the lede-commits mailing list