With removal of the legacy eeprom driver the only i2c client device driver with I2C_CLASS_DDC is gone, so it's time to mark I2C_CLASS_DDC as deprecated. Use pr_warn_once, because graphics adapters can have several i2c busses and we may see the warning multiple times otherwise. Note: Driver staging/olpc_dcon declares support for classes HWMON and DDC, but only HWMON is used with the scx200_acb adapter driver on olpc devices. Signed-off-by: Heiner Kallweit <hkallweit1@xxxxxxxxx> --- drivers/i2c/i2c-core-base.c | 4 ++++ include/linux/i2c.h | 2 +- 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/drivers/i2c/i2c-core-base.c b/drivers/i2c/i2c-core-base.c index 60746652f..34b475823 100644 --- a/drivers/i2c/i2c-core-base.c +++ b/drivers/i2c/i2c-core-base.c @@ -1487,6 +1487,10 @@ static int i2c_register_adapter(struct i2c_adapter *adap) goto out_list; } + if (adap->class & I2C_CLASS_DDC) + pr_warn_once("adapter '%s': Probing for class DDC devices is deprecated\n", + adap->name); + if (!adap->lock_ops) adap->lock_ops = &i2c_adapter_lock_ops; diff --git a/include/linux/i2c.h b/include/linux/i2c.h index 0dae9db27..dfbd121b7 100644 --- a/include/linux/i2c.h +++ b/include/linux/i2c.h @@ -850,7 +850,7 @@ static inline void i2c_mark_adapter_resumed(struct i2c_adapter *adap) /* i2c adapter classes (bitmask) */ #define I2C_CLASS_HWMON (1<<0) /* lm_sensors, ... */ -#define I2C_CLASS_DDC (1<<3) /* DDC bus on graphics adapters */ +#define I2C_CLASS_DDC (1<<3) /* Deprecated: DDC bus on graphics adapters */ #define I2C_CLASS_SPD (1<<7) /* Memory modules */ /* Warn users that the adapter doesn't support classes anymore */ #define I2C_CLASS_DEPRECATED (1<<8) -- 2.42.0