summaryrefslogtreecommitdiffstats
path: root/drivers/i2c/i2c-core-base.c
diff options
context:
space:
mode:
authorAndy Shevchenko2017-10-31 15:21:35 +0100
committerWolfram Sang2017-11-02 00:00:28 +0100
commit7b43dd19c9b13a3f5478b9d88a49a5495399ad29 (patch)
tree64b4756358fa79889cd33ea170300faaff3bfcd2 /drivers/i2c/i2c-core-base.c
parenti2c: xgene-slimpro: Support v2 (diff)
downloadkernel-qcow2-linux-7b43dd19c9b13a3f5478b9d88a49a5495399ad29.tar.gz
kernel-qcow2-linux-7b43dd19c9b13a3f5478b9d88a49a5495399ad29.tar.xz
kernel-qcow2-linux-7b43dd19c9b13a3f5478b9d88a49a5495399ad29.zip
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>
Diffstat (limited to '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 7b08f3446bfc..706164b4c5be 100644
--- a/drivers/i2c/i2c-core-base.c
+++ b/drivers/i2c/i2c-core-base.c
@@ -819,6 +819,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);
if (ACPI_COMPANION(&client->dev))
@@ -1436,8 +1438,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;
}