aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/i2c/i2c-core.c
diff options
context:
space:
mode:
authorKay Sievers <kay.sievers@vrfy.org>2009-01-07 08:29:16 -0500
committerJean Delvare <khali@linux-fr.org>2009-01-07 08:29:16 -0500
commit27d9c1838f65cc5a48d7a3e9aed85271e7a2bec8 (patch)
treede96ed352d30562bf73fdd6a4786bf0ccbfac1ad /drivers/i2c/i2c-core.c
parentede6f5aea054d3fb67c78857f7abdee602302043 (diff)
i2c: Replace bus_id with dev_name(), dev_set_name()
This patch is part of a larger patch series which will remove the "char bus_id[20]" name string from struct device. The device name is managed in the kobject anyway, and without any size limitation, and just needlessly copied into "struct device". To set and read the device name dev_name(dev) and dev_set_name(dev) must be used. If your code uses static kobjects, which it shouldn't do, "const char *init_name" can be used to statically provide the name the registered device should have. At registration time, the init_name field is cleared, to enforce the use of dev_name(dev) to access the device name at a later time. We need to get rid of all occurrences of bus_id in the entire tree to be able to enable the new interface. Please apply this patch, and possibly convert any remaining remaining occurrences of bus_id. We want to submit a patch to -next, which will remove bus_id from "struct device", to find the remaining pieces to convert, and finally switch over to the new api, which will remove the 20 bytes array and does no longer have a size limitation. Acked-by: Greg Kroah-Hartman <gregkh@suse.de> Signed-off-by: Kay Sievers <kay.sievers@vrfy.org> Signed-off-by: Jean Delvare <khali@linux-fr.org>
Diffstat (limited to 'drivers/i2c/i2c-core.c')
-rw-r--r--drivers/i2c/i2c-core.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/drivers/i2c/i2c-core.c b/drivers/i2c/i2c-core.c
index c6a63f46bc15..b1c9abe24c7b 100644
--- a/drivers/i2c/i2c-core.c
+++ b/drivers/i2c/i2c-core.c
@@ -459,7 +459,7 @@ static int i2c_register_adapter(struct i2c_adapter *adap)
459 pr_debug("I2C adapter driver [%s] forgot to specify " 459 pr_debug("I2C adapter driver [%s] forgot to specify "
460 "physical device\n", adap->name); 460 "physical device\n", adap->name);
461 } 461 }
462 sprintf(adap->dev.bus_id, "i2c-%d", adap->nr); 462 dev_set_name(&adap->dev, "i2c-%d", adap->nr);
463 adap->dev.release = &i2c_adapter_dev_release; 463 adap->dev.release = &i2c_adapter_dev_release;
464 adap->dev.class = &i2c_adapter_class; 464 adap->dev.class = &i2c_adapter_class;
465 res = device_register(&adap->dev); 465 res = device_register(&adap->dev);
@@ -845,8 +845,8 @@ int i2c_attach_client(struct i2c_client *client)
845 } else 845 } else
846 client->dev.release = i2c_client_dev_release; 846 client->dev.release = i2c_client_dev_release;
847 847
848 snprintf(&client->dev.bus_id[0], sizeof(client->dev.bus_id), 848 dev_set_name(&client->dev, "%d-%04x", i2c_adapter_id(adapter),
849 "%d-%04x", i2c_adapter_id(adapter), client->addr); 849 client->addr);
850 res = device_register(&client->dev); 850 res = device_register(&client->dev);
851 if (res) 851 if (res)
852 goto out_err; 852 goto out_err;
@@ -856,7 +856,7 @@ int i2c_attach_client(struct i2c_client *client)
856 mutex_unlock(&adapter->clist_lock); 856 mutex_unlock(&adapter->clist_lock);
857 857
858 dev_dbg(&adapter->dev, "client [%s] registered with bus id %s\n", 858 dev_dbg(&adapter->dev, "client [%s] registered with bus id %s\n",
859 client->name, client->dev.bus_id); 859 client->name, dev_name(&client->dev));
860 860
861 if (adapter->client_register) { 861 if (adapter->client_register) {
862 if (adapter->client_register(client)) { 862 if (adapter->client_register(client)) {