i2c: reduce parent checking to a NOOP in non-I2C_MUX case
authorPhil Carmody <phil.carmody@partner.samsung.com>
Wed, 26 Jun 2013 07:56:35 +0000 (10:56 +0300)
committerWolfram Sang <wsa@the-dreams.de>
Wed, 7 Aug 2013 14:58:08 +0000 (16:58 +0200)
In 0826374 - i2c: Multiplexed I2C bus core support
core i2c code increased in size and complexity even when I2C_MUX
wasn't selected.

Turning this check into a constant NULL in the n case lets the
client functions in be simplified too, not needing to include
never-called calls to the mux-specific helpers.

Signed-off-by: Phil Carmody <phil.carmody@partner.samsung.com>
Signed-off-by: Wolfram Sang <wsa@the-dreams.de>
include/linux/i2c.h

index e988fa9..b3c4b8d 100644 (file)
@@ -447,11 +447,13 @@ static inline void i2c_set_adapdata(struct i2c_adapter *dev, void *data)
 static inline struct i2c_adapter *
 i2c_parent_is_i2c_adapter(const struct i2c_adapter *adapter)
 {
+#if IS_ENABLED(I2C_MUX)
        struct device *parent = adapter->dev.parent;
 
        if (parent != NULL && parent->type == &i2c_adapter_type)
                return to_i2c_adapter(parent);
        else
+#endif
                return NULL;
 }