diff options
author | Julia Lawall <Julia.Lawall@lip6.fr> | 2018-05-21 11:49:08 +0200 |
---|---|---|
committer | Peter Rosin <peda@axentia.se> | 2018-05-24 13:51:25 +0200 |
commit | b10d7a1fd6fcb16f242ffbd87bf0466b337708d6 (patch) | |
tree | 9b020bb2c0eb843d59471f6b68c9094f0d9b2568 | |
parent | i2c: mux: demux-pinctrl: use proper parent device for demux adapter (diff) | |
download | linux-b10d7a1fd6fcb16f242ffbd87bf0466b337708d6.tar.xz linux-b10d7a1fd6fcb16f242ffbd87bf0466b337708d6.zip |
i2c: mux: pca954x: merge calls to of_match_device and of_device_get_match_data
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: Peter Rosin <peda@axentia.se>
-rw-r--r-- | drivers/i2c/muxes/i2c-mux-pca954x.c | 7 |
1 files changed, 2 insertions, 5 deletions
diff --git a/drivers/i2c/muxes/i2c-mux-pca954x.c b/drivers/i2c/muxes/i2c-mux-pca954x.c index fe20b8ec5247..fbc748027087 100644 --- a/drivers/i2c/muxes/i2c-mux-pca954x.c +++ b/drivers/i2c/muxes/i2c-mux-pca954x.c @@ -374,7 +374,6 @@ static int pca954x_probe(struct i2c_client *client, int num, force, class; struct i2c_mux_core *muxc; struct pca954x *data; - const struct of_device_id *match; int ret; if (!i2c_check_functionality(adap, I2C_FUNC_SMBUS_BYTE)) @@ -401,10 +400,8 @@ static int pca954x_probe(struct i2c_client *client, udelay(1); } - match = of_match_device(of_match_ptr(pca954x_of_match), &client->dev); - if (match) - data->chip = of_device_get_match_data(&client->dev); - else + data->chip = of_device_get_match_data(&client->dev); + if (!data->chip) data->chip = &chips[id->driver_data]; if (data->chip->id.manufacturer_id != I2C_DEVICE_ID_NONE) { |