diff options
author | Jean Delvare <khali@linux-fr.org> | 2008-01-27 12:14:48 -0500 |
---|---|---|
committer | Jean Delvare <khali@hyperion.delvare> | 2008-01-27 12:14:48 -0500 |
commit | e48d33193d94175f012c3ed606a1d1e574ed726a (patch) | |
tree | 6bc9c255dbb1dc34b23197bc2d501fc30c9606c1 /drivers/i2c/i2c-core.c | |
parent | bdc511f438f6ca40307e06edda00331e6ac0f813 (diff) |
i2c: Change prototypes of refcounting functions
Use more standard prototypes for i2c_use_client() and
i2c_release_client(). The former now returns a pointer to the client,
and the latter no longer returns anything. This matches what all other
subsystems do.
Signed-off-by: Jean Delvare <khali@linux-fr.org>
Cc: David Brownell <david-b@pacbell.net>
Diffstat (limited to 'drivers/i2c/i2c-core.c')
-rw-r--r-- | drivers/i2c/i2c-core.c | 24 |
1 files changed, 20 insertions, 4 deletions
diff --git a/drivers/i2c/i2c-core.c b/drivers/i2c/i2c-core.c index 9b9d808578b9..f75344ac4663 100644 --- a/drivers/i2c/i2c-core.c +++ b/drivers/i2c/i2c-core.c | |||
@@ -764,17 +764,33 @@ int i2c_detach_client(struct i2c_client *client) | |||
764 | } | 764 | } |
765 | EXPORT_SYMBOL(i2c_detach_client); | 765 | EXPORT_SYMBOL(i2c_detach_client); |
766 | 766 | ||
767 | int i2c_use_client(struct i2c_client *client) | 767 | /** |
768 | * i2c_use_client - increments the reference count of the i2c client structure | ||
769 | * @client: the client being referenced | ||
770 | * | ||
771 | * Each live reference to a client should be refcounted. The driver model does | ||
772 | * that automatically as part of driver binding, so that most drivers don't | ||
773 | * need to do this explicitly: they hold a reference until they're unbound | ||
774 | * from the device. | ||
775 | * | ||
776 | * A pointer to the client with the incremented reference counter is returned. | ||
777 | */ | ||
778 | struct i2c_client *i2c_use_client(struct i2c_client *client) | ||
768 | { | 779 | { |
769 | get_device(&client->dev); | 780 | get_device(&client->dev); |
770 | return 0; | 781 | return client; |
771 | } | 782 | } |
772 | EXPORT_SYMBOL(i2c_use_client); | 783 | EXPORT_SYMBOL(i2c_use_client); |
773 | 784 | ||
774 | int i2c_release_client(struct i2c_client *client) | 785 | /** |
786 | * i2c_release_client - release a use of the i2c client structure | ||
787 | * @client: the client being no longer referenced | ||
788 | * | ||
789 | * Must be called when a user of a client is finished with it. | ||
790 | */ | ||
791 | void i2c_release_client(struct i2c_client *client) | ||
775 | { | 792 | { |
776 | put_device(&client->dev); | 793 | put_device(&client->dev); |
777 | return 0; | ||
778 | } | 794 | } |
779 | EXPORT_SYMBOL(i2c_release_client); | 795 | EXPORT_SYMBOL(i2c_release_client); |
780 | 796 | ||