#include <dt-bindings/i2c/i2c.h>
#include <linux/device.h>
#include <linux/err.h>
#include <linux/i2c.h>
#include <linux/module.h>
#include <linux/of.h>
#include <linux/of_device.h>
#include <linux/sysfs.h>
#include "i2c-core.h"
int of_i2c_get_board_info(struct device *dev, struct device_node *node,
struct i2c_board_info *info)
{ … }
EXPORT_SYMBOL_GPL(…);
static struct i2c_client *of_i2c_register_device(struct i2c_adapter *adap,
struct device_node *node)
{ … }
void of_i2c_register_devices(struct i2c_adapter *adap)
{ … }
static const struct of_device_id*
i2c_of_match_device_sysfs(const struct of_device_id *matches,
struct i2c_client *client)
{ … }
const struct of_device_id
*i2c_of_match_device(const struct of_device_id *matches,
struct i2c_client *client)
{ … }
EXPORT_SYMBOL_GPL(…);
#if IS_ENABLED(CONFIG_OF_DYNAMIC)
static int of_i2c_notify(struct notifier_block *nb, unsigned long action,
void *arg)
{ … }
struct notifier_block i2c_of_notifier = …;
#endif