mfd: palmas: Use device_get_match_data() to simplify the code
authorye xingchen <ye.xingchen@zte.com.cn>
Thu, 17 Nov 2022 11:52:24 +0000 (19:52 +0800)
committerLee Jones <lee@kernel.org>
Wed, 7 Dec 2022 13:28:16 +0000 (13:28 +0000)
Directly get the match data with device_get_match_data().

Signed-off-by: ye xingchen <ye.xingchen@zte.com.cn>
Signed-off-by: Lee Jones <lee@kernel.org>
Link: https://lore.kernel.org/r/202211171952240424511@zte.com.cn
drivers/mfd/palmas.c

index d26d82c85ba8e6fa3db82a605692806a7fa1e7ab..b8383c6cba3ff9842f4382c4755dc259a06e35e3 100644 (file)
@@ -511,7 +511,6 @@ static int palmas_i2c_probe(struct i2c_client *i2c)
        int ret = 0, i;
        unsigned int reg, addr;
        int slave;
-       const struct of_device_id *match;
 
        pdata = dev_get_platdata(&i2c->dev);
 
@@ -535,12 +534,7 @@ static int palmas_i2c_probe(struct i2c_client *i2c)
        palmas->dev = &i2c->dev;
        palmas->irq = i2c->irq;
 
-       match = of_match_device(of_palmas_match_tbl, &i2c->dev);
-
-       if (!match)
-               return -ENODATA;
-
-       driver_data = (struct palmas_driver_data *)match->data;
+       driver_data = (struct palmas_driver_data *) device_get_match_data(&i2c->dev);
        palmas->features = *driver_data->features;
 
        for (i = 0; i < PALMAS_NUM_CLIENTS; i++) {