i2c: slave: print warning if slave flag not set
authorWolfram Sang <wsa+renesas@sang-engineering.com>
Wed, 5 Aug 2015 19:12:54 +0000 (21:12 +0200)
committerWolfram Sang <wsa@the-dreams.de>
Mon, 24 Aug 2015 12:05:16 +0000 (14:05 +0200)
Address collisions will be rare, but we should let the user know that
slaves have their own address space nonetheless.

Signed-off-by: Wolfram Sang <wsa+renesas@sang-engineering.com>
Signed-off-by: Wolfram Sang <wsa@the-dreams.de>
drivers/i2c/i2c-core.c

index 039817eaecb58f5c6086125d0488ce547159d502..a6780289c61d207085db0b4e61590183816733de 100644 (file)
@@ -3017,6 +3017,10 @@ int i2c_slave_register(struct i2c_client *client, i2c_slave_cb_t slave_cb)
                return -EINVAL;
        }
 
+       if (!(client->flags & I2C_CLIENT_SLAVE))
+               dev_warn(&client->dev, "%s: client slave flag not set. You might see address collisions\n",
+                        __func__);
+
        if (!(client->flags & I2C_CLIENT_TEN)) {
                /* Enforce stricter address checking */
                ret = i2c_check_7bit_addr_validity_strict(client->addr);