コード例 #1
0
ファイル: i2c-core-of.c プロジェクト: Anjali05/linux
/* must call put_device() when done with returned i2c_adapter device */
struct i2c_adapter *of_find_i2c_adapter_by_node(struct device_node *node)
{
	struct device *dev;
	struct i2c_adapter *adapter;

	dev = bus_find_device(&i2c_bus_type, NULL, node,
			      of_dev_or_parent_node_match);
	if (!dev)
		return NULL;

	adapter = i2c_verify_adapter(dev);
	if (!adapter)
		put_device(dev);

	return adapter;
}
コード例 #2
0
ファイル: cmd_i2c.c プロジェクト: 32bitmicro/xvisor
static int i2c_print_dev(struct device *dev, void *data)
{
	struct vmm_chardev *cdev = data;
	struct i2c_adapter *adap = NULL;

	if (NULL != (adap = i2c_verify_adapter(dev))) {
		vmm_cprintf(cdev, " %2d %-16s %-16s", adap->nr, dev->name,
			    "adapter");
	} else {
		vmm_cprintf(cdev, "    %-16s %-16s", dev->name, "client");
	}

	if (dev->parent) {
		vmm_cprintf(cdev, " %-16s\n", dev->parent->name);
	} else {
		vmm_cprintf(cdev, " ----------------\n");
	}

	return 0;
}