iio: adc: max1363: merge calls to of_match_device and of_device_get_match_data
authorJulia Lawall <Julia.Lawall@lip6.fr>
Mon, 21 May 2018 09:49:09 +0000 (11:49 +0200)
committerJonathan Cameron <Jonathan.Cameron@huawei.com>
Sun, 8 Jul 2018 09:35:17 +0000 (10:35 +0100)
Drop call to of_match_device, which is subsumed by the subsequent
call to of_device_get_match_data.  The code becomes simpler, and a
temporary variable can be dropped.

The semantic match that makes this change is as follows:
(http://coccinelle.lip6.fr/)

// <smpl>
@r@
local idexpression match;
identifier i;
expression x, dev, e, e1;
@@
-        match@i = of_match_device(x, dev);
-        if (match) e = of_device_get_match_data(dev);
-        else e = e1;
+        e = of_device_get_match_data(dev);
+        if (!e) e = e1;

@@
identifier r.i;
@@
- const struct of_device_id *i;
... when != i
// </smpl>

Signed-off-by: Julia Lawall <Julia.Lawall@lip6.fr>
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
drivers/iio/adc/max1363.c

index 7fb4f525714a154e706a5e70dfbc0438b6308967..a8d35aebee8012b69b088a428a8a8d84508eea91 100644 (file)
@@ -1577,7 +1577,6 @@ static int max1363_probe(struct i2c_client *client,
        struct max1363_state *st;
        struct iio_dev *indio_dev;
        struct regulator *vref;
-       const struct of_device_id *match;
 
        indio_dev = devm_iio_device_alloc(&client->dev,
                                          sizeof(struct max1363_state));
@@ -1604,11 +1603,8 @@ static int max1363_probe(struct i2c_client *client,
        /* this is only used for device removal purposes */
        i2c_set_clientdata(client, indio_dev);
 
-       match = of_match_device(of_match_ptr(max1363_of_match),
-                               &client->dev);
-       if (match)
-               st->chip_info = of_device_get_match_data(&client->dev);
-       else
+       st->chip_info = of_device_get_match_data(&client->dev);
+       if (!st->chip_info)
                st->chip_info = &max1363_chip_info_tbl[id->driver_data];
        st->client = client;