Commit 39de8433 authored by Simon Glass's avatar Simon Glass
Browse files

dm: core: Rename driver data function to dev_get_driver_data()



The existing get_get_of_data() function provides access to both the driver's
compatible string and its driver data. However only the latter is actually
useful. Update the interface to reflect this and fix up existing users.
Signed-off-by: default avatarSimon Glass <sjg@chromium.org>
Reviewed-by: default avatarMarek Vasut <marex@denx.de>
parent 3479253d
......@@ -467,9 +467,9 @@ struct udevice *dev_get_parent(struct udevice *child)
return child->parent;
}
ulong dev_get_of_data(struct udevice *dev)
ulong dev_get_driver_data(struct udevice *dev)
{
return dev->of_id->data;
return dev->driver_data;
}
enum uclass_id device_get_uclass_id(struct udevice *dev)
......
......@@ -168,7 +168,7 @@ int lists_bind_fdt(struct udevice *parent, const void *blob, int offset,
dm_warn("Error binding driver '%s'\n", entry->name);
return ret;
} else {
dev->of_id = id;
dev->driver_data = id->data;
found = true;
if (devp)
*devp = dev;
......
......@@ -1348,7 +1348,7 @@ static int s3c_i2c_ofdata_to_platdata(struct udevice *dev)
struct s3c24x0_i2c_bus *i2c_bus = dev_get_priv(dev);
int node, flags;
i2c_bus->is_highspeed = dev->of_id->data;
i2c_bus->is_highspeed = dev_get_driver_data(dev);
node = dev->of_offset;
if (i2c_bus->is_highspeed) {
......
......@@ -338,7 +338,7 @@ static int tegra_i2c_probe(struct udevice *dev)
bool is_dvc;
i2c_bus->id = dev->seq;
i2c_bus->type = dev_get_of_data(dev);
i2c_bus->type = dev_get_driver_data(dev);
i2c_bus->regs = (struct i2c_ctlr *)fdtdec_get_addr(blob, node, "reg");
/*
......@@ -360,7 +360,7 @@ static int tegra_i2c_probe(struct udevice *dev)
if (i2c_bus->periph_id == -1)
return -EINVAL;
is_dvc = dev_get_of_data(dev) == TYPE_DVC;
is_dvc = dev_get_driver_data(dev) == TYPE_DVC;
if (is_dvc) {
i2c_bus->control =
&((struct dvc_ctlr *)i2c_bus->regs)->control;
......@@ -469,7 +469,7 @@ int tegra_i2c_get_dvc_bus(struct udevice **busp)
for (uclass_first_device(UCLASS_I2C, &bus);
bus;
uclass_next_device(&bus)) {
if (dev_get_of_data(bus) == TYPE_DVC) {
if (dev_get_driver_data(bus) == TYPE_DVC) {
*busp = bus;
return 0;
}
......
......@@ -55,7 +55,8 @@ struct driver_info;
* @platdata: Configuration data for this device
* @parent_platdata: The parent bus's configuration data for this device
* @of_offset: Device tree node offset for this device (- for none)
* @of_id: Pointer to the udevice_id structure which created the device
* @driver_data: Driver data word for the entry that matched this device with
* its driver
* @parent: Parent of this device, or NULL for the top level device
* @priv: Private data for this device
* @uclass: Pointer to uclass for this device
......@@ -75,7 +76,7 @@ struct udevice {
void *platdata;
void *parent_platdata;
int of_offset;
const struct udevice_id *of_id;
ulong driver_data;
struct udevice *parent;
void *priv;
struct uclass *uclass;
......@@ -251,13 +252,18 @@ struct udevice *dev_get_parent(struct udevice *child);
void *dev_get_uclass_priv(struct udevice *dev);
/**
* dev_get_of_data() - get the device tree data used to bind a device
* dev_get_driver_data() - get the driver data used to bind a device
*
* When a device is bound using a device tree node, it matches a
* particular compatible string as in struct udevice_id. This function
* returns the associated data value for that compatible string
* returns the associated data value for that compatible string. This is
* the 'data' field in struct udevice_id.
*
* For USB devices, this is the driver_info field in struct usb_device_id.
*
* @dev: Device to check
*/
ulong dev_get_of_data(struct udevice *dev);
ulong dev_get_driver_data(struct udevice *dev);
/*
* device_get_uclass_id() - return the uclass ID of a device
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment