aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAndy Shevchenko <andriy.shevchenko@linux.intel.com>2017-10-31 16:21:35 +0200
committerRyo Kataoka <ryo.kataoka.wt@renesas.com>2019-03-22 20:50:23 +0900
commitae17a13f2667bdeac406e453a75479a559f5896a (patch)
tree9326d95653641f7acf5ada30a2b75c984119d5da
parent0bd03a21d13866cc348c096e5495642ed32b86c3 (diff)
downloadrenesas-bsp-ae17a13f2667bdeac406e453a75479a559f5896a.tar.gz
i2c: Make i2c_unregister_device() NULL-aware
It's a common pattern to be NULL-aware when freeing resources. Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com> Signed-off-by: Wolfram Sang <wsa@the-dreams.de> (cherry picked from commit 7b43dd19c9b13a3f5478b9d88a49a5495399ad29) Signed-off-by: Hiromitsu Yamasaki <hiromitsu.yamasaki.ym@renesas.com> Conflicts: drivers/i2c/i2c-core-base.c
-rw-r--r--drivers/i2c/i2c-core-base.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/drivers/i2c/i2c-core-base.c b/drivers/i2c/i2c-core-base.c
index 8109170c30e197..ecc9c91130ef9b 100644
--- a/drivers/i2c/i2c-core-base.c
+++ b/drivers/i2c/i2c-core-base.c
@@ -871,6 +871,8 @@ EXPORT_SYMBOL_GPL(i2c_new_device);
*/
void i2c_unregister_device(struct i2c_client *client)
{
+ if (!client)
+ return;
if (client->dev.of_node) {
of_node_clear_flag(client->dev.of_node, OF_POPULATED);
of_node_put(client->dev.of_node);
@@ -1483,8 +1485,7 @@ static int __unregister_client(struct device *dev, void *dummy)
static int __unregister_dummy(struct device *dev, void *dummy)
{
struct i2c_client *client = i2c_verify_client(dev);
- if (client)
- i2c_unregister_device(client);
+ i2c_unregister_device(client);
return 0;
}