All of lore.kernel.org
 help / color / mirror / Atom feed
From: greg@kroah.com (Greg KH)
To: linux-kernel@vger.kernel.org, sensors@stimpy.netroedge.com
Subject: [PATCH] More i2c driver changes for 2.5.65
Date: Thu, 19 May 2005 06:23:50 +0000	[thread overview]
Message-ID: <1048295086886@kroah.com> (raw)
In-Reply-To: <1048295086481@kroah.com>
In-Reply-To: <1048295086481@kroah.com>

ChangeSet 1.1192, 2003/03/21 16:07:30-08:00, greg@kroah.com

[PATCH] i2c: remove the data field from struct i2c_client

It's no longer needed, as the struct device should be used instead.

Created i2c_get_clientdata() and i2c_set_clientdata() to access the data.


 drivers/i2c/chips/adm1021.c |   15 +++++++--------
 drivers/i2c/chips/lm75.c    |    8 ++++----
 include/linux/i2c.h         |   11 ++++++++++-
 3 files changed, 21 insertions(+), 13 deletions(-)


diff -Nru a/drivers/i2c/chips/adm1021.c b/drivers/i2c/chips/adm1021.c
--- a/drivers/i2c/chips/adm1021.c	Fri Mar 21 16:53:07 2003
+++ b/drivers/i2c/chips/adm1021.c	Fri Mar 21 16:53:07 2003
@@ -223,8 +223,8 @@
 	}
 
 	data = (struct adm1021_data *) (new_client + 1);
+	i2c_set_clientdata(new_client, data);
 	new_client->addr = address;
-	new_client->data = data;
 	new_client->adapter = adapter;
 	new_client->driver = &adm1021_driver;
 	new_client->flags = 0;
@@ -354,8 +354,7 @@
 
 	int err;
 
-	i2c_deregister_entry(((struct adm1021_data *) (client->data))->
-				 sysctl_id);
+	i2c_deregister_entry(((struct adm1021_data *) (i2c_get_clientdata(client)))->sysctl_id);
 
 	if ((err = i2c_detach_client(client))) {
 		printk
@@ -384,7 +383,7 @@
 
 static void adm1021_update_client(struct i2c_client *client)
 {
-	struct adm1021_data *data = client->data;
+	struct adm1021_data *data = i2c_get_clientdata(client);
 
 	down(&data->update_lock);
 
@@ -435,7 +434,7 @@
 static void adm1021_temp(struct i2c_client *client, int operation,
 			 int ctl_name, int *nrels_mag, long *results)
 {
-	struct adm1021_data *data = client->data;
+	struct adm1021_data *data = i2c_get_clientdata(client);
 
 	if (operation = SENSORS_PROC_REAL_INFO)
 		*nrels_mag = 0;
@@ -462,7 +461,7 @@
 static void adm1021_remote_temp(struct i2c_client *client, int operation,
 				int ctl_name, int *nrels_mag, long *results)
 {
-	struct adm1021_data *data = client->data;
+	struct adm1021_data *data = i2c_get_clientdata(client);
 	int prec = 0;
 
 	if (operation = SENSORS_PROC_REAL_INFO)
@@ -535,7 +534,7 @@
 static void adm1021_die_code(struct i2c_client *client, int operation,
 			     int ctl_name, int *nrels_mag, long *results)
 {
-	struct adm1021_data *data = client->data;
+	struct adm1021_data *data = i2c_get_clientdata(client);
 
 	if (operation = SENSORS_PROC_REAL_INFO)
 		*nrels_mag = 0;
@@ -551,7 +550,7 @@
 static void adm1021_alarms(struct i2c_client *client, int operation,
 			   int ctl_name, int *nrels_mag, long *results)
 {
-	struct adm1021_data *data = client->data;
+	struct adm1021_data *data = i2c_get_clientdata(client);
 	if (operation = SENSORS_PROC_REAL_INFO)
 		*nrels_mag = 0;
 	else if (operation = SENSORS_PROC_REAL_READ) {
diff -Nru a/drivers/i2c/chips/lm75.c b/drivers/i2c/chips/lm75.c
--- a/drivers/i2c/chips/lm75.c	Fri Mar 21 16:53:07 2003
+++ b/drivers/i2c/chips/lm75.c	Fri Mar 21 16:53:07 2003
@@ -142,8 +142,8 @@
 	}
 
 	data = (struct lm75_data *) (new_client + 1);
+	i2c_set_clientdata(new_client, data);
 	new_client->addr = address;
-	new_client->data = data;
 	new_client->adapter = adapter;
 	new_client->driver = &lm75_driver;
 	new_client->flags = 0;
@@ -215,7 +215,7 @@
 
 static int lm75_detach_client(struct i2c_client *client)
 {
-	struct lm75_data *data = client->data;
+	struct lm75_data *data = i2c_get_clientdata(client);
 
 	i2c_deregister_entry(data->sysctl_id);
 	i2c_detach_client(client);
@@ -263,7 +263,7 @@
 
 static void lm75_update_client(struct i2c_client *client)
 {
-	struct lm75_data *data = client->data;
+	struct lm75_data *data = i2c_get_clientdata(client);
 
 	down(&data->update_lock);
 
@@ -286,7 +286,7 @@
 static void lm75_temp(struct i2c_client *client, int operation, int ctl_name,
 		      int *nrels_mag, long *results)
 {
-	struct lm75_data *data = client->data;
+	struct lm75_data *data = i2c_get_clientdata(client);
 	if (operation = SENSORS_PROC_REAL_INFO)
 		*nrels_mag = 1;
 	else if (operation = SENSORS_PROC_REAL_READ) {
diff -Nru a/include/linux/i2c.h b/include/linux/i2c.h
--- a/include/linux/i2c.h	Fri Mar 21 16:53:07 2003
+++ b/include/linux/i2c.h	Fri Mar 21 16:53:07 2003
@@ -167,12 +167,21 @@
 	  alignment considerations */
 	struct i2c_adapter *adapter;	/* the adapter we sit on	*/
 	struct i2c_driver *driver;	/* and our access routines	*/
-	void *data;			/* for the clients		*/
 	int usage_count;		/* How many accesses currently  */
 					/* to the client		*/
 	struct device dev;		/* the device structure		*/
 };
 #define to_i2c_client(d) container_of(d, struct i2c_client, dev)
+
+static inline void *i2c_get_clientdata (struct i2c_client *dev)
+{
+	return dev_get_drvdata (&dev->dev);
+}
+
+static inline void i2c_set_clientdata (struct i2c_client *dev, void *data)
+{
+	return dev_set_drvdata (&dev->dev, data);
+}
 
 /*
  * The following structs are for those who like to implement new bus drivers:

WARNING: multiple messages have this Message-ID (diff)
From: Greg KH <greg@kroah.com>
To: linux-kernel@vger.kernel.org, sensors@stimpy.netroedge.com
Subject: Re: [PATCH] More i2c driver changes for 2.5.65
Date: Fri, 21 Mar 2003 17:04 -0800	[thread overview]
Message-ID: <1048295086886@kroah.com> (raw)
In-Reply-To: <1048295086481@kroah.com>

ChangeSet 1.1192, 2003/03/21 16:07:30-08:00, greg@kroah.com

[PATCH] i2c: remove the data field from struct i2c_client

It's no longer needed, as the struct device should be used instead.

Created i2c_get_clientdata() and i2c_set_clientdata() to access the data.


 drivers/i2c/chips/adm1021.c |   15 +++++++--------
 drivers/i2c/chips/lm75.c    |    8 ++++----
 include/linux/i2c.h         |   11 ++++++++++-
 3 files changed, 21 insertions(+), 13 deletions(-)


diff -Nru a/drivers/i2c/chips/adm1021.c b/drivers/i2c/chips/adm1021.c
--- a/drivers/i2c/chips/adm1021.c	Fri Mar 21 16:53:07 2003
+++ b/drivers/i2c/chips/adm1021.c	Fri Mar 21 16:53:07 2003
@@ -223,8 +223,8 @@
 	}
 
 	data = (struct adm1021_data *) (new_client + 1);
+	i2c_set_clientdata(new_client, data);
 	new_client->addr = address;
-	new_client->data = data;
 	new_client->adapter = adapter;
 	new_client->driver = &adm1021_driver;
 	new_client->flags = 0;
@@ -354,8 +354,7 @@
 
 	int err;
 
-	i2c_deregister_entry(((struct adm1021_data *) (client->data))->
-				 sysctl_id);
+	i2c_deregister_entry(((struct adm1021_data *) (i2c_get_clientdata(client)))->sysctl_id);
 
 	if ((err = i2c_detach_client(client))) {
 		printk
@@ -384,7 +383,7 @@
 
 static void adm1021_update_client(struct i2c_client *client)
 {
-	struct adm1021_data *data = client->data;
+	struct adm1021_data *data = i2c_get_clientdata(client);
 
 	down(&data->update_lock);
 
@@ -435,7 +434,7 @@
 static void adm1021_temp(struct i2c_client *client, int operation,
 			 int ctl_name, int *nrels_mag, long *results)
 {
-	struct adm1021_data *data = client->data;
+	struct adm1021_data *data = i2c_get_clientdata(client);
 
 	if (operation == SENSORS_PROC_REAL_INFO)
 		*nrels_mag = 0;
@@ -462,7 +461,7 @@
 static void adm1021_remote_temp(struct i2c_client *client, int operation,
 				int ctl_name, int *nrels_mag, long *results)
 {
-	struct adm1021_data *data = client->data;
+	struct adm1021_data *data = i2c_get_clientdata(client);
 	int prec = 0;
 
 	if (operation == SENSORS_PROC_REAL_INFO)
@@ -535,7 +534,7 @@
 static void adm1021_die_code(struct i2c_client *client, int operation,
 			     int ctl_name, int *nrels_mag, long *results)
 {
-	struct adm1021_data *data = client->data;
+	struct adm1021_data *data = i2c_get_clientdata(client);
 
 	if (operation == SENSORS_PROC_REAL_INFO)
 		*nrels_mag = 0;
@@ -551,7 +550,7 @@
 static void adm1021_alarms(struct i2c_client *client, int operation,
 			   int ctl_name, int *nrels_mag, long *results)
 {
-	struct adm1021_data *data = client->data;
+	struct adm1021_data *data = i2c_get_clientdata(client);
 	if (operation == SENSORS_PROC_REAL_INFO)
 		*nrels_mag = 0;
 	else if (operation == SENSORS_PROC_REAL_READ) {
diff -Nru a/drivers/i2c/chips/lm75.c b/drivers/i2c/chips/lm75.c
--- a/drivers/i2c/chips/lm75.c	Fri Mar 21 16:53:07 2003
+++ b/drivers/i2c/chips/lm75.c	Fri Mar 21 16:53:07 2003
@@ -142,8 +142,8 @@
 	}
 
 	data = (struct lm75_data *) (new_client + 1);
+	i2c_set_clientdata(new_client, data);
 	new_client->addr = address;
-	new_client->data = data;
 	new_client->adapter = adapter;
 	new_client->driver = &lm75_driver;
 	new_client->flags = 0;
@@ -215,7 +215,7 @@
 
 static int lm75_detach_client(struct i2c_client *client)
 {
-	struct lm75_data *data = client->data;
+	struct lm75_data *data = i2c_get_clientdata(client);
 
 	i2c_deregister_entry(data->sysctl_id);
 	i2c_detach_client(client);
@@ -263,7 +263,7 @@
 
 static void lm75_update_client(struct i2c_client *client)
 {
-	struct lm75_data *data = client->data;
+	struct lm75_data *data = i2c_get_clientdata(client);
 
 	down(&data->update_lock);
 
@@ -286,7 +286,7 @@
 static void lm75_temp(struct i2c_client *client, int operation, int ctl_name,
 		      int *nrels_mag, long *results)
 {
-	struct lm75_data *data = client->data;
+	struct lm75_data *data = i2c_get_clientdata(client);
 	if (operation == SENSORS_PROC_REAL_INFO)
 		*nrels_mag = 1;
 	else if (operation == SENSORS_PROC_REAL_READ) {
diff -Nru a/include/linux/i2c.h b/include/linux/i2c.h
--- a/include/linux/i2c.h	Fri Mar 21 16:53:07 2003
+++ b/include/linux/i2c.h	Fri Mar 21 16:53:07 2003
@@ -167,12 +167,21 @@
 	  alignment considerations */
 	struct i2c_adapter *adapter;	/* the adapter we sit on	*/
 	struct i2c_driver *driver;	/* and our access routines	*/
-	void *data;			/* for the clients		*/
 	int usage_count;		/* How many accesses currently  */
 					/* to the client		*/
 	struct device dev;		/* the device structure		*/
 };
 #define to_i2c_client(d) container_of(d, struct i2c_client, dev)
+
+static inline void *i2c_get_clientdata (struct i2c_client *dev)
+{
+	return dev_get_drvdata (&dev->dev);
+}
+
+static inline void i2c_set_clientdata (struct i2c_client *dev, void *data)
+{
+	return dev_set_drvdata (&dev->dev, data);
+}
 
 /*
  * The following structs are for those who like to implement new bus drivers:


  reply	other threads:[~2005-05-19  6:23 UTC|newest]

Thread overview: 92+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2003-03-22  1:04 [BK PATCH] More i2c driver changes for 2.5.65 Greg KH
2005-05-19  6:23 ` Greg KH
2003-03-22  1:04 ` [PATCH] " Greg KH
2005-05-19  6:23   ` Greg KH
2003-03-22  1:04   ` Greg KH
2005-05-19  6:23     ` Greg KH
2003-03-22  1:04     ` Greg KH
2005-05-19  6:23       ` Greg KH
2003-03-22  1:04       ` Greg KH
2005-05-19  6:23         ` Greg KH
2003-03-22  1:04         ` Greg KH [this message]
2005-05-19  6:23           ` Greg KH
2003-03-22  1:04           ` Greg KH
2005-05-19  6:23             ` Greg KH
2003-03-22  1:04             ` Greg KH
2005-05-19  6:23               ` Greg KH
2003-03-22  1:04               ` Greg KH
2005-05-19  6:23                 ` Greg KH
2003-03-22  1:04                 ` Greg KH
2005-05-19  6:23                   ` Greg KH
2003-03-25  9:35                 ` Pavel Machek
2005-05-19  6:23                   ` Pavel Machek
2003-03-25  1:29                   ` Greg KH
2005-05-19  6:23                     ` Greg KH
2003-03-25  2:04                     ` Dave Jones
2005-05-19  6:23                       ` Dave Jones
2003-03-25  3:34                       ` Greg KH
2005-05-19  6:23                         ` Greg KH
2005-05-19  6:23         ` [PATCH] More i2c driver changes for 2.5.66 Greg KH
2005-05-19  6:23         ` Albert Cranford
2005-05-19  6:23         ` Mark M. Hoffman
2005-05-19  6:23         ` [PATCH] More i2c driver changes for 2.5.69 Philip Pokorny
2003-03-22  2:33     ` [PATCH] More i2c driver changes for 2.5.65 Petr Vandrovec
2005-05-19  6:23       ` Petr Vandrovec
2003-03-23  8:49       ` Greg KH
2005-05-19  6:23         ` Greg KH
  -- strict thread matches above, loose matches on Subject: below --
2003-04-03  0:14 [BK PATCH] More i2c driver changes for 2.5.66 Greg KH
2003-04-03  0:15 ` [PATCH] " Greg KH
2003-04-03  0:15   ` Greg KH
2003-04-03  0:15     ` Greg KH
2003-04-03  0:15       ` Greg KH
2003-04-03  0:15         ` Greg KH
2003-04-03  0:15           ` Greg KH
2005-05-19  6:23             ` Greg KH
2003-04-03  0:15             ` Greg KH
2003-04-03  0:15               ` Greg KH
2005-05-19  6:23                 ` Greg KH
2003-04-03  0:15                 ` Greg KH
2003-04-03  0:15                   ` Greg KH
2003-04-03  0:15                     ` Greg KH
2003-04-03  0:15                       ` Greg KH
2003-04-03  0:15                         ` Greg KH
2003-04-03  0:15                           ` Greg KH
2003-04-03  0:15                             ` Greg KH
2003-04-03  6:21                 ` Albert Cranford
2005-05-19  6:23                   ` Albert Cranford
2003-04-03  6:33                   ` Greg KH
2005-05-19  6:23                     ` Greg KH
2003-04-03 13:06                     ` Albert Cranford
2005-05-19  6:23                       ` Albert Cranford
2003-04-03 16:37                       ` Greg KH
2005-05-19  6:23                         ` Greg KH
2003-05-09 23:55 [BK PATCH] More i2c driver changes for 2.5.69 Greg KH
2005-05-19  6:23 ` Greg KH
2003-05-09 23:56 ` [PATCH] " Greg KH
2005-05-19  6:23   ` Greg KH
2003-05-09 23:56   ` Greg KH
2005-05-19  6:23     ` Greg KH
2003-05-09 23:56     ` Greg KH
2005-05-19  6:23       ` Greg KH
2003-05-09 23:56       ` Greg KH
2005-05-19  6:23         ` Greg KH
2003-05-09 23:56         ` Greg KH
2005-05-19  6:23           ` Greg KH
2003-05-09 23:56           ` Greg KH
2005-05-19  6:23             ` Greg KH
2003-06-11 20:35 [BK PATCH] More i2c driver changes for 2.5.70 Greg KH
2005-05-19  6:23 ` Greg KH
2003-06-11 20:36 ` [PATCH] " Greg KH
2005-05-19  6:23   ` Greg KH
2003-06-11 20:36   ` Greg KH
2005-05-19  6:23     ` Greg KH
2003-06-11 20:36     ` Greg KH
2005-05-19  6:23       ` Greg KH
2003-06-11 20:36       ` Greg KH
2005-05-19  6:23         ` Greg KH
2003-06-11 20:36         ` Greg KH
2005-05-19  6:23           ` Greg KH
2003-06-11 20:36           ` Greg KH
2005-05-19  6:23             ` Greg KH
2003-06-12  2:40   ` Philip Pokorny
2005-05-19  6:23     ` Philip Pokorny

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1048295086886@kroah.com \
    --to=greg@kroah.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=sensors@stimpy.netroedge.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.