Add a set of i2c-specific printk helpers that wrap their device-level counterparts and hide the dereferencing of struct device embedded in struct i2c_adapter. This is done in order to allow moving this struct device out of struct i2c_adapter into memory managed by i2c core.
Signed-off-by: Bartosz Golaszewski <[email protected]> --- include/linux/i2c.h | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/include/linux/i2c.h b/include/linux/i2c.h index 20fd41b51d5c85ee1665395c07345faafd8e2fca..2225696c859f617479be4d5c9d304bb32cbf5e9d 100644 --- a/include/linux/i2c.h +++ b/include/linux/i2c.h @@ -768,6 +768,12 @@ struct i2c_adapter { }; #define to_i2c_adapter(d) container_of(d, struct i2c_adapter, dev) +#define i2c_err(adap, fmt, ...) dev_err(&(adap)->dev, fmt, ##__VA_ARGS__) +#define i2c_warn(adap, fmt, ...) dev_warn(&(adap)->dev, fmt, ##__VA_ARGS__) +#define i2c_notice(adap, fmt, ...) dev_notice(&(adap)->dev, fmt, ##__VA_ARGS__) +#define i2c_info(adap, fmt, ...) dev_info(&(adap)->dev, fmt, ##__VA_ARGS__) +#define i2c_dbg(adap, fmt, ...) dev_dbg(&(adap)->dev, fmt, ##__VA_ARGS__) + static inline void *i2c_get_adapdata(const struct i2c_adapter *adap) { return dev_get_drvdata(&adap->dev); -- 2.47.3
