All of lore.kernel.org
 help / color / mirror / Atom feed
diff for duplicates of <25381867050517034249286eae@mail.gmail.com>

diff --git a/a/1.txt b/N1/1.txt
index 52ea215..a04697f 100644
--- a/a/1.txt
+++ b/N1/1.txt
@@ -1,28 +1,3 @@
 Signed-off-by: Yani Ioannou <yani.ioannou@gmail.com>
 
 ---
--------------- next part --------------
- lm77.c    |   14 ++++++------
- lm78.c    |   36 +++++++++++++++----------------
- lm80.c    |   20 ++++++++---------
- lm83.c    |    6 ++---
- lm85.c    |   72 +++++++++++++++++++++++++++++++-------------------------------
- lm87.c    |   46 +++++++++++++++++++--------------------
- lm90.c    |   12 +++++-----
- lm92.c    |   14 ++++++------
- max1619.c |    6 ++---
- 9 files changed, 113 insertions(+), 113 deletions(-)
-
-
--------------- next part --------------
-A non-text attachment was scrubbed...
-Name: patch-linux-2.6.12-rc4-sysfsdyncallback-deviceattr-update.diff-drivers.diff.2.diff
-Type: text/x-patch
-Size: 41126 bytes
-Desc: not available
-Url : http://lists.lm-sensors.org/pipermail/lm-sensors/attachments/20050517/8e2aa304/patch-linux-2.6.12-rc4-sysfsdyncallback-deviceattr-update.diff-drivers.diff.2.bin
--------------- next part --------------
-_______________________________________________
-lm-sensors mailing list
-lm-sensors@lm-sensors.org
-http://lists.lm-sensors.org/mailman/listinfo/lm-sensors
diff --git a/N1/2.hdr b/N1/2.hdr
new file mode 100644
index 0000000..77f484d
--- /dev/null
+++ b/N1/2.hdr
@@ -0,0 +1,4 @@
+Content-Type: text/plain; 
+	name=patch-linux-2.6.12-rc4-sysfsdyncallback-deviceattr-update.diff-drivers.diff.2.diff.diffstat.txt; charset=us-ascii
+Content-Transfer-Encoding: 7bit
+Content-Disposition: attachment; filename="patch-linux-2.6.12-rc4-sysfsdyncallback-deviceattr-update.diff-drivers.diff.2.diff.diffstat.txt"
diff --git a/N1/2.txt b/N1/2.txt
new file mode 100644
index 0000000..555604d
--- /dev/null
+++ b/N1/2.txt
@@ -0,0 +1,10 @@
+ lm77.c    |   14 ++++++------
+ lm78.c    |   36 +++++++++++++++----------------
+ lm80.c    |   20 ++++++++---------
+ lm83.c    |    6 ++---
+ lm85.c    |   72 +++++++++++++++++++++++++++++++-------------------------------
+ lm87.c    |   46 +++++++++++++++++++--------------------
+ lm90.c    |   12 +++++-----
+ lm92.c    |   14 ++++++------
+ max1619.c |    6 ++---
+ 9 files changed, 113 insertions(+), 113 deletions(-)
diff --git a/N1/3.hdr b/N1/3.hdr
new file mode 100644
index 0000000..6816d7c
--- /dev/null
+++ b/N1/3.hdr
@@ -0,0 +1,4 @@
+Content-Type: text/x-patch; 
+	name=patch-linux-2.6.12-rc4-sysfsdyncallback-deviceattr-update.diff-drivers.diff.2.diff; charset=us-ascii
+Content-Transfer-Encoding: 7bit
+Content-Disposition: attachment; filename="patch-linux-2.6.12-rc4-sysfsdyncallback-deviceattr-update.diff-drivers.diff.2.diff"
diff --git a/N1/3.txt b/N1/3.txt
new file mode 100644
index 0000000..4cd8efd
--- /dev/null
+++ b/N1/3.txt
@@ -0,0 +1,882 @@
+diff -uprN -X dontdiff linux-2.6.12-rc4-sysfsdyncallback-deviceattr/drivers/i2c/chips/lm77.c linux-2.6.12-rc4-sysfsdyncallback-deviceattr-update/drivers/i2c/chips/lm77.c
+--- linux-2.6.12-rc4-sysfsdyncallback-deviceattr/drivers/i2c/chips/lm77.c	2005-05-16 20:35:33.000000000 -0400
++++ linux-2.6.12-rc4-sysfsdyncallback-deviceattr-update/drivers/i2c/chips/lm77.c	2005-05-16 23:45:52.000000000 -0400
+@@ -103,7 +103,7 @@ static inline int LM77_TEMP_FROM_REG(u16
+ 
+ /* read routines for temperature limits */
+ #define show(value)	\
+-static ssize_t show_##value(struct device *dev, char *buf)	\
++static ssize_t show_##value(struct device *dev, struct device_attribute *attr, char *buf)	\
+ {								\
+ 	struct lm77_data *data = lm77_update_device(dev);	\
+ 	return sprintf(buf, "%d\n", data->value);		\
+@@ -116,17 +116,17 @@ show(temp_max);
+ show(alarms);
+ 
+ /* read routines for hysteresis values */
+-static ssize_t show_temp_crit_hyst(struct device *dev, char *buf)
++static ssize_t show_temp_crit_hyst(struct device *dev, struct device_attribute *attr, char *buf)
+ {
+ 	struct lm77_data *data = lm77_update_device(dev);
+ 	return sprintf(buf, "%d\n", data->temp_crit - data->temp_hyst);
+ }
+-static ssize_t show_temp_min_hyst(struct device *dev, char *buf)
++static ssize_t show_temp_min_hyst(struct device *dev, struct device_attribute *attr, char *buf)
+ {
+ 	struct lm77_data *data = lm77_update_device(dev);
+ 	return sprintf(buf, "%d\n", data->temp_min + data->temp_hyst);
+ }
+-static ssize_t show_temp_max_hyst(struct device *dev, char *buf)
++static ssize_t show_temp_max_hyst(struct device *dev, struct device_attribute *attr, char *buf)
+ {
+ 	struct lm77_data *data = lm77_update_device(dev);
+ 	return sprintf(buf, "%d\n", data->temp_max - data->temp_hyst);
+@@ -134,7 +134,7 @@ static ssize_t show_temp_max_hyst(struct
+ 
+ /* write routines */
+ #define set(value, reg)	\
+-static ssize_t set_##value(struct device *dev, const char *buf, size_t count)	\
++static ssize_t set_##value(struct device *dev, struct device_attribute *attr, const char *buf, size_t count)	\
+ {										\
+ 	struct i2c_client *client = to_i2c_client(dev);				\
+ 	struct lm77_data *data = i2c_get_clientdata(client);			\
+@@ -152,7 +152,7 @@ set(temp_max, LM77_REG_TEMP_MAX);
+ 
+ /* hysteresis is stored as a relative value on the chip, so it has to be
+    converted first */
+-static ssize_t set_temp_crit_hyst(struct device *dev, const char *buf, size_t count)
++static ssize_t set_temp_crit_hyst(struct device *dev, struct device_attribute *attr, const char *buf, size_t count)
+ {
+ 	struct i2c_client *client = to_i2c_client(dev);
+ 	struct lm77_data *data = i2c_get_clientdata(client);
+@@ -167,7 +167,7 @@ static ssize_t set_temp_crit_hyst(struct
+ }
+ 
+ /* preserve hysteresis when setting T_crit */
+-static ssize_t set_temp_crit(struct device *dev, const char *buf, size_t count)
++static ssize_t set_temp_crit(struct device *dev, struct device_attribute *attr, const char *buf, size_t count)
+ {
+ 	struct i2c_client *client = to_i2c_client(dev);
+ 	struct lm77_data *data = i2c_get_clientdata(client);
+diff -uprN -X dontdiff linux-2.6.12-rc4-sysfsdyncallback-deviceattr/drivers/i2c/chips/lm78.c linux-2.6.12-rc4-sysfsdyncallback-deviceattr-update/drivers/i2c/chips/lm78.c
+--- linux-2.6.12-rc4-sysfsdyncallback-deviceattr/drivers/i2c/chips/lm78.c	2005-05-16 20:35:33.000000000 -0400
++++ linux-2.6.12-rc4-sysfsdyncallback-deviceattr-update/drivers/i2c/chips/lm78.c	2005-05-16 23:45:52.000000000 -0400
+@@ -224,28 +224,28 @@ static ssize_t set_in_max(struct device 
+ 	
+ #define show_in_offset(offset)					\
+ static ssize_t							\
+-	show_in##offset (struct device *dev, char *buf)		\
++	show_in##offset (struct device *dev, struct device_attribute *attr, char *buf)		\
+ {								\
+ 	return show_in(dev, buf, offset);			\
+ }								\
+ static DEVICE_ATTR(in##offset##_input, S_IRUGO, 		\
+ 		show_in##offset, NULL);				\
+ static ssize_t							\
+-	show_in##offset##_min (struct device *dev, char *buf)   \
++	show_in##offset##_min (struct device *dev, struct device_attribute *attr, char *buf)   \
+ {								\
+ 	return show_in_min(dev, buf, offset);			\
+ }								\
+ static ssize_t							\
+-	show_in##offset##_max (struct device *dev, char *buf)   \
++	show_in##offset##_max (struct device *dev, struct device_attribute *attr, char *buf)   \
+ {								\
+ 	return show_in_max(dev, buf, offset);			\
+ }								\
+-static ssize_t set_in##offset##_min (struct device *dev,	\
++static ssize_t set_in##offset##_min (struct device *dev, struct device_attribute *attr,	\
+ 		const char *buf, size_t count)			\
+ {								\
+ 	return set_in_min(dev, buf, count, offset);		\
+ }								\
+-static ssize_t set_in##offset##_max (struct device *dev,	\
++static ssize_t set_in##offset##_max (struct device *dev, struct device_attribute *attr,	\
+ 		const char *buf, size_t count)			\
+ {								\
+ 	return set_in_max(dev, buf, count, offset);		\
+@@ -264,19 +264,19 @@ show_in_offset(5);
+ show_in_offset(6);
+ 
+ /* Temperature */
+-static ssize_t show_temp(struct device *dev, char *buf)
++static ssize_t show_temp(struct device *dev, struct device_attribute *attr, char *buf)
+ {
+ 	struct lm78_data *data = lm78_update_device(dev);
+ 	return sprintf(buf, "%d\n", TEMP_FROM_REG(data->temp));
+ }
+ 
+-static ssize_t show_temp_over(struct device *dev, char *buf)
++static ssize_t show_temp_over(struct device *dev, struct device_attribute *attr, char *buf)
+ {
+ 	struct lm78_data *data = lm78_update_device(dev);
+ 	return sprintf(buf, "%d\n", TEMP_FROM_REG(data->temp_over));
+ }
+ 
+-static ssize_t set_temp_over(struct device *dev, const char *buf, size_t count)
++static ssize_t set_temp_over(struct device *dev, struct device_attribute *attr, const char *buf, size_t count)
+ {
+ 	struct i2c_client *client = to_i2c_client(dev);
+ 	struct lm78_data *data = i2c_get_clientdata(client);
+@@ -289,13 +289,13 @@ static ssize_t set_temp_over(struct devi
+ 	return count;
+ }
+ 
+-static ssize_t show_temp_hyst(struct device *dev, char *buf)
++static ssize_t show_temp_hyst(struct device *dev, struct device_attribute *attr, char *buf)
+ {
+ 	struct lm78_data *data = lm78_update_device(dev);
+ 	return sprintf(buf, "%d\n", TEMP_FROM_REG(data->temp_hyst));
+ }
+ 
+-static ssize_t set_temp_hyst(struct device *dev, const char *buf, size_t count)
++static ssize_t set_temp_hyst(struct device *dev, struct device_attribute *attr, const char *buf, size_t count)
+ {
+ 	struct i2c_client *client = to_i2c_client(dev);
+ 	struct lm78_data *data = i2c_get_clientdata(client);
+@@ -398,19 +398,19 @@ static ssize_t set_fan_div(struct device
+ }
+ 
+ #define show_fan_offset(offset)						\
+-static ssize_t show_fan_##offset (struct device *dev, char *buf)	\
++static ssize_t show_fan_##offset (struct device *dev, struct device_attribute *attr, char *buf)	\
+ {									\
+ 	return show_fan(dev, buf, offset - 1);				\
+ }									\
+-static ssize_t show_fan_##offset##_min (struct device *dev, char *buf)  \
++static ssize_t show_fan_##offset##_min (struct device *dev, struct device_attribute *attr, char *buf)  \
+ {									\
+ 	return show_fan_min(dev, buf, offset - 1);			\
+ }									\
+-static ssize_t show_fan_##offset##_div (struct device *dev, char *buf)  \
++static ssize_t show_fan_##offset##_div (struct device *dev, struct device_attribute *attr, char *buf)  \
+ {									\
+ 	return show_fan_div(dev, buf, offset - 1);			\
+ }									\
+-static ssize_t set_fan_##offset##_min (struct device *dev,		\
++static ssize_t set_fan_##offset##_min (struct device *dev, struct device_attribute *attr,		\
+ 		const char *buf, size_t count)				\
+ {									\
+ 	return set_fan_min(dev, buf, count, offset - 1);		\
+@@ -419,13 +419,13 @@ static DEVICE_ATTR(fan##offset##_input, 
+ static DEVICE_ATTR(fan##offset##_min, S_IRUGO | S_IWUSR,		\
+ 		show_fan_##offset##_min, set_fan_##offset##_min);
+ 
+-static ssize_t set_fan_1_div(struct device *dev, const char *buf,
++static ssize_t set_fan_1_div(struct device *dev, struct device_attribute *attr, const char *buf,
+ 		size_t count)
+ {
+ 	return set_fan_div(dev, buf, count, 0) ;
+ }
+ 
+-static ssize_t set_fan_2_div(struct device *dev, const char *buf,
++static ssize_t set_fan_2_div(struct device *dev, struct device_attribute *attr, const char *buf,
+ 		size_t count)
+ {
+ 	return set_fan_div(dev, buf, count, 1) ;
+@@ -443,7 +443,7 @@ static DEVICE_ATTR(fan2_div, S_IRUGO | S
+ static DEVICE_ATTR(fan3_div, S_IRUGO, show_fan_3_div, NULL);
+ 
+ /* VID */
+-static ssize_t show_vid(struct device *dev, char *buf)
++static ssize_t show_vid(struct device *dev, struct device_attribute *attr, char *buf)
+ {
+ 	struct lm78_data *data = lm78_update_device(dev);
+ 	return sprintf(buf, "%d\n", VID_FROM_REG(data->vid));
+@@ -451,7 +451,7 @@ static ssize_t show_vid(struct device *d
+ static DEVICE_ATTR(cpu0_vid, S_IRUGO, show_vid, NULL);
+ 
+ /* Alarms */
+-static ssize_t show_alarms(struct device *dev, char *buf)
++static ssize_t show_alarms(struct device *dev, struct device_attribute *attr, char *buf)
+ {
+ 	struct lm78_data *data = lm78_update_device(dev);
+ 	return sprintf(buf, "%u\n", data->alarms);
+diff -uprN -X dontdiff linux-2.6.12-rc4-sysfsdyncallback-deviceattr/drivers/i2c/chips/lm80.c linux-2.6.12-rc4-sysfsdyncallback-deviceattr-update/drivers/i2c/chips/lm80.c
+--- linux-2.6.12-rc4-sysfsdyncallback-deviceattr/drivers/i2c/chips/lm80.c	2005-05-16 20:35:33.000000000 -0400
++++ linux-2.6.12-rc4-sysfsdyncallback-deviceattr-update/drivers/i2c/chips/lm80.c	2005-05-16 23:45:52.000000000 -0400
+@@ -156,7 +156,7 @@ static struct i2c_driver lm80_driver = {
+  */
+ 
+ #define show_in(suffix, value) \
+-static ssize_t show_in_##suffix(struct device *dev, char *buf) \
++static ssize_t show_in_##suffix(struct device *dev, struct device_attribute *attr, char *buf) \
+ { \
+ 	struct lm80_data *data = lm80_update_device(dev); \
+ 	return sprintf(buf, "%d\n", IN_FROM_REG(data->value)); \
+@@ -184,7 +184,7 @@ show_in(input5, in[5]);
+ show_in(input6, in[6]);
+ 
+ #define set_in(suffix, value, reg) \
+-static ssize_t set_in_##suffix(struct device *dev, const char *buf, \
++static ssize_t set_in_##suffix(struct device *dev, struct device_attribute *attr, const char *buf, \
+ 	size_t count) \
+ { \
+ 	struct i2c_client *client = to_i2c_client(dev); \
+@@ -213,7 +213,7 @@ set_in(max5, in_max[5], LM80_REG_IN_MAX(
+ set_in(max6, in_max[6], LM80_REG_IN_MAX(6));
+ 
+ #define show_fan(suffix, value, div) \
+-static ssize_t show_fan_##suffix(struct device *dev, char *buf) \
++static ssize_t show_fan_##suffix(struct device *dev, struct device_attribute *attr, char *buf) \
+ { \
+ 	struct lm80_data *data = lm80_update_device(dev); \
+ 	return sprintf(buf, "%d\n", FAN_FROM_REG(data->value, \
+@@ -225,7 +225,7 @@ show_fan(input1, fan[0], fan_div[0]);
+ show_fan(input2, fan[1], fan_div[1]);
+ 
+ #define show_fan_div(suffix, value) \
+-static ssize_t show_fan_div##suffix(struct device *dev, char *buf) \
++static ssize_t show_fan_div##suffix(struct device *dev, struct device_attribute *attr, char *buf) \
+ { \
+ 	struct lm80_data *data = lm80_update_device(dev); \
+ 	return sprintf(buf, "%d\n", DIV_FROM_REG(data->value)); \
+@@ -234,7 +234,7 @@ show_fan_div(1, fan_div[0]);
+ show_fan_div(2, fan_div[1]);
+ 
+ #define set_fan(suffix, value, reg, div) \
+-static ssize_t set_fan_##suffix(struct device *dev, const char *buf, \
++static ssize_t set_fan_##suffix(struct device *dev, struct device_attribute *attr, const char *buf, \
+ 	size_t count) \
+ { \
+ 	struct i2c_client *client = to_i2c_client(dev); \
+@@ -292,7 +292,7 @@ static ssize_t set_fan_div(struct device
+ }
+ 
+ #define set_fan_div(number) \
+-static ssize_t set_fan_div##number(struct device *dev, const char *buf, \
++static ssize_t set_fan_div##number(struct device *dev, struct device_attribute *attr, const char *buf, \
+ 	size_t count) \
+ { \
+ 	return set_fan_div(dev, buf, count, number - 1); \
+@@ -300,14 +300,14 @@ static ssize_t set_fan_div##number(struc
+ set_fan_div(1);
+ set_fan_div(2);
+ 
+-static ssize_t show_temp_input1(struct device *dev, char *buf)
++static ssize_t show_temp_input1(struct device *dev, struct device_attribute *attr, char *buf)
+ {
+ 	struct lm80_data *data = lm80_update_device(dev);
+ 	return sprintf(buf, "%ld\n", TEMP_FROM_REG(data->temp));
+ }
+ 
+ #define show_temp(suffix, value) \
+-static ssize_t show_temp_##suffix(struct device *dev, char *buf) \
++static ssize_t show_temp_##suffix(struct device *dev, struct device_attribute *attr, char *buf) \
+ { \
+ 	struct lm80_data *data = lm80_update_device(dev); \
+ 	return sprintf(buf, "%d\n", TEMP_LIMIT_FROM_REG(data->value)); \
+@@ -318,7 +318,7 @@ show_temp(os_max, temp_os_max);
+ show_temp(os_hyst, temp_os_hyst);
+ 
+ #define set_temp(suffix, value, reg) \
+-static ssize_t set_temp_##suffix(struct device *dev, const char *buf, \
++static ssize_t set_temp_##suffix(struct device *dev, struct device_attribute *attr, const char *buf, \
+ 	size_t count) \
+ { \
+ 	struct i2c_client *client = to_i2c_client(dev); \
+@@ -336,7 +336,7 @@ set_temp(hot_hyst, temp_hot_hyst, LM80_R
+ set_temp(os_max, temp_os_max, LM80_REG_TEMP_OS_MAX);
+ set_temp(os_hyst, temp_os_hyst, LM80_REG_TEMP_OS_HYST);
+ 
+-static ssize_t show_alarms(struct device *dev, char *buf)
++static ssize_t show_alarms(struct device *dev, struct device_attribute *attr, char *buf)
+ {
+ 	struct lm80_data *data = lm80_update_device(dev);
+ 	return sprintf(buf, "%u\n", data->alarms);
+diff -uprN -X dontdiff linux-2.6.12-rc4-sysfsdyncallback-deviceattr/drivers/i2c/chips/lm83.c linux-2.6.12-rc4-sysfsdyncallback-deviceattr-update/drivers/i2c/chips/lm83.c
+--- linux-2.6.12-rc4-sysfsdyncallback-deviceattr/drivers/i2c/chips/lm83.c	2005-05-16 20:35:33.000000000 -0400
++++ linux-2.6.12-rc4-sysfsdyncallback-deviceattr-update/drivers/i2c/chips/lm83.c	2005-05-16 23:45:52.000000000 -0400
+@@ -155,7 +155,7 @@ struct lm83_data {
+  */
+ 
+ #define show_temp(suffix, value) \
+-static ssize_t show_temp_##suffix(struct device *dev, char *buf) \
++static ssize_t show_temp_##suffix(struct device *dev, struct device_attribute *attr, char *buf) \
+ { \
+ 	struct lm83_data *data = lm83_update_device(dev); \
+ 	return sprintf(buf, "%d\n", TEMP_FROM_REG(data->value)); \
+@@ -171,7 +171,7 @@ show_temp(high4, temp_high[3]);
+ show_temp(crit, temp_crit);
+ 
+ #define set_temp(suffix, value, reg) \
+-static ssize_t set_temp_##suffix(struct device *dev, const char *buf, \
++static ssize_t set_temp_##suffix(struct device *dev, struct device_attribute *attr, const char *buf, \
+ 	size_t count) \
+ { \
+ 	struct i2c_client *client = to_i2c_client(dev); \
+@@ -190,7 +190,7 @@ set_temp(high3, temp_high[2], LM83_REG_W
+ set_temp(high4, temp_high[3], LM83_REG_W_REMOTE3_HIGH);
+ set_temp(crit, temp_crit, LM83_REG_W_TCRIT);
+ 
+-static ssize_t show_alarms(struct device *dev, char *buf)
++static ssize_t show_alarms(struct device *dev, struct device_attribute *attr, char *buf)
+ {
+ 	struct lm83_data *data = lm83_update_device(dev);
+ 	return sprintf(buf, "%d\n", data->alarms);
+diff -uprN -X dontdiff linux-2.6.12-rc4-sysfsdyncallback-deviceattr/drivers/i2c/chips/lm85.c linux-2.6.12-rc4-sysfsdyncallback-deviceattr-update/drivers/i2c/chips/lm85.c
+--- linux-2.6.12-rc4-sysfsdyncallback-deviceattr/drivers/i2c/chips/lm85.c	2005-05-16 20:35:33.000000000 -0400
++++ linux-2.6.12-rc4-sysfsdyncallback-deviceattr-update/drivers/i2c/chips/lm85.c	2005-05-16 23:45:52.000000000 -0400
+@@ -426,15 +426,15 @@ static ssize_t set_fan_min(struct device
+ }
+ 
+ #define show_fan_offset(offset)						\
+-static ssize_t show_fan_##offset (struct device *dev, char *buf)	\
++static ssize_t show_fan_##offset (struct device *dev, struct device_attribute *attr, char *buf)	\
+ {									\
+ 	return show_fan(dev, buf, offset - 1);				\
+ }									\
+-static ssize_t show_fan_##offset##_min (struct device *dev, char *buf)	\
++static ssize_t show_fan_##offset##_min (struct device *dev, struct device_attribute *attr, char *buf)	\
+ {									\
+ 	return show_fan_min(dev, buf, offset - 1);			\
+ }									\
+-static ssize_t set_fan_##offset##_min (struct device *dev, 		\
++static ssize_t set_fan_##offset##_min (struct device *dev, struct device_attribute *attr, 		\
+ 	const char *buf, size_t count) 					\
+ {									\
+ 	return set_fan_min(dev, buf, count, offset - 1);		\
+@@ -451,7 +451,7 @@ show_fan_offset(4);
+ 
+ /* vid, vrm, alarms */
+ 
+-static ssize_t show_vid_reg(struct device *dev, char *buf)
++static ssize_t show_vid_reg(struct device *dev, struct device_attribute *attr, char *buf)
+ {
+ 	struct lm85_data *data = lm85_update_device(dev);
+ 	return sprintf(buf, "%ld\n", (long) vid_from_reg(data->vid, data->vrm));
+@@ -459,13 +459,13 @@ static ssize_t show_vid_reg(struct devic
+ 
+ static DEVICE_ATTR(cpu0_vid, S_IRUGO, show_vid_reg, NULL);
+ 
+-static ssize_t show_vrm_reg(struct device *dev, char *buf)
++static ssize_t show_vrm_reg(struct device *dev, struct device_attribute *attr, char *buf)
+ {
+ 	struct lm85_data *data = lm85_update_device(dev);
+ 	return sprintf(buf, "%ld\n", (long) data->vrm);
+ }
+ 
+-static ssize_t store_vrm_reg(struct device *dev, const char *buf, size_t count)
++static ssize_t store_vrm_reg(struct device *dev, struct device_attribute *attr, const char *buf, size_t count)
+ {
+ 	struct i2c_client *client = to_i2c_client(dev);
+ 	struct lm85_data *data = i2c_get_clientdata(client);
+@@ -478,7 +478,7 @@ static ssize_t store_vrm_reg(struct devi
+ 
+ static DEVICE_ATTR(vrm, S_IRUGO | S_IWUSR, show_vrm_reg, store_vrm_reg);
+ 
+-static ssize_t show_alarms_reg(struct device *dev, char *buf)
++static ssize_t show_alarms_reg(struct device *dev, struct device_attribute *attr, char *buf)
+ {
+ 	struct lm85_data *data = lm85_update_device(dev);
+ 	return sprintf(buf, "%ld\n", (long) ALARMS_FROM_REG(data->alarms));
+@@ -516,16 +516,16 @@ static ssize_t show_pwm_enable(struct de
+ }
+ 
+ #define show_pwm_reg(offset)						\
+-static ssize_t show_pwm_##offset (struct device *dev, char *buf)	\
++static ssize_t show_pwm_##offset (struct device *dev, struct device_attribute *attr, char *buf)	\
+ {									\
+ 	return show_pwm(dev, buf, offset - 1);				\
+ }									\
+-static ssize_t set_pwm_##offset (struct device *dev,			\
++static ssize_t set_pwm_##offset (struct device *dev, struct device_attribute *attr,			\
+ 				 const char *buf, size_t count)		\
+ {									\
+ 	return set_pwm(dev, buf, count, offset - 1);			\
+ }									\
+-static ssize_t show_pwm_enable##offset (struct device *dev, char *buf)	\
++static ssize_t show_pwm_enable##offset (struct device *dev, struct device_attribute *attr, char *buf)	\
+ {									\
+ 	return show_pwm_enable(dev, buf, offset - 1);			\
+ }									\
+@@ -585,24 +585,24 @@ static ssize_t set_in_max(struct device 
+ 	return count;
+ }
+ #define show_in_reg(offset)						\
+-static ssize_t show_in_##offset (struct device *dev, char *buf)		\
++static ssize_t show_in_##offset (struct device *dev, struct device_attribute *attr, char *buf)		\
+ {									\
+ 	return show_in(dev, buf, offset);				\
+ }									\
+-static ssize_t show_in_##offset##_min (struct device *dev, char *buf)	\
++static ssize_t show_in_##offset##_min (struct device *dev, struct device_attribute *attr, char *buf)	\
+ {									\
+ 	return show_in_min(dev, buf, offset);				\
+ }									\
+-static ssize_t show_in_##offset##_max (struct device *dev, char *buf)	\
++static ssize_t show_in_##offset##_max (struct device *dev, struct device_attribute *attr, char *buf)	\
+ {									\
+ 	return show_in_max(dev, buf, offset);				\
+ }									\
+-static ssize_t set_in_##offset##_min (struct device *dev, 		\
++static ssize_t set_in_##offset##_min (struct device *dev, struct device_attribute *attr, 		\
+ 	const char *buf, size_t count) 					\
+ {									\
+ 	return set_in_min(dev, buf, count, offset);			\
+ }									\
+-static ssize_t set_in_##offset##_max (struct device *dev, 		\
++static ssize_t set_in_##offset##_max (struct device *dev, struct device_attribute *attr, 		\
+ 	const char *buf, size_t count) 					\
+ {									\
+ 	return set_in_max(dev, buf, count, offset);			\
+@@ -666,24 +666,24 @@ static ssize_t set_temp_max(struct devic
+ 	return count;
+ }
+ #define show_temp_reg(offset)						\
+-static ssize_t show_temp_##offset (struct device *dev, char *buf)	\
++static ssize_t show_temp_##offset (struct device *dev, struct device_attribute *attr, char *buf)	\
+ {									\
+ 	return show_temp(dev, buf, offset - 1);				\
+ }									\
+-static ssize_t show_temp_##offset##_min (struct device *dev, char *buf)	\
++static ssize_t show_temp_##offset##_min (struct device *dev, struct device_attribute *attr, char *buf)	\
+ {									\
+ 	return show_temp_min(dev, buf, offset - 1);			\
+ }									\
+-static ssize_t show_temp_##offset##_max (struct device *dev, char *buf)	\
++static ssize_t show_temp_##offset##_max (struct device *dev, struct device_attribute *attr, char *buf)	\
+ {									\
+ 	return show_temp_max(dev, buf, offset - 1);			\
+ }									\
+-static ssize_t set_temp_##offset##_min (struct device *dev, 		\
++static ssize_t set_temp_##offset##_min (struct device *dev, struct device_attribute *attr, 		\
+ 	const char *buf, size_t count) 					\
+ {									\
+ 	return set_temp_min(dev, buf, count, offset - 1);		\
+ }									\
+-static ssize_t set_temp_##offset##_max (struct device *dev, 		\
++static ssize_t set_temp_##offset##_max (struct device *dev, struct device_attribute *attr, 		\
+ 	const char *buf, size_t count) 					\
+ {									\
+ 	return set_temp_max(dev, buf, count, offset - 1);		\
+@@ -786,42 +786,42 @@ static ssize_t set_pwm_auto_pwm_freq(str
+ 	return count;
+ }
+ #define pwm_auto(offset)						\
+-static ssize_t show_pwm##offset##_auto_channels (struct device *dev,	\
++static ssize_t show_pwm##offset##_auto_channels (struct device *dev, struct device_attribute *attr,	\
+ 	char *buf)							\
+ {									\
+ 	return show_pwm_auto_channels(dev, buf, offset - 1);		\
+ }									\
+-static ssize_t set_pwm##offset##_auto_channels (struct device *dev,	\
++static ssize_t set_pwm##offset##_auto_channels (struct device *dev, struct device_attribute *attr,	\
+ 	const char *buf, size_t count)					\
+ {									\
+ 	return set_pwm_auto_channels(dev, buf, count, offset - 1);	\
+ }									\
+-static ssize_t show_pwm##offset##_auto_pwm_min (struct device *dev,	\
++static ssize_t show_pwm##offset##_auto_pwm_min (struct device *dev, struct device_attribute *attr,	\
+ 	char *buf)							\
+ {									\
+ 	return show_pwm_auto_pwm_min(dev, buf, offset - 1);		\
+ }									\
+-static ssize_t set_pwm##offset##_auto_pwm_min (struct device *dev,	\
++static ssize_t set_pwm##offset##_auto_pwm_min (struct device *dev, struct device_attribute *attr,	\
+ 	const char *buf, size_t count)					\
+ {									\
+ 	return set_pwm_auto_pwm_min(dev, buf, count, offset - 1);	\
+ }									\
+-static ssize_t show_pwm##offset##_auto_pwm_minctl (struct device *dev,	\
++static ssize_t show_pwm##offset##_auto_pwm_minctl (struct device *dev, struct device_attribute *attr,	\
+ 	char *buf)							\
+ {									\
+ 	return show_pwm_auto_pwm_minctl(dev, buf, offset - 1);		\
+ }									\
+-static ssize_t set_pwm##offset##_auto_pwm_minctl (struct device *dev,	\
++static ssize_t set_pwm##offset##_auto_pwm_minctl (struct device *dev, struct device_attribute *attr,	\
+ 	const char *buf, size_t count)					\
+ {									\
+ 	return set_pwm_auto_pwm_minctl(dev, buf, count, offset - 1);	\
+ }									\
+-static ssize_t show_pwm##offset##_auto_pwm_freq (struct device *dev,	\
++static ssize_t show_pwm##offset##_auto_pwm_freq (struct device *dev, struct device_attribute *attr,	\
+ 	char *buf)							\
+ {									\
+ 	return show_pwm_auto_pwm_freq(dev, buf, offset - 1);		\
+ }									\
+-static ssize_t set_pwm##offset##_auto_pwm_freq(struct device *dev,	\
++static ssize_t set_pwm##offset##_auto_pwm_freq(struct device *dev, struct device_attribute *attr,	\
+ 	const char *buf, size_t count)					\
+ {									\
+ 	return set_pwm_auto_pwm_freq(dev, buf, count, offset - 1);	\
+@@ -962,42 +962,42 @@ static ssize_t set_temp_auto_temp_crit(s
+ 	return count;
+ }
+ #define temp_auto(offset)						\
+-static ssize_t show_temp##offset##_auto_temp_off (struct device *dev,	\
++static ssize_t show_temp##offset##_auto_temp_off (struct device *dev, struct device_attribute *attr,	\
+ 	char *buf)							\
+ {									\
+ 	return show_temp_auto_temp_off(dev, buf, offset - 1);		\
+ }									\
+-static ssize_t set_temp##offset##_auto_temp_off (struct device *dev,	\
++static ssize_t set_temp##offset##_auto_temp_off (struct device *dev, struct device_attribute *attr,	\
+ 	const char *buf, size_t count)					\
+ {									\
+ 	return set_temp_auto_temp_off(dev, buf, count, offset - 1);	\
+ }									\
+-static ssize_t show_temp##offset##_auto_temp_min (struct device *dev,	\
++static ssize_t show_temp##offset##_auto_temp_min (struct device *dev, struct device_attribute *attr,	\
+ 	char *buf)							\
+ {									\
+ 	return show_temp_auto_temp_min(dev, buf, offset - 1);		\
+ }									\
+-static ssize_t set_temp##offset##_auto_temp_min (struct device *dev,	\
++static ssize_t set_temp##offset##_auto_temp_min (struct device *dev, struct device_attribute *attr,	\
+ 	const char *buf, size_t count)					\
+ {									\
+ 	return set_temp_auto_temp_min(dev, buf, count, offset - 1);	\
+ }									\
+-static ssize_t show_temp##offset##_auto_temp_max (struct device *dev,	\
++static ssize_t show_temp##offset##_auto_temp_max (struct device *dev, struct device_attribute *attr,	\
+ 	char *buf)							\
+ {									\
+ 	return show_temp_auto_temp_max(dev, buf, offset - 1);		\
+ }									\
+-static ssize_t set_temp##offset##_auto_temp_max (struct device *dev,	\
++static ssize_t set_temp##offset##_auto_temp_max (struct device *dev, struct device_attribute *attr,	\
+ 	const char *buf, size_t count)					\
+ {									\
+ 	return set_temp_auto_temp_max(dev, buf, count, offset - 1);	\
+ }									\
+-static ssize_t show_temp##offset##_auto_temp_crit (struct device *dev,	\
++static ssize_t show_temp##offset##_auto_temp_crit (struct device *dev, struct device_attribute *attr,	\
+ 	char *buf)							\
+ {									\
+ 	return show_temp_auto_temp_crit(dev, buf, offset - 1);		\
+ }									\
+-static ssize_t set_temp##offset##_auto_temp_crit (struct device *dev,	\
++static ssize_t set_temp##offset##_auto_temp_crit (struct device *dev, struct device_attribute *attr,	\
+ 	const char *buf, size_t count)					\
+ {									\
+ 	return set_temp_auto_temp_crit(dev, buf, count, offset - 1);	\
+diff -uprN -X dontdiff linux-2.6.12-rc4-sysfsdyncallback-deviceattr/drivers/i2c/chips/lm87.c linux-2.6.12-rc4-sysfsdyncallback-deviceattr-update/drivers/i2c/chips/lm87.c
+--- linux-2.6.12-rc4-sysfsdyncallback-deviceattr/drivers/i2c/chips/lm87.c	2005-05-16 20:35:33.000000000 -0400
++++ linux-2.6.12-rc4-sysfsdyncallback-deviceattr-update/drivers/i2c/chips/lm87.c	2005-05-16 23:45:52.000000000 -0400
+@@ -218,19 +218,19 @@ static inline int lm87_write_value(struc
+ }
+ 
+ #define show_in(offset) \
+-static ssize_t show_in##offset##_input(struct device *dev, char *buf) \
++static ssize_t show_in##offset##_input(struct device *dev, struct device_attribute *attr, char *buf) \
+ { \
+ 	struct lm87_data *data = lm87_update_device(dev); \
+ 	return sprintf(buf, "%u\n", IN_FROM_REG(data->in[offset], \
+ 		       data->in_scale[offset])); \
+ } \
+-static ssize_t show_in##offset##_min(struct device *dev, char *buf) \
++static ssize_t show_in##offset##_min(struct device *dev, struct device_attribute *attr, char *buf) \
+ { \
+ 	struct lm87_data *data = lm87_update_device(dev); \
+ 	return sprintf(buf, "%u\n", IN_FROM_REG(data->in_min[offset], \
+ 		       data->in_scale[offset])); \
+ } \
+-static ssize_t show_in##offset##_max(struct device *dev, char *buf) \
++static ssize_t show_in##offset##_max(struct device *dev, struct device_attribute *attr, char *buf) \
+ { \
+ 	struct lm87_data *data = lm87_update_device(dev); \
+ 	return sprintf(buf, "%u\n", IN_FROM_REG(data->in_max[offset], \
+@@ -274,13 +274,13 @@ static void set_in_max(struct device *de
+ }
+ 
+ #define set_in(offset) \
+-static ssize_t set_in##offset##_min(struct device *dev, \
++static ssize_t set_in##offset##_min(struct device *dev, struct device_attribute *attr, \
+ 		const char *buf, size_t count) \
+ { \
+ 	set_in_min(dev, buf, offset); \
+ 	return count; \
+ } \
+-static ssize_t set_in##offset##_max(struct device *dev, \
++static ssize_t set_in##offset##_max(struct device *dev, struct device_attribute *attr, \
+ 		const char *buf, size_t count) \
+ { \
+ 	set_in_max(dev, buf, offset); \
+@@ -300,17 +300,17 @@ set_in(6);
+ set_in(7);
+ 
+ #define show_temp(offset) \
+-static ssize_t show_temp##offset##_input(struct device *dev, char *buf) \
++static ssize_t show_temp##offset##_input(struct device *dev, struct device_attribute *attr, char *buf) \
+ { \
+ 	struct lm87_data *data = lm87_update_device(dev); \
+ 	return sprintf(buf, "%d\n", TEMP_FROM_REG(data->temp[offset-1])); \
+ } \
+-static ssize_t show_temp##offset##_low(struct device *dev, char *buf) \
++static ssize_t show_temp##offset##_low(struct device *dev, struct device_attribute *attr, char *buf) \
+ { \
+ 	struct lm87_data *data = lm87_update_device(dev); \
+ 	return sprintf(buf, "%d\n", TEMP_FROM_REG(data->temp_low[offset-1])); \
+ } \
+-static ssize_t show_temp##offset##_high(struct device *dev, char *buf) \
++static ssize_t show_temp##offset##_high(struct device *dev, struct device_attribute *attr, char *buf) \
+ { \
+ 	struct lm87_data *data = lm87_update_device(dev); \
+ 	return sprintf(buf, "%d\n", TEMP_FROM_REG(data->temp_high[offset-1])); \
+@@ -346,13 +346,13 @@ static void set_temp_high(struct device 
+ }
+ 
+ #define set_temp(offset) \
+-static ssize_t set_temp##offset##_low(struct device *dev, \
++static ssize_t set_temp##offset##_low(struct device *dev, struct device_attribute *attr, \
+ 		const char *buf, size_t count) \
+ { \
+ 	set_temp_low(dev, buf, offset-1); \
+ 	return count; \
+ } \
+-static ssize_t set_temp##offset##_high(struct device *dev, \
++static ssize_t set_temp##offset##_high(struct device *dev, struct device_attribute *attr, \
+ 		const char *buf, size_t count) \
+ { \
+ 	set_temp_high(dev, buf, offset-1); \
+@@ -366,13 +366,13 @@ set_temp(1);
+ set_temp(2);
+ set_temp(3);
+ 
+-static ssize_t show_temp_crit_int(struct device *dev, char *buf)
++static ssize_t show_temp_crit_int(struct device *dev, struct device_attribute *attr, char *buf)
+ {
+ 	struct lm87_data *data = lm87_update_device(dev);
+ 	return sprintf(buf, "%d\n", TEMP_FROM_REG(data->temp_crit_int));
+ }
+ 
+-static ssize_t show_temp_crit_ext(struct device *dev, char *buf)
++static ssize_t show_temp_crit_ext(struct device *dev, struct device_attribute *attr, char *buf)
+ {
+ 	struct lm87_data *data = lm87_update_device(dev);
+ 	return sprintf(buf, "%d\n", TEMP_FROM_REG(data->temp_crit_ext));
+@@ -383,19 +383,19 @@ static DEVICE_ATTR(temp2_crit, S_IRUGO, 
+ static DEVICE_ATTR(temp3_crit, S_IRUGO, show_temp_crit_ext, NULL);
+ 
+ #define show_fan(offset) \
+-static ssize_t show_fan##offset##_input(struct device *dev, char *buf) \
++static ssize_t show_fan##offset##_input(struct device *dev, struct device_attribute *attr, char *buf) \
+ { \
+ 	struct lm87_data *data = lm87_update_device(dev); \
+ 	return sprintf(buf, "%d\n", FAN_FROM_REG(data->fan[offset-1], \
+ 		       FAN_DIV_FROM_REG(data->fan_div[offset-1]))); \
+ } \
+-static ssize_t show_fan##offset##_min(struct device *dev, char *buf) \
++static ssize_t show_fan##offset##_min(struct device *dev, struct device_attribute *attr, char *buf) \
+ { \
+ 	struct lm87_data *data = lm87_update_device(dev); \
+ 	return sprintf(buf, "%d\n", FAN_FROM_REG(data->fan_min[offset-1], \
+ 		       FAN_DIV_FROM_REG(data->fan_div[offset-1]))); \
+ } \
+-static ssize_t show_fan##offset##_div(struct device *dev, char *buf) \
++static ssize_t show_fan##offset##_div(struct device *dev, struct device_attribute *attr, char *buf) \
+ { \
+ 	struct lm87_data *data = lm87_update_device(dev); \
+ 	return sprintf(buf, "%d\n", FAN_DIV_FROM_REG(data->fan_div[offset-1])); \
+@@ -465,13 +465,13 @@ static ssize_t set_fan_div(struct device
+ }
+ 
+ #define set_fan(offset) \
+-static ssize_t set_fan##offset##_min(struct device *dev, const char *buf, \
++static ssize_t set_fan##offset##_min(struct device *dev, struct device_attribute *attr, const char *buf, \
+ 		size_t count) \
+ { \
+ 	set_fan_min(dev, buf, offset-1); \
+ 	return count; \
+ } \
+-static ssize_t set_fan##offset##_div(struct device *dev, const char *buf, \
++static ssize_t set_fan##offset##_div(struct device *dev, struct device_attribute *attr, const char *buf, \
+ 		size_t count) \
+ { \
+ 	return set_fan_div(dev, buf, count, offset-1); \
+@@ -483,26 +483,26 @@ static DEVICE_ATTR(fan##offset##_div, S_
+ set_fan(1);
+ set_fan(2);
+ 
+-static ssize_t show_alarms(struct device *dev, char *buf)
++static ssize_t show_alarms(struct device *dev, struct device_attribute *attr, char *buf)
+ {
+ 	struct lm87_data *data = lm87_update_device(dev);
+ 	return sprintf(buf, "%d\n", data->alarms);
+ }
+ static DEVICE_ATTR(alarms, S_IRUGO, show_alarms, NULL);
+ 
+-static ssize_t show_vid(struct device *dev, char *buf)
++static ssize_t show_vid(struct device *dev, struct device_attribute *attr, char *buf)
+ {
+ 	struct lm87_data *data = lm87_update_device(dev);
+ 	return sprintf(buf, "%d\n", vid_from_reg(data->vid, data->vrm));
+ }
+ static DEVICE_ATTR(cpu0_vid, S_IRUGO, show_vid, NULL);
+ 
+-static ssize_t show_vrm(struct device *dev, char *buf)
++static ssize_t show_vrm(struct device *dev, struct device_attribute *attr, char *buf)
+ {
+ 	struct lm87_data *data = lm87_update_device(dev);
+ 	return sprintf(buf, "%d\n", data->vrm);
+ }
+-static ssize_t set_vrm(struct device *dev, const char *buf, size_t count)
++static ssize_t set_vrm(struct device *dev, struct device_attribute *attr, const char *buf, size_t count)
+ {
+ 	struct i2c_client *client = to_i2c_client(dev);
+ 	struct lm87_data *data = i2c_get_clientdata(client);
+@@ -511,12 +511,12 @@ static ssize_t set_vrm(struct device *de
+ }
+ static DEVICE_ATTR(vrm, S_IRUGO | S_IWUSR, show_vrm, set_vrm);
+ 
+-static ssize_t show_aout(struct device *dev, char *buf)
++static ssize_t show_aout(struct device *dev, struct device_attribute *attr, char *buf)
+ {
+ 	struct lm87_data *data = lm87_update_device(dev);
+ 	return sprintf(buf, "%d\n", AOUT_FROM_REG(data->aout));
+ }
+-static ssize_t set_aout(struct device *dev, const char *buf, size_t count)
++static ssize_t set_aout(struct device *dev, struct device_attribute *attr, const char *buf, size_t count)
+ {
+ 	struct i2c_client *client = to_i2c_client(dev);
+ 	struct lm87_data *data = i2c_get_clientdata(client);
+diff -uprN -X dontdiff linux-2.6.12-rc4-sysfsdyncallback-deviceattr/drivers/i2c/chips/lm90.c linux-2.6.12-rc4-sysfsdyncallback-deviceattr-update/drivers/i2c/chips/lm90.c
+--- linux-2.6.12-rc4-sysfsdyncallback-deviceattr/drivers/i2c/chips/lm90.c	2005-05-16 20:35:33.000000000 -0400
++++ linux-2.6.12-rc4-sysfsdyncallback-deviceattr-update/drivers/i2c/chips/lm90.c	2005-05-16 23:45:52.000000000 -0400
+@@ -218,7 +218,7 @@ struct lm90_data {
+  */
+ 
+ #define show_temp(value, converter) \
+-static ssize_t show_##value(struct device *dev, char *buf) \
++static ssize_t show_##value(struct device *dev, struct device_attribute *attr, char *buf) \
+ { \
+ 	struct lm90_data *data = lm90_update_device(dev); \
+ 	return sprintf(buf, "%d\n", converter(data->value)); \
+@@ -233,7 +233,7 @@ show_temp(temp_crit1, TEMP1_FROM_REG);
+ show_temp(temp_crit2, TEMP1_FROM_REG);
+ 
+ #define set_temp1(value, reg) \
+-static ssize_t set_##value(struct device *dev, const char *buf, \
++static ssize_t set_##value(struct device *dev, struct device_attribute *attr, const char *buf, \
+ 	size_t count) \
+ { \
+ 	struct i2c_client *client = to_i2c_client(dev); \
+@@ -250,7 +250,7 @@ static ssize_t set_##value(struct device
+ 	return count; \
+ }
+ #define set_temp2(value, regh, regl) \
+-static ssize_t set_##value(struct device *dev, const char *buf, \
++static ssize_t set_##value(struct device *dev, struct device_attribute *attr, const char *buf, \
+ 	size_t count) \
+ { \
+ 	struct i2c_client *client = to_i2c_client(dev); \
+@@ -275,7 +275,7 @@ set_temp1(temp_crit1, LM90_REG_W_LOCAL_C
+ set_temp1(temp_crit2, LM90_REG_W_REMOTE_CRIT);
+ 
+ #define show_temp_hyst(value, basereg) \
+-static ssize_t show_##value(struct device *dev, char *buf) \
++static ssize_t show_##value(struct device *dev, struct device_attribute *attr, char *buf) \
+ { \
+ 	struct lm90_data *data = lm90_update_device(dev); \
+ 	return sprintf(buf, "%d\n", TEMP1_FROM_REG(data->basereg) \
+@@ -284,7 +284,7 @@ static ssize_t show_##value(struct devic
+ show_temp_hyst(temp_hyst1, temp_crit1);
+ show_temp_hyst(temp_hyst2, temp_crit2);
+ 
+-static ssize_t set_temp_hyst1(struct device *dev, const char *buf,
++static ssize_t set_temp_hyst1(struct device *dev, struct device_attribute *attr, const char *buf,
+ 	size_t count)
+ {
+ 	struct i2c_client *client = to_i2c_client(dev);
+@@ -300,7 +300,7 @@ static ssize_t set_temp_hyst1(struct dev
+ 	return count;
+ }
+ 
+-static ssize_t show_alarms(struct device *dev, char *buf)
++static ssize_t show_alarms(struct device *dev, struct device_attribute *attr, char *buf)
+ {
+ 	struct lm90_data *data = lm90_update_device(dev);
+ 	return sprintf(buf, "%d\n", data->alarms);
+diff -uprN -X dontdiff linux-2.6.12-rc4-sysfsdyncallback-deviceattr/drivers/i2c/chips/lm92.c linux-2.6.12-rc4-sysfsdyncallback-deviceattr-update/drivers/i2c/chips/lm92.c
+--- linux-2.6.12-rc4-sysfsdyncallback-deviceattr/drivers/i2c/chips/lm92.c	2005-05-16 20:35:33.000000000 -0400
++++ linux-2.6.12-rc4-sysfsdyncallback-deviceattr-update/drivers/i2c/chips/lm92.c	2005-05-16 23:45:52.000000000 -0400
+@@ -140,7 +140,7 @@ static struct lm92_data *lm92_update_dev
+ }
+ 
+ #define show_temp(value) \
+-static ssize_t show_##value(struct device *dev, char *buf) \
++static ssize_t show_##value(struct device *dev, struct device_attribute *attr, char *buf) \
+ { \
+ 	struct lm92_data *data = lm92_update_device(dev); \
+ 	return sprintf(buf, "%d\n", TEMP_FROM_REG(data->value)); \
+@@ -151,7 +151,7 @@ show_temp(temp1_min);
+ show_temp(temp1_max);
+ 
+ #define set_temp(value, reg) \
+-static ssize_t set_##value(struct device *dev, const char *buf, \
++static ssize_t set_##value(struct device *dev, struct device_attribute *attr, const char *buf, \
+ 	size_t count) \
+ { \
+ 	struct i2c_client *client = to_i2c_client(dev); \
+@@ -168,26 +168,26 @@ set_temp(temp1_crit, LM92_REG_TEMP_CRIT)
+ set_temp(temp1_min, LM92_REG_TEMP_LOW);
+ set_temp(temp1_max, LM92_REG_TEMP_HIGH);
+ 
+-static ssize_t show_temp1_crit_hyst(struct device *dev, char *buf)
++static ssize_t show_temp1_crit_hyst(struct device *dev, struct device_attribute *attr, char *buf)
+ {
+ 	struct lm92_data *data = lm92_update_device(dev);
+ 	return sprintf(buf, "%d\n", TEMP_FROM_REG(data->temp1_crit)
+ 		       - TEMP_FROM_REG(data->temp1_hyst));
+ }
+-static ssize_t show_temp1_max_hyst(struct device *dev, char *buf)
++static ssize_t show_temp1_max_hyst(struct device *dev, struct device_attribute *attr, char *buf)
+ {
+ 	struct lm92_data *data = lm92_update_device(dev);
+ 	return sprintf(buf, "%d\n", TEMP_FROM_REG(data->temp1_max)
+ 		       - TEMP_FROM_REG(data->temp1_hyst));
+ }
+-static ssize_t show_temp1_min_hyst(struct device *dev, char *buf)
++static ssize_t show_temp1_min_hyst(struct device *dev, struct device_attribute *attr, char *buf)
+ {
+ 	struct lm92_data *data = lm92_update_device(dev);
+ 	return sprintf(buf, "%d\n", TEMP_FROM_REG(data->temp1_min)
+ 		       + TEMP_FROM_REG(data->temp1_hyst));
+ }
+ 
+-static ssize_t set_temp1_crit_hyst(struct device *dev, const char *buf,
++static ssize_t set_temp1_crit_hyst(struct device *dev, struct device_attribute *attr, const char *buf,
+ 	size_t count)
+ {
+ 	struct i2c_client *client = to_i2c_client(dev);
+@@ -202,7 +202,7 @@ static ssize_t set_temp1_crit_hyst(struc
+ 	return count;
+ }
+ 
+-static ssize_t show_alarms(struct device *dev, char *buf)
++static ssize_t show_alarms(struct device *dev, struct device_attribute *attr, char *buf)
+ {
+ 	struct lm92_data *data = lm92_update_device(dev);
+ 	return sprintf(buf, "%d\n", ALARMS_FROM_REG(data->temp1_input));
+diff -uprN -X dontdiff linux-2.6.12-rc4-sysfsdyncallback-deviceattr/drivers/i2c/chips/max1619.c linux-2.6.12-rc4-sysfsdyncallback-deviceattr-update/drivers/i2c/chips/max1619.c
+--- linux-2.6.12-rc4-sysfsdyncallback-deviceattr/drivers/i2c/chips/max1619.c	2005-05-16 20:35:33.000000000 -0400
++++ linux-2.6.12-rc4-sysfsdyncallback-deviceattr-update/drivers/i2c/chips/max1619.c	2005-05-16 23:45:52.000000000 -0400
+@@ -122,7 +122,7 @@ struct max1619_data {
+  */
+ 
+ #define show_temp(value) \
+-static ssize_t show_##value(struct device *dev, char *buf) \
++static ssize_t show_##value(struct device *dev, struct device_attribute *attr, char *buf) \
+ { \
+ 	struct max1619_data *data = max1619_update_device(dev); \
+ 	return sprintf(buf, "%d\n", TEMP_FROM_REG(data->value)); \
+@@ -135,7 +135,7 @@ show_temp(temp_crit2);
+ show_temp(temp_hyst2);
+ 
+ #define set_temp2(value, reg) \
+-static ssize_t set_##value(struct device *dev, const char *buf, \
++static ssize_t set_##value(struct device *dev, struct device_attribute *attr, const char *buf, \
+ 	size_t count) \
+ { \
+ 	struct i2c_client *client = to_i2c_client(dev); \
+@@ -154,7 +154,7 @@ set_temp2(temp_high2, MAX1619_REG_W_REMO
+ set_temp2(temp_crit2, MAX1619_REG_W_REMOTE_CRIT);
+ set_temp2(temp_hyst2, MAX1619_REG_W_TCRIT_HYST);
+ 
+-static ssize_t show_alarms(struct device *dev, char *buf)
++static ssize_t show_alarms(struct device *dev, struct device_attribute *attr, char *buf)
+ {
+ 	struct max1619_data *data = max1619_update_device(dev);
+ 	return sprintf(buf, "%d\n", data->alarms);
diff --git a/a/content_digest b/N1/content_digest
index 19f8b4a..4a95fdf 100644
--- a/a/content_digest
+++ b/N1/content_digest
@@ -1,15 +1,17 @@
- "From\0yani.ioannou@gmail.com (Yani Ioannou)\0"
- "Subject\0[lm-sensors] [PATCH 2.6.12-rc4 7/15] drivers/i2c/chips/lm77.c -\0"
- "Date\0Thu, 19 May 2005 06:25:58 +0000\0"
+ "From\0Yani Ioannou <yani.ioannou@gmail.com>\0"
+ "Subject\0[PATCH 2.6.12-rc4 7/15] drivers/i2c/chips/lm77.c - max1619.c: update device attribute callbacks\0"
+ "Date\0Tue, 17 May 2005 06:42:03 -0400\0"
  "To\0Greg KH <greg@kroah.com>"
   linux-kernel@vger.kernel.org
  " lm-sensors@lm-sensors.org\0"
- "\00:1\0"
+ "\01:1\0"
  "b\0"
  "Signed-off-by: Yani Ioannou <yani.ioannou@gmail.com>\n"
  "\n"
- "---\n"
- "-------------- next part --------------\n"
+ ---
+ "\01:2\0"
+ "fn\0patch-linux-2.6.12-rc4-sysfsdyncallback-deviceattr-update.diff-drivers.diff.2.diff.diffstat.txt\0"
+ "b\0"
  " lm77.c    |   14 ++++++------\n"
  " lm78.c    |   36 +++++++++++++++----------------\n"
  " lm80.c    |   20 ++++++++---------\n"
@@ -19,20 +21,891 @@
  " lm90.c    |   12 +++++-----\n"
  " lm92.c    |   14 ++++++------\n"
  " max1619.c |    6 ++---\n"
- " 9 files changed, 113 insertions(+), 113 deletions(-)\n"
- "\n"
- "\n"
- "-------------- next part --------------\n"
- "A non-text attachment was scrubbed...\n"
- "Name: patch-linux-2.6.12-rc4-sysfsdyncallback-deviceattr-update.diff-drivers.diff.2.diff\n"
- "Type: text/x-patch\n"
- "Size: 41126 bytes\n"
- "Desc: not available\n"
- "Url : http://lists.lm-sensors.org/pipermail/lm-sensors/attachments/20050517/8e2aa304/patch-linux-2.6.12-rc4-sysfsdyncallback-deviceattr-update.diff-drivers.diff.2.bin\n"
- "-------------- next part --------------\n"
- "_______________________________________________\n"
- "lm-sensors mailing list\n"
- "lm-sensors@lm-sensors.org\n"
- http://lists.lm-sensors.org/mailman/listinfo/lm-sensors
+  9 files changed, 113 insertions(+), 113 deletions(-)
+ "\01:3\0"
+ "fn\0patch-linux-2.6.12-rc4-sysfsdyncallback-deviceattr-update.diff-drivers.diff.2.diff\0"
+ "b\0"
+ "diff -uprN -X dontdiff linux-2.6.12-rc4-sysfsdyncallback-deviceattr/drivers/i2c/chips/lm77.c linux-2.6.12-rc4-sysfsdyncallback-deviceattr-update/drivers/i2c/chips/lm77.c\n"
+ "--- linux-2.6.12-rc4-sysfsdyncallback-deviceattr/drivers/i2c/chips/lm77.c\t2005-05-16 20:35:33.000000000 -0400\n"
+ "+++ linux-2.6.12-rc4-sysfsdyncallback-deviceattr-update/drivers/i2c/chips/lm77.c\t2005-05-16 23:45:52.000000000 -0400\n"
+ "@@ -103,7 +103,7 @@ static inline int LM77_TEMP_FROM_REG(u16\n"
+ " \n"
+ " /* read routines for temperature limits */\n"
+ " #define show(value)\t\\\n"
+ "-static ssize_t show_##value(struct device *dev, char *buf)\t\\\n"
+ "+static ssize_t show_##value(struct device *dev, struct device_attribute *attr, char *buf)\t\\\n"
+ " {\t\t\t\t\t\t\t\t\\\n"
+ " \tstruct lm77_data *data = lm77_update_device(dev);\t\\\n"
+ " \treturn sprintf(buf, \"%d\\n\", data->value);\t\t\\\n"
+ "@@ -116,17 +116,17 @@ show(temp_max);\n"
+ " show(alarms);\n"
+ " \n"
+ " /* read routines for hysteresis values */\n"
+ "-static ssize_t show_temp_crit_hyst(struct device *dev, char *buf)\n"
+ "+static ssize_t show_temp_crit_hyst(struct device *dev, struct device_attribute *attr, char *buf)\n"
+ " {\n"
+ " \tstruct lm77_data *data = lm77_update_device(dev);\n"
+ " \treturn sprintf(buf, \"%d\\n\", data->temp_crit - data->temp_hyst);\n"
+ " }\n"
+ "-static ssize_t show_temp_min_hyst(struct device *dev, char *buf)\n"
+ "+static ssize_t show_temp_min_hyst(struct device *dev, struct device_attribute *attr, char *buf)\n"
+ " {\n"
+ " \tstruct lm77_data *data = lm77_update_device(dev);\n"
+ " \treturn sprintf(buf, \"%d\\n\", data->temp_min + data->temp_hyst);\n"
+ " }\n"
+ "-static ssize_t show_temp_max_hyst(struct device *dev, char *buf)\n"
+ "+static ssize_t show_temp_max_hyst(struct device *dev, struct device_attribute *attr, char *buf)\n"
+ " {\n"
+ " \tstruct lm77_data *data = lm77_update_device(dev);\n"
+ " \treturn sprintf(buf, \"%d\\n\", data->temp_max - data->temp_hyst);\n"
+ "@@ -134,7 +134,7 @@ static ssize_t show_temp_max_hyst(struct\n"
+ " \n"
+ " /* write routines */\n"
+ " #define set(value, reg)\t\\\n"
+ "-static ssize_t set_##value(struct device *dev, const char *buf, size_t count)\t\\\n"
+ "+static ssize_t set_##value(struct device *dev, struct device_attribute *attr, const char *buf, size_t count)\t\\\n"
+ " {\t\t\t\t\t\t\t\t\t\t\\\n"
+ " \tstruct i2c_client *client = to_i2c_client(dev);\t\t\t\t\\\n"
+ " \tstruct lm77_data *data = i2c_get_clientdata(client);\t\t\t\\\n"
+ "@@ -152,7 +152,7 @@ set(temp_max, LM77_REG_TEMP_MAX);\n"
+ " \n"
+ " /* hysteresis is stored as a relative value on the chip, so it has to be\n"
+ "    converted first */\n"
+ "-static ssize_t set_temp_crit_hyst(struct device *dev, const char *buf, size_t count)\n"
+ "+static ssize_t set_temp_crit_hyst(struct device *dev, struct device_attribute *attr, const char *buf, size_t count)\n"
+ " {\n"
+ " \tstruct i2c_client *client = to_i2c_client(dev);\n"
+ " \tstruct lm77_data *data = i2c_get_clientdata(client);\n"
+ "@@ -167,7 +167,7 @@ static ssize_t set_temp_crit_hyst(struct\n"
+ " }\n"
+ " \n"
+ " /* preserve hysteresis when setting T_crit */\n"
+ "-static ssize_t set_temp_crit(struct device *dev, const char *buf, size_t count)\n"
+ "+static ssize_t set_temp_crit(struct device *dev, struct device_attribute *attr, const char *buf, size_t count)\n"
+ " {\n"
+ " \tstruct i2c_client *client = to_i2c_client(dev);\n"
+ " \tstruct lm77_data *data = i2c_get_clientdata(client);\n"
+ "diff -uprN -X dontdiff linux-2.6.12-rc4-sysfsdyncallback-deviceattr/drivers/i2c/chips/lm78.c linux-2.6.12-rc4-sysfsdyncallback-deviceattr-update/drivers/i2c/chips/lm78.c\n"
+ "--- linux-2.6.12-rc4-sysfsdyncallback-deviceattr/drivers/i2c/chips/lm78.c\t2005-05-16 20:35:33.000000000 -0400\n"
+ "+++ linux-2.6.12-rc4-sysfsdyncallback-deviceattr-update/drivers/i2c/chips/lm78.c\t2005-05-16 23:45:52.000000000 -0400\n"
+ "@@ -224,28 +224,28 @@ static ssize_t set_in_max(struct device \n"
+ " \t\n"
+ " #define show_in_offset(offset)\t\t\t\t\t\\\n"
+ " static ssize_t\t\t\t\t\t\t\t\\\n"
+ "-\tshow_in##offset (struct device *dev, char *buf)\t\t\\\n"
+ "+\tshow_in##offset (struct device *dev, struct device_attribute *attr, char *buf)\t\t\\\n"
+ " {\t\t\t\t\t\t\t\t\\\n"
+ " \treturn show_in(dev, buf, offset);\t\t\t\\\n"
+ " }\t\t\t\t\t\t\t\t\\\n"
+ " static DEVICE_ATTR(in##offset##_input, S_IRUGO, \t\t\\\n"
+ " \t\tshow_in##offset, NULL);\t\t\t\t\\\n"
+ " static ssize_t\t\t\t\t\t\t\t\\\n"
+ "-\tshow_in##offset##_min (struct device *dev, char *buf)   \\\n"
+ "+\tshow_in##offset##_min (struct device *dev, struct device_attribute *attr, char *buf)   \\\n"
+ " {\t\t\t\t\t\t\t\t\\\n"
+ " \treturn show_in_min(dev, buf, offset);\t\t\t\\\n"
+ " }\t\t\t\t\t\t\t\t\\\n"
+ " static ssize_t\t\t\t\t\t\t\t\\\n"
+ "-\tshow_in##offset##_max (struct device *dev, char *buf)   \\\n"
+ "+\tshow_in##offset##_max (struct device *dev, struct device_attribute *attr, char *buf)   \\\n"
+ " {\t\t\t\t\t\t\t\t\\\n"
+ " \treturn show_in_max(dev, buf, offset);\t\t\t\\\n"
+ " }\t\t\t\t\t\t\t\t\\\n"
+ "-static ssize_t set_in##offset##_min (struct device *dev,\t\\\n"
+ "+static ssize_t set_in##offset##_min (struct device *dev, struct device_attribute *attr,\t\\\n"
+ " \t\tconst char *buf, size_t count)\t\t\t\\\n"
+ " {\t\t\t\t\t\t\t\t\\\n"
+ " \treturn set_in_min(dev, buf, count, offset);\t\t\\\n"
+ " }\t\t\t\t\t\t\t\t\\\n"
+ "-static ssize_t set_in##offset##_max (struct device *dev,\t\\\n"
+ "+static ssize_t set_in##offset##_max (struct device *dev, struct device_attribute *attr,\t\\\n"
+ " \t\tconst char *buf, size_t count)\t\t\t\\\n"
+ " {\t\t\t\t\t\t\t\t\\\n"
+ " \treturn set_in_max(dev, buf, count, offset);\t\t\\\n"
+ "@@ -264,19 +264,19 @@ show_in_offset(5);\n"
+ " show_in_offset(6);\n"
+ " \n"
+ " /* Temperature */\n"
+ "-static ssize_t show_temp(struct device *dev, char *buf)\n"
+ "+static ssize_t show_temp(struct device *dev, struct device_attribute *attr, char *buf)\n"
+ " {\n"
+ " \tstruct lm78_data *data = lm78_update_device(dev);\n"
+ " \treturn sprintf(buf, \"%d\\n\", TEMP_FROM_REG(data->temp));\n"
+ " }\n"
+ " \n"
+ "-static ssize_t show_temp_over(struct device *dev, char *buf)\n"
+ "+static ssize_t show_temp_over(struct device *dev, struct device_attribute *attr, char *buf)\n"
+ " {\n"
+ " \tstruct lm78_data *data = lm78_update_device(dev);\n"
+ " \treturn sprintf(buf, \"%d\\n\", TEMP_FROM_REG(data->temp_over));\n"
+ " }\n"
+ " \n"
+ "-static ssize_t set_temp_over(struct device *dev, const char *buf, size_t count)\n"
+ "+static ssize_t set_temp_over(struct device *dev, struct device_attribute *attr, const char *buf, size_t count)\n"
+ " {\n"
+ " \tstruct i2c_client *client = to_i2c_client(dev);\n"
+ " \tstruct lm78_data *data = i2c_get_clientdata(client);\n"
+ "@@ -289,13 +289,13 @@ static ssize_t set_temp_over(struct devi\n"
+ " \treturn count;\n"
+ " }\n"
+ " \n"
+ "-static ssize_t show_temp_hyst(struct device *dev, char *buf)\n"
+ "+static ssize_t show_temp_hyst(struct device *dev, struct device_attribute *attr, char *buf)\n"
+ " {\n"
+ " \tstruct lm78_data *data = lm78_update_device(dev);\n"
+ " \treturn sprintf(buf, \"%d\\n\", TEMP_FROM_REG(data->temp_hyst));\n"
+ " }\n"
+ " \n"
+ "-static ssize_t set_temp_hyst(struct device *dev, const char *buf, size_t count)\n"
+ "+static ssize_t set_temp_hyst(struct device *dev, struct device_attribute *attr, const char *buf, size_t count)\n"
+ " {\n"
+ " \tstruct i2c_client *client = to_i2c_client(dev);\n"
+ " \tstruct lm78_data *data = i2c_get_clientdata(client);\n"
+ "@@ -398,19 +398,19 @@ static ssize_t set_fan_div(struct device\n"
+ " }\n"
+ " \n"
+ " #define show_fan_offset(offset)\t\t\t\t\t\t\\\n"
+ "-static ssize_t show_fan_##offset (struct device *dev, char *buf)\t\\\n"
+ "+static ssize_t show_fan_##offset (struct device *dev, struct device_attribute *attr, char *buf)\t\\\n"
+ " {\t\t\t\t\t\t\t\t\t\\\n"
+ " \treturn show_fan(dev, buf, offset - 1);\t\t\t\t\\\n"
+ " }\t\t\t\t\t\t\t\t\t\\\n"
+ "-static ssize_t show_fan_##offset##_min (struct device *dev, char *buf)  \\\n"
+ "+static ssize_t show_fan_##offset##_min (struct device *dev, struct device_attribute *attr, char *buf)  \\\n"
+ " {\t\t\t\t\t\t\t\t\t\\\n"
+ " \treturn show_fan_min(dev, buf, offset - 1);\t\t\t\\\n"
+ " }\t\t\t\t\t\t\t\t\t\\\n"
+ "-static ssize_t show_fan_##offset##_div (struct device *dev, char *buf)  \\\n"
+ "+static ssize_t show_fan_##offset##_div (struct device *dev, struct device_attribute *attr, char *buf)  \\\n"
+ " {\t\t\t\t\t\t\t\t\t\\\n"
+ " \treturn show_fan_div(dev, buf, offset - 1);\t\t\t\\\n"
+ " }\t\t\t\t\t\t\t\t\t\\\n"
+ "-static ssize_t set_fan_##offset##_min (struct device *dev,\t\t\\\n"
+ "+static ssize_t set_fan_##offset##_min (struct device *dev, struct device_attribute *attr,\t\t\\\n"
+ " \t\tconst char *buf, size_t count)\t\t\t\t\\\n"
+ " {\t\t\t\t\t\t\t\t\t\\\n"
+ " \treturn set_fan_min(dev, buf, count, offset - 1);\t\t\\\n"
+ "@@ -419,13 +419,13 @@ static DEVICE_ATTR(fan##offset##_input, \n"
+ " static DEVICE_ATTR(fan##offset##_min, S_IRUGO | S_IWUSR,\t\t\\\n"
+ " \t\tshow_fan_##offset##_min, set_fan_##offset##_min);\n"
+ " \n"
+ "-static ssize_t set_fan_1_div(struct device *dev, const char *buf,\n"
+ "+static ssize_t set_fan_1_div(struct device *dev, struct device_attribute *attr, const char *buf,\n"
+ " \t\tsize_t count)\n"
+ " {\n"
+ " \treturn set_fan_div(dev, buf, count, 0) ;\n"
+ " }\n"
+ " \n"
+ "-static ssize_t set_fan_2_div(struct device *dev, const char *buf,\n"
+ "+static ssize_t set_fan_2_div(struct device *dev, struct device_attribute *attr, const char *buf,\n"
+ " \t\tsize_t count)\n"
+ " {\n"
+ " \treturn set_fan_div(dev, buf, count, 1) ;\n"
+ "@@ -443,7 +443,7 @@ static DEVICE_ATTR(fan2_div, S_IRUGO | S\n"
+ " static DEVICE_ATTR(fan3_div, S_IRUGO, show_fan_3_div, NULL);\n"
+ " \n"
+ " /* VID */\n"
+ "-static ssize_t show_vid(struct device *dev, char *buf)\n"
+ "+static ssize_t show_vid(struct device *dev, struct device_attribute *attr, char *buf)\n"
+ " {\n"
+ " \tstruct lm78_data *data = lm78_update_device(dev);\n"
+ " \treturn sprintf(buf, \"%d\\n\", VID_FROM_REG(data->vid));\n"
+ "@@ -451,7 +451,7 @@ static ssize_t show_vid(struct device *d\n"
+ " static DEVICE_ATTR(cpu0_vid, S_IRUGO, show_vid, NULL);\n"
+ " \n"
+ " /* Alarms */\n"
+ "-static ssize_t show_alarms(struct device *dev, char *buf)\n"
+ "+static ssize_t show_alarms(struct device *dev, struct device_attribute *attr, char *buf)\n"
+ " {\n"
+ " \tstruct lm78_data *data = lm78_update_device(dev);\n"
+ " \treturn sprintf(buf, \"%u\\n\", data->alarms);\n"
+ "diff -uprN -X dontdiff linux-2.6.12-rc4-sysfsdyncallback-deviceattr/drivers/i2c/chips/lm80.c linux-2.6.12-rc4-sysfsdyncallback-deviceattr-update/drivers/i2c/chips/lm80.c\n"
+ "--- linux-2.6.12-rc4-sysfsdyncallback-deviceattr/drivers/i2c/chips/lm80.c\t2005-05-16 20:35:33.000000000 -0400\n"
+ "+++ linux-2.6.12-rc4-sysfsdyncallback-deviceattr-update/drivers/i2c/chips/lm80.c\t2005-05-16 23:45:52.000000000 -0400\n"
+ "@@ -156,7 +156,7 @@ static struct i2c_driver lm80_driver = {\n"
+ "  */\n"
+ " \n"
+ " #define show_in(suffix, value) \\\n"
+ "-static ssize_t show_in_##suffix(struct device *dev, char *buf) \\\n"
+ "+static ssize_t show_in_##suffix(struct device *dev, struct device_attribute *attr, char *buf) \\\n"
+ " { \\\n"
+ " \tstruct lm80_data *data = lm80_update_device(dev); \\\n"
+ " \treturn sprintf(buf, \"%d\\n\", IN_FROM_REG(data->value)); \\\n"
+ "@@ -184,7 +184,7 @@ show_in(input5, in[5]);\n"
+ " show_in(input6, in[6]);\n"
+ " \n"
+ " #define set_in(suffix, value, reg) \\\n"
+ "-static ssize_t set_in_##suffix(struct device *dev, const char *buf, \\\n"
+ "+static ssize_t set_in_##suffix(struct device *dev, struct device_attribute *attr, const char *buf, \\\n"
+ " \tsize_t count) \\\n"
+ " { \\\n"
+ " \tstruct i2c_client *client = to_i2c_client(dev); \\\n"
+ "@@ -213,7 +213,7 @@ set_in(max5, in_max[5], LM80_REG_IN_MAX(\n"
+ " set_in(max6, in_max[6], LM80_REG_IN_MAX(6));\n"
+ " \n"
+ " #define show_fan(suffix, value, div) \\\n"
+ "-static ssize_t show_fan_##suffix(struct device *dev, char *buf) \\\n"
+ "+static ssize_t show_fan_##suffix(struct device *dev, struct device_attribute *attr, char *buf) \\\n"
+ " { \\\n"
+ " \tstruct lm80_data *data = lm80_update_device(dev); \\\n"
+ " \treturn sprintf(buf, \"%d\\n\", FAN_FROM_REG(data->value, \\\n"
+ "@@ -225,7 +225,7 @@ show_fan(input1, fan[0], fan_div[0]);\n"
+ " show_fan(input2, fan[1], fan_div[1]);\n"
+ " \n"
+ " #define show_fan_div(suffix, value) \\\n"
+ "-static ssize_t show_fan_div##suffix(struct device *dev, char *buf) \\\n"
+ "+static ssize_t show_fan_div##suffix(struct device *dev, struct device_attribute *attr, char *buf) \\\n"
+ " { \\\n"
+ " \tstruct lm80_data *data = lm80_update_device(dev); \\\n"
+ " \treturn sprintf(buf, \"%d\\n\", DIV_FROM_REG(data->value)); \\\n"
+ "@@ -234,7 +234,7 @@ show_fan_div(1, fan_div[0]);\n"
+ " show_fan_div(2, fan_div[1]);\n"
+ " \n"
+ " #define set_fan(suffix, value, reg, div) \\\n"
+ "-static ssize_t set_fan_##suffix(struct device *dev, const char *buf, \\\n"
+ "+static ssize_t set_fan_##suffix(struct device *dev, struct device_attribute *attr, const char *buf, \\\n"
+ " \tsize_t count) \\\n"
+ " { \\\n"
+ " \tstruct i2c_client *client = to_i2c_client(dev); \\\n"
+ "@@ -292,7 +292,7 @@ static ssize_t set_fan_div(struct device\n"
+ " }\n"
+ " \n"
+ " #define set_fan_div(number) \\\n"
+ "-static ssize_t set_fan_div##number(struct device *dev, const char *buf, \\\n"
+ "+static ssize_t set_fan_div##number(struct device *dev, struct device_attribute *attr, const char *buf, \\\n"
+ " \tsize_t count) \\\n"
+ " { \\\n"
+ " \treturn set_fan_div(dev, buf, count, number - 1); \\\n"
+ "@@ -300,14 +300,14 @@ static ssize_t set_fan_div##number(struc\n"
+ " set_fan_div(1);\n"
+ " set_fan_div(2);\n"
+ " \n"
+ "-static ssize_t show_temp_input1(struct device *dev, char *buf)\n"
+ "+static ssize_t show_temp_input1(struct device *dev, struct device_attribute *attr, char *buf)\n"
+ " {\n"
+ " \tstruct lm80_data *data = lm80_update_device(dev);\n"
+ " \treturn sprintf(buf, \"%ld\\n\", TEMP_FROM_REG(data->temp));\n"
+ " }\n"
+ " \n"
+ " #define show_temp(suffix, value) \\\n"
+ "-static ssize_t show_temp_##suffix(struct device *dev, char *buf) \\\n"
+ "+static ssize_t show_temp_##suffix(struct device *dev, struct device_attribute *attr, char *buf) \\\n"
+ " { \\\n"
+ " \tstruct lm80_data *data = lm80_update_device(dev); \\\n"
+ " \treturn sprintf(buf, \"%d\\n\", TEMP_LIMIT_FROM_REG(data->value)); \\\n"
+ "@@ -318,7 +318,7 @@ show_temp(os_max, temp_os_max);\n"
+ " show_temp(os_hyst, temp_os_hyst);\n"
+ " \n"
+ " #define set_temp(suffix, value, reg) \\\n"
+ "-static ssize_t set_temp_##suffix(struct device *dev, const char *buf, \\\n"
+ "+static ssize_t set_temp_##suffix(struct device *dev, struct device_attribute *attr, const char *buf, \\\n"
+ " \tsize_t count) \\\n"
+ " { \\\n"
+ " \tstruct i2c_client *client = to_i2c_client(dev); \\\n"
+ "@@ -336,7 +336,7 @@ set_temp(hot_hyst, temp_hot_hyst, LM80_R\n"
+ " set_temp(os_max, temp_os_max, LM80_REG_TEMP_OS_MAX);\n"
+ " set_temp(os_hyst, temp_os_hyst, LM80_REG_TEMP_OS_HYST);\n"
+ " \n"
+ "-static ssize_t show_alarms(struct device *dev, char *buf)\n"
+ "+static ssize_t show_alarms(struct device *dev, struct device_attribute *attr, char *buf)\n"
+ " {\n"
+ " \tstruct lm80_data *data = lm80_update_device(dev);\n"
+ " \treturn sprintf(buf, \"%u\\n\", data->alarms);\n"
+ "diff -uprN -X dontdiff linux-2.6.12-rc4-sysfsdyncallback-deviceattr/drivers/i2c/chips/lm83.c linux-2.6.12-rc4-sysfsdyncallback-deviceattr-update/drivers/i2c/chips/lm83.c\n"
+ "--- linux-2.6.12-rc4-sysfsdyncallback-deviceattr/drivers/i2c/chips/lm83.c\t2005-05-16 20:35:33.000000000 -0400\n"
+ "+++ linux-2.6.12-rc4-sysfsdyncallback-deviceattr-update/drivers/i2c/chips/lm83.c\t2005-05-16 23:45:52.000000000 -0400\n"
+ "@@ -155,7 +155,7 @@ struct lm83_data {\n"
+ "  */\n"
+ " \n"
+ " #define show_temp(suffix, value) \\\n"
+ "-static ssize_t show_temp_##suffix(struct device *dev, char *buf) \\\n"
+ "+static ssize_t show_temp_##suffix(struct device *dev, struct device_attribute *attr, char *buf) \\\n"
+ " { \\\n"
+ " \tstruct lm83_data *data = lm83_update_device(dev); \\\n"
+ " \treturn sprintf(buf, \"%d\\n\", TEMP_FROM_REG(data->value)); \\\n"
+ "@@ -171,7 +171,7 @@ show_temp(high4, temp_high[3]);\n"
+ " show_temp(crit, temp_crit);\n"
+ " \n"
+ " #define set_temp(suffix, value, reg) \\\n"
+ "-static ssize_t set_temp_##suffix(struct device *dev, const char *buf, \\\n"
+ "+static ssize_t set_temp_##suffix(struct device *dev, struct device_attribute *attr, const char *buf, \\\n"
+ " \tsize_t count) \\\n"
+ " { \\\n"
+ " \tstruct i2c_client *client = to_i2c_client(dev); \\\n"
+ "@@ -190,7 +190,7 @@ set_temp(high3, temp_high[2], LM83_REG_W\n"
+ " set_temp(high4, temp_high[3], LM83_REG_W_REMOTE3_HIGH);\n"
+ " set_temp(crit, temp_crit, LM83_REG_W_TCRIT);\n"
+ " \n"
+ "-static ssize_t show_alarms(struct device *dev, char *buf)\n"
+ "+static ssize_t show_alarms(struct device *dev, struct device_attribute *attr, char *buf)\n"
+ " {\n"
+ " \tstruct lm83_data *data = lm83_update_device(dev);\n"
+ " \treturn sprintf(buf, \"%d\\n\", data->alarms);\n"
+ "diff -uprN -X dontdiff linux-2.6.12-rc4-sysfsdyncallback-deviceattr/drivers/i2c/chips/lm85.c linux-2.6.12-rc4-sysfsdyncallback-deviceattr-update/drivers/i2c/chips/lm85.c\n"
+ "--- linux-2.6.12-rc4-sysfsdyncallback-deviceattr/drivers/i2c/chips/lm85.c\t2005-05-16 20:35:33.000000000 -0400\n"
+ "+++ linux-2.6.12-rc4-sysfsdyncallback-deviceattr-update/drivers/i2c/chips/lm85.c\t2005-05-16 23:45:52.000000000 -0400\n"
+ "@@ -426,15 +426,15 @@ static ssize_t set_fan_min(struct device\n"
+ " }\n"
+ " \n"
+ " #define show_fan_offset(offset)\t\t\t\t\t\t\\\n"
+ "-static ssize_t show_fan_##offset (struct device *dev, char *buf)\t\\\n"
+ "+static ssize_t show_fan_##offset (struct device *dev, struct device_attribute *attr, char *buf)\t\\\n"
+ " {\t\t\t\t\t\t\t\t\t\\\n"
+ " \treturn show_fan(dev, buf, offset - 1);\t\t\t\t\\\n"
+ " }\t\t\t\t\t\t\t\t\t\\\n"
+ "-static ssize_t show_fan_##offset##_min (struct device *dev, char *buf)\t\\\n"
+ "+static ssize_t show_fan_##offset##_min (struct device *dev, struct device_attribute *attr, char *buf)\t\\\n"
+ " {\t\t\t\t\t\t\t\t\t\\\n"
+ " \treturn show_fan_min(dev, buf, offset - 1);\t\t\t\\\n"
+ " }\t\t\t\t\t\t\t\t\t\\\n"
+ "-static ssize_t set_fan_##offset##_min (struct device *dev, \t\t\\\n"
+ "+static ssize_t set_fan_##offset##_min (struct device *dev, struct device_attribute *attr, \t\t\\\n"
+ " \tconst char *buf, size_t count) \t\t\t\t\t\\\n"
+ " {\t\t\t\t\t\t\t\t\t\\\n"
+ " \treturn set_fan_min(dev, buf, count, offset - 1);\t\t\\\n"
+ "@@ -451,7 +451,7 @@ show_fan_offset(4);\n"
+ " \n"
+ " /* vid, vrm, alarms */\n"
+ " \n"
+ "-static ssize_t show_vid_reg(struct device *dev, char *buf)\n"
+ "+static ssize_t show_vid_reg(struct device *dev, struct device_attribute *attr, char *buf)\n"
+ " {\n"
+ " \tstruct lm85_data *data = lm85_update_device(dev);\n"
+ " \treturn sprintf(buf, \"%ld\\n\", (long) vid_from_reg(data->vid, data->vrm));\n"
+ "@@ -459,13 +459,13 @@ static ssize_t show_vid_reg(struct devic\n"
+ " \n"
+ " static DEVICE_ATTR(cpu0_vid, S_IRUGO, show_vid_reg, NULL);\n"
+ " \n"
+ "-static ssize_t show_vrm_reg(struct device *dev, char *buf)\n"
+ "+static ssize_t show_vrm_reg(struct device *dev, struct device_attribute *attr, char *buf)\n"
+ " {\n"
+ " \tstruct lm85_data *data = lm85_update_device(dev);\n"
+ " \treturn sprintf(buf, \"%ld\\n\", (long) data->vrm);\n"
+ " }\n"
+ " \n"
+ "-static ssize_t store_vrm_reg(struct device *dev, const char *buf, size_t count)\n"
+ "+static ssize_t store_vrm_reg(struct device *dev, struct device_attribute *attr, const char *buf, size_t count)\n"
+ " {\n"
+ " \tstruct i2c_client *client = to_i2c_client(dev);\n"
+ " \tstruct lm85_data *data = i2c_get_clientdata(client);\n"
+ "@@ -478,7 +478,7 @@ static ssize_t store_vrm_reg(struct devi\n"
+ " \n"
+ " static DEVICE_ATTR(vrm, S_IRUGO | S_IWUSR, show_vrm_reg, store_vrm_reg);\n"
+ " \n"
+ "-static ssize_t show_alarms_reg(struct device *dev, char *buf)\n"
+ "+static ssize_t show_alarms_reg(struct device *dev, struct device_attribute *attr, char *buf)\n"
+ " {\n"
+ " \tstruct lm85_data *data = lm85_update_device(dev);\n"
+ " \treturn sprintf(buf, \"%ld\\n\", (long) ALARMS_FROM_REG(data->alarms));\n"
+ "@@ -516,16 +516,16 @@ static ssize_t show_pwm_enable(struct de\n"
+ " }\n"
+ " \n"
+ " #define show_pwm_reg(offset)\t\t\t\t\t\t\\\n"
+ "-static ssize_t show_pwm_##offset (struct device *dev, char *buf)\t\\\n"
+ "+static ssize_t show_pwm_##offset (struct device *dev, struct device_attribute *attr, char *buf)\t\\\n"
+ " {\t\t\t\t\t\t\t\t\t\\\n"
+ " \treturn show_pwm(dev, buf, offset - 1);\t\t\t\t\\\n"
+ " }\t\t\t\t\t\t\t\t\t\\\n"
+ "-static ssize_t set_pwm_##offset (struct device *dev,\t\t\t\\\n"
+ "+static ssize_t set_pwm_##offset (struct device *dev, struct device_attribute *attr,\t\t\t\\\n"
+ " \t\t\t\t const char *buf, size_t count)\t\t\\\n"
+ " {\t\t\t\t\t\t\t\t\t\\\n"
+ " \treturn set_pwm(dev, buf, count, offset - 1);\t\t\t\\\n"
+ " }\t\t\t\t\t\t\t\t\t\\\n"
+ "-static ssize_t show_pwm_enable##offset (struct device *dev, char *buf)\t\\\n"
+ "+static ssize_t show_pwm_enable##offset (struct device *dev, struct device_attribute *attr, char *buf)\t\\\n"
+ " {\t\t\t\t\t\t\t\t\t\\\n"
+ " \treturn show_pwm_enable(dev, buf, offset - 1);\t\t\t\\\n"
+ " }\t\t\t\t\t\t\t\t\t\\\n"
+ "@@ -585,24 +585,24 @@ static ssize_t set_in_max(struct device \n"
+ " \treturn count;\n"
+ " }\n"
+ " #define show_in_reg(offset)\t\t\t\t\t\t\\\n"
+ "-static ssize_t show_in_##offset (struct device *dev, char *buf)\t\t\\\n"
+ "+static ssize_t show_in_##offset (struct device *dev, struct device_attribute *attr, char *buf)\t\t\\\n"
+ " {\t\t\t\t\t\t\t\t\t\\\n"
+ " \treturn show_in(dev, buf, offset);\t\t\t\t\\\n"
+ " }\t\t\t\t\t\t\t\t\t\\\n"
+ "-static ssize_t show_in_##offset##_min (struct device *dev, char *buf)\t\\\n"
+ "+static ssize_t show_in_##offset##_min (struct device *dev, struct device_attribute *attr, char *buf)\t\\\n"
+ " {\t\t\t\t\t\t\t\t\t\\\n"
+ " \treturn show_in_min(dev, buf, offset);\t\t\t\t\\\n"
+ " }\t\t\t\t\t\t\t\t\t\\\n"
+ "-static ssize_t show_in_##offset##_max (struct device *dev, char *buf)\t\\\n"
+ "+static ssize_t show_in_##offset##_max (struct device *dev, struct device_attribute *attr, char *buf)\t\\\n"
+ " {\t\t\t\t\t\t\t\t\t\\\n"
+ " \treturn show_in_max(dev, buf, offset);\t\t\t\t\\\n"
+ " }\t\t\t\t\t\t\t\t\t\\\n"
+ "-static ssize_t set_in_##offset##_min (struct device *dev, \t\t\\\n"
+ "+static ssize_t set_in_##offset##_min (struct device *dev, struct device_attribute *attr, \t\t\\\n"
+ " \tconst char *buf, size_t count) \t\t\t\t\t\\\n"
+ " {\t\t\t\t\t\t\t\t\t\\\n"
+ " \treturn set_in_min(dev, buf, count, offset);\t\t\t\\\n"
+ " }\t\t\t\t\t\t\t\t\t\\\n"
+ "-static ssize_t set_in_##offset##_max (struct device *dev, \t\t\\\n"
+ "+static ssize_t set_in_##offset##_max (struct device *dev, struct device_attribute *attr, \t\t\\\n"
+ " \tconst char *buf, size_t count) \t\t\t\t\t\\\n"
+ " {\t\t\t\t\t\t\t\t\t\\\n"
+ " \treturn set_in_max(dev, buf, count, offset);\t\t\t\\\n"
+ "@@ -666,24 +666,24 @@ static ssize_t set_temp_max(struct devic\n"
+ " \treturn count;\n"
+ " }\n"
+ " #define show_temp_reg(offset)\t\t\t\t\t\t\\\n"
+ "-static ssize_t show_temp_##offset (struct device *dev, char *buf)\t\\\n"
+ "+static ssize_t show_temp_##offset (struct device *dev, struct device_attribute *attr, char *buf)\t\\\n"
+ " {\t\t\t\t\t\t\t\t\t\\\n"
+ " \treturn show_temp(dev, buf, offset - 1);\t\t\t\t\\\n"
+ " }\t\t\t\t\t\t\t\t\t\\\n"
+ "-static ssize_t show_temp_##offset##_min (struct device *dev, char *buf)\t\\\n"
+ "+static ssize_t show_temp_##offset##_min (struct device *dev, struct device_attribute *attr, char *buf)\t\\\n"
+ " {\t\t\t\t\t\t\t\t\t\\\n"
+ " \treturn show_temp_min(dev, buf, offset - 1);\t\t\t\\\n"
+ " }\t\t\t\t\t\t\t\t\t\\\n"
+ "-static ssize_t show_temp_##offset##_max (struct device *dev, char *buf)\t\\\n"
+ "+static ssize_t show_temp_##offset##_max (struct device *dev, struct device_attribute *attr, char *buf)\t\\\n"
+ " {\t\t\t\t\t\t\t\t\t\\\n"
+ " \treturn show_temp_max(dev, buf, offset - 1);\t\t\t\\\n"
+ " }\t\t\t\t\t\t\t\t\t\\\n"
+ "-static ssize_t set_temp_##offset##_min (struct device *dev, \t\t\\\n"
+ "+static ssize_t set_temp_##offset##_min (struct device *dev, struct device_attribute *attr, \t\t\\\n"
+ " \tconst char *buf, size_t count) \t\t\t\t\t\\\n"
+ " {\t\t\t\t\t\t\t\t\t\\\n"
+ " \treturn set_temp_min(dev, buf, count, offset - 1);\t\t\\\n"
+ " }\t\t\t\t\t\t\t\t\t\\\n"
+ "-static ssize_t set_temp_##offset##_max (struct device *dev, \t\t\\\n"
+ "+static ssize_t set_temp_##offset##_max (struct device *dev, struct device_attribute *attr, \t\t\\\n"
+ " \tconst char *buf, size_t count) \t\t\t\t\t\\\n"
+ " {\t\t\t\t\t\t\t\t\t\\\n"
+ " \treturn set_temp_max(dev, buf, count, offset - 1);\t\t\\\n"
+ "@@ -786,42 +786,42 @@ static ssize_t set_pwm_auto_pwm_freq(str\n"
+ " \treturn count;\n"
+ " }\n"
+ " #define pwm_auto(offset)\t\t\t\t\t\t\\\n"
+ "-static ssize_t show_pwm##offset##_auto_channels (struct device *dev,\t\\\n"
+ "+static ssize_t show_pwm##offset##_auto_channels (struct device *dev, struct device_attribute *attr,\t\\\n"
+ " \tchar *buf)\t\t\t\t\t\t\t\\\n"
+ " {\t\t\t\t\t\t\t\t\t\\\n"
+ " \treturn show_pwm_auto_channels(dev, buf, offset - 1);\t\t\\\n"
+ " }\t\t\t\t\t\t\t\t\t\\\n"
+ "-static ssize_t set_pwm##offset##_auto_channels (struct device *dev,\t\\\n"
+ "+static ssize_t set_pwm##offset##_auto_channels (struct device *dev, struct device_attribute *attr,\t\\\n"
+ " \tconst char *buf, size_t count)\t\t\t\t\t\\\n"
+ " {\t\t\t\t\t\t\t\t\t\\\n"
+ " \treturn set_pwm_auto_channels(dev, buf, count, offset - 1);\t\\\n"
+ " }\t\t\t\t\t\t\t\t\t\\\n"
+ "-static ssize_t show_pwm##offset##_auto_pwm_min (struct device *dev,\t\\\n"
+ "+static ssize_t show_pwm##offset##_auto_pwm_min (struct device *dev, struct device_attribute *attr,\t\\\n"
+ " \tchar *buf)\t\t\t\t\t\t\t\\\n"
+ " {\t\t\t\t\t\t\t\t\t\\\n"
+ " \treturn show_pwm_auto_pwm_min(dev, buf, offset - 1);\t\t\\\n"
+ " }\t\t\t\t\t\t\t\t\t\\\n"
+ "-static ssize_t set_pwm##offset##_auto_pwm_min (struct device *dev,\t\\\n"
+ "+static ssize_t set_pwm##offset##_auto_pwm_min (struct device *dev, struct device_attribute *attr,\t\\\n"
+ " \tconst char *buf, size_t count)\t\t\t\t\t\\\n"
+ " {\t\t\t\t\t\t\t\t\t\\\n"
+ " \treturn set_pwm_auto_pwm_min(dev, buf, count, offset - 1);\t\\\n"
+ " }\t\t\t\t\t\t\t\t\t\\\n"
+ "-static ssize_t show_pwm##offset##_auto_pwm_minctl (struct device *dev,\t\\\n"
+ "+static ssize_t show_pwm##offset##_auto_pwm_minctl (struct device *dev, struct device_attribute *attr,\t\\\n"
+ " \tchar *buf)\t\t\t\t\t\t\t\\\n"
+ " {\t\t\t\t\t\t\t\t\t\\\n"
+ " \treturn show_pwm_auto_pwm_minctl(dev, buf, offset - 1);\t\t\\\n"
+ " }\t\t\t\t\t\t\t\t\t\\\n"
+ "-static ssize_t set_pwm##offset##_auto_pwm_minctl (struct device *dev,\t\\\n"
+ "+static ssize_t set_pwm##offset##_auto_pwm_minctl (struct device *dev, struct device_attribute *attr,\t\\\n"
+ " \tconst char *buf, size_t count)\t\t\t\t\t\\\n"
+ " {\t\t\t\t\t\t\t\t\t\\\n"
+ " \treturn set_pwm_auto_pwm_minctl(dev, buf, count, offset - 1);\t\\\n"
+ " }\t\t\t\t\t\t\t\t\t\\\n"
+ "-static ssize_t show_pwm##offset##_auto_pwm_freq (struct device *dev,\t\\\n"
+ "+static ssize_t show_pwm##offset##_auto_pwm_freq (struct device *dev, struct device_attribute *attr,\t\\\n"
+ " \tchar *buf)\t\t\t\t\t\t\t\\\n"
+ " {\t\t\t\t\t\t\t\t\t\\\n"
+ " \treturn show_pwm_auto_pwm_freq(dev, buf, offset - 1);\t\t\\\n"
+ " }\t\t\t\t\t\t\t\t\t\\\n"
+ "-static ssize_t set_pwm##offset##_auto_pwm_freq(struct device *dev,\t\\\n"
+ "+static ssize_t set_pwm##offset##_auto_pwm_freq(struct device *dev, struct device_attribute *attr,\t\\\n"
+ " \tconst char *buf, size_t count)\t\t\t\t\t\\\n"
+ " {\t\t\t\t\t\t\t\t\t\\\n"
+ " \treturn set_pwm_auto_pwm_freq(dev, buf, count, offset - 1);\t\\\n"
+ "@@ -962,42 +962,42 @@ static ssize_t set_temp_auto_temp_crit(s\n"
+ " \treturn count;\n"
+ " }\n"
+ " #define temp_auto(offset)\t\t\t\t\t\t\\\n"
+ "-static ssize_t show_temp##offset##_auto_temp_off (struct device *dev,\t\\\n"
+ "+static ssize_t show_temp##offset##_auto_temp_off (struct device *dev, struct device_attribute *attr,\t\\\n"
+ " \tchar *buf)\t\t\t\t\t\t\t\\\n"
+ " {\t\t\t\t\t\t\t\t\t\\\n"
+ " \treturn show_temp_auto_temp_off(dev, buf, offset - 1);\t\t\\\n"
+ " }\t\t\t\t\t\t\t\t\t\\\n"
+ "-static ssize_t set_temp##offset##_auto_temp_off (struct device *dev,\t\\\n"
+ "+static ssize_t set_temp##offset##_auto_temp_off (struct device *dev, struct device_attribute *attr,\t\\\n"
+ " \tconst char *buf, size_t count)\t\t\t\t\t\\\n"
+ " {\t\t\t\t\t\t\t\t\t\\\n"
+ " \treturn set_temp_auto_temp_off(dev, buf, count, offset - 1);\t\\\n"
+ " }\t\t\t\t\t\t\t\t\t\\\n"
+ "-static ssize_t show_temp##offset##_auto_temp_min (struct device *dev,\t\\\n"
+ "+static ssize_t show_temp##offset##_auto_temp_min (struct device *dev, struct device_attribute *attr,\t\\\n"
+ " \tchar *buf)\t\t\t\t\t\t\t\\\n"
+ " {\t\t\t\t\t\t\t\t\t\\\n"
+ " \treturn show_temp_auto_temp_min(dev, buf, offset - 1);\t\t\\\n"
+ " }\t\t\t\t\t\t\t\t\t\\\n"
+ "-static ssize_t set_temp##offset##_auto_temp_min (struct device *dev,\t\\\n"
+ "+static ssize_t set_temp##offset##_auto_temp_min (struct device *dev, struct device_attribute *attr,\t\\\n"
+ " \tconst char *buf, size_t count)\t\t\t\t\t\\\n"
+ " {\t\t\t\t\t\t\t\t\t\\\n"
+ " \treturn set_temp_auto_temp_min(dev, buf, count, offset - 1);\t\\\n"
+ " }\t\t\t\t\t\t\t\t\t\\\n"
+ "-static ssize_t show_temp##offset##_auto_temp_max (struct device *dev,\t\\\n"
+ "+static ssize_t show_temp##offset##_auto_temp_max (struct device *dev, struct device_attribute *attr,\t\\\n"
+ " \tchar *buf)\t\t\t\t\t\t\t\\\n"
+ " {\t\t\t\t\t\t\t\t\t\\\n"
+ " \treturn show_temp_auto_temp_max(dev, buf, offset - 1);\t\t\\\n"
+ " }\t\t\t\t\t\t\t\t\t\\\n"
+ "-static ssize_t set_temp##offset##_auto_temp_max (struct device *dev,\t\\\n"
+ "+static ssize_t set_temp##offset##_auto_temp_max (struct device *dev, struct device_attribute *attr,\t\\\n"
+ " \tconst char *buf, size_t count)\t\t\t\t\t\\\n"
+ " {\t\t\t\t\t\t\t\t\t\\\n"
+ " \treturn set_temp_auto_temp_max(dev, buf, count, offset - 1);\t\\\n"
+ " }\t\t\t\t\t\t\t\t\t\\\n"
+ "-static ssize_t show_temp##offset##_auto_temp_crit (struct device *dev,\t\\\n"
+ "+static ssize_t show_temp##offset##_auto_temp_crit (struct device *dev, struct device_attribute *attr,\t\\\n"
+ " \tchar *buf)\t\t\t\t\t\t\t\\\n"
+ " {\t\t\t\t\t\t\t\t\t\\\n"
+ " \treturn show_temp_auto_temp_crit(dev, buf, offset - 1);\t\t\\\n"
+ " }\t\t\t\t\t\t\t\t\t\\\n"
+ "-static ssize_t set_temp##offset##_auto_temp_crit (struct device *dev,\t\\\n"
+ "+static ssize_t set_temp##offset##_auto_temp_crit (struct device *dev, struct device_attribute *attr,\t\\\n"
+ " \tconst char *buf, size_t count)\t\t\t\t\t\\\n"
+ " {\t\t\t\t\t\t\t\t\t\\\n"
+ " \treturn set_temp_auto_temp_crit(dev, buf, count, offset - 1);\t\\\n"
+ "diff -uprN -X dontdiff linux-2.6.12-rc4-sysfsdyncallback-deviceattr/drivers/i2c/chips/lm87.c linux-2.6.12-rc4-sysfsdyncallback-deviceattr-update/drivers/i2c/chips/lm87.c\n"
+ "--- linux-2.6.12-rc4-sysfsdyncallback-deviceattr/drivers/i2c/chips/lm87.c\t2005-05-16 20:35:33.000000000 -0400\n"
+ "+++ linux-2.6.12-rc4-sysfsdyncallback-deviceattr-update/drivers/i2c/chips/lm87.c\t2005-05-16 23:45:52.000000000 -0400\n"
+ "@@ -218,19 +218,19 @@ static inline int lm87_write_value(struc\n"
+ " }\n"
+ " \n"
+ " #define show_in(offset) \\\n"
+ "-static ssize_t show_in##offset##_input(struct device *dev, char *buf) \\\n"
+ "+static ssize_t show_in##offset##_input(struct device *dev, struct device_attribute *attr, char *buf) \\\n"
+ " { \\\n"
+ " \tstruct lm87_data *data = lm87_update_device(dev); \\\n"
+ " \treturn sprintf(buf, \"%u\\n\", IN_FROM_REG(data->in[offset], \\\n"
+ " \t\t       data->in_scale[offset])); \\\n"
+ " } \\\n"
+ "-static ssize_t show_in##offset##_min(struct device *dev, char *buf) \\\n"
+ "+static ssize_t show_in##offset##_min(struct device *dev, struct device_attribute *attr, char *buf) \\\n"
+ " { \\\n"
+ " \tstruct lm87_data *data = lm87_update_device(dev); \\\n"
+ " \treturn sprintf(buf, \"%u\\n\", IN_FROM_REG(data->in_min[offset], \\\n"
+ " \t\t       data->in_scale[offset])); \\\n"
+ " } \\\n"
+ "-static ssize_t show_in##offset##_max(struct device *dev, char *buf) \\\n"
+ "+static ssize_t show_in##offset##_max(struct device *dev, struct device_attribute *attr, char *buf) \\\n"
+ " { \\\n"
+ " \tstruct lm87_data *data = lm87_update_device(dev); \\\n"
+ " \treturn sprintf(buf, \"%u\\n\", IN_FROM_REG(data->in_max[offset], \\\n"
+ "@@ -274,13 +274,13 @@ static void set_in_max(struct device *de\n"
+ " }\n"
+ " \n"
+ " #define set_in(offset) \\\n"
+ "-static ssize_t set_in##offset##_min(struct device *dev, \\\n"
+ "+static ssize_t set_in##offset##_min(struct device *dev, struct device_attribute *attr, \\\n"
+ " \t\tconst char *buf, size_t count) \\\n"
+ " { \\\n"
+ " \tset_in_min(dev, buf, offset); \\\n"
+ " \treturn count; \\\n"
+ " } \\\n"
+ "-static ssize_t set_in##offset##_max(struct device *dev, \\\n"
+ "+static ssize_t set_in##offset##_max(struct device *dev, struct device_attribute *attr, \\\n"
+ " \t\tconst char *buf, size_t count) \\\n"
+ " { \\\n"
+ " \tset_in_max(dev, buf, offset); \\\n"
+ "@@ -300,17 +300,17 @@ set_in(6);\n"
+ " set_in(7);\n"
+ " \n"
+ " #define show_temp(offset) \\\n"
+ "-static ssize_t show_temp##offset##_input(struct device *dev, char *buf) \\\n"
+ "+static ssize_t show_temp##offset##_input(struct device *dev, struct device_attribute *attr, char *buf) \\\n"
+ " { \\\n"
+ " \tstruct lm87_data *data = lm87_update_device(dev); \\\n"
+ " \treturn sprintf(buf, \"%d\\n\", TEMP_FROM_REG(data->temp[offset-1])); \\\n"
+ " } \\\n"
+ "-static ssize_t show_temp##offset##_low(struct device *dev, char *buf) \\\n"
+ "+static ssize_t show_temp##offset##_low(struct device *dev, struct device_attribute *attr, char *buf) \\\n"
+ " { \\\n"
+ " \tstruct lm87_data *data = lm87_update_device(dev); \\\n"
+ " \treturn sprintf(buf, \"%d\\n\", TEMP_FROM_REG(data->temp_low[offset-1])); \\\n"
+ " } \\\n"
+ "-static ssize_t show_temp##offset##_high(struct device *dev, char *buf) \\\n"
+ "+static ssize_t show_temp##offset##_high(struct device *dev, struct device_attribute *attr, char *buf) \\\n"
+ " { \\\n"
+ " \tstruct lm87_data *data = lm87_update_device(dev); \\\n"
+ " \treturn sprintf(buf, \"%d\\n\", TEMP_FROM_REG(data->temp_high[offset-1])); \\\n"
+ "@@ -346,13 +346,13 @@ static void set_temp_high(struct device \n"
+ " }\n"
+ " \n"
+ " #define set_temp(offset) \\\n"
+ "-static ssize_t set_temp##offset##_low(struct device *dev, \\\n"
+ "+static ssize_t set_temp##offset##_low(struct device *dev, struct device_attribute *attr, \\\n"
+ " \t\tconst char *buf, size_t count) \\\n"
+ " { \\\n"
+ " \tset_temp_low(dev, buf, offset-1); \\\n"
+ " \treturn count; \\\n"
+ " } \\\n"
+ "-static ssize_t set_temp##offset##_high(struct device *dev, \\\n"
+ "+static ssize_t set_temp##offset##_high(struct device *dev, struct device_attribute *attr, \\\n"
+ " \t\tconst char *buf, size_t count) \\\n"
+ " { \\\n"
+ " \tset_temp_high(dev, buf, offset-1); \\\n"
+ "@@ -366,13 +366,13 @@ set_temp(1);\n"
+ " set_temp(2);\n"
+ " set_temp(3);\n"
+ " \n"
+ "-static ssize_t show_temp_crit_int(struct device *dev, char *buf)\n"
+ "+static ssize_t show_temp_crit_int(struct device *dev, struct device_attribute *attr, char *buf)\n"
+ " {\n"
+ " \tstruct lm87_data *data = lm87_update_device(dev);\n"
+ " \treturn sprintf(buf, \"%d\\n\", TEMP_FROM_REG(data->temp_crit_int));\n"
+ " }\n"
+ " \n"
+ "-static ssize_t show_temp_crit_ext(struct device *dev, char *buf)\n"
+ "+static ssize_t show_temp_crit_ext(struct device *dev, struct device_attribute *attr, char *buf)\n"
+ " {\n"
+ " \tstruct lm87_data *data = lm87_update_device(dev);\n"
+ " \treturn sprintf(buf, \"%d\\n\", TEMP_FROM_REG(data->temp_crit_ext));\n"
+ "@@ -383,19 +383,19 @@ static DEVICE_ATTR(temp2_crit, S_IRUGO, \n"
+ " static DEVICE_ATTR(temp3_crit, S_IRUGO, show_temp_crit_ext, NULL);\n"
+ " \n"
+ " #define show_fan(offset) \\\n"
+ "-static ssize_t show_fan##offset##_input(struct device *dev, char *buf) \\\n"
+ "+static ssize_t show_fan##offset##_input(struct device *dev, struct device_attribute *attr, char *buf) \\\n"
+ " { \\\n"
+ " \tstruct lm87_data *data = lm87_update_device(dev); \\\n"
+ " \treturn sprintf(buf, \"%d\\n\", FAN_FROM_REG(data->fan[offset-1], \\\n"
+ " \t\t       FAN_DIV_FROM_REG(data->fan_div[offset-1]))); \\\n"
+ " } \\\n"
+ "-static ssize_t show_fan##offset##_min(struct device *dev, char *buf) \\\n"
+ "+static ssize_t show_fan##offset##_min(struct device *dev, struct device_attribute *attr, char *buf) \\\n"
+ " { \\\n"
+ " \tstruct lm87_data *data = lm87_update_device(dev); \\\n"
+ " \treturn sprintf(buf, \"%d\\n\", FAN_FROM_REG(data->fan_min[offset-1], \\\n"
+ " \t\t       FAN_DIV_FROM_REG(data->fan_div[offset-1]))); \\\n"
+ " } \\\n"
+ "-static ssize_t show_fan##offset##_div(struct device *dev, char *buf) \\\n"
+ "+static ssize_t show_fan##offset##_div(struct device *dev, struct device_attribute *attr, char *buf) \\\n"
+ " { \\\n"
+ " \tstruct lm87_data *data = lm87_update_device(dev); \\\n"
+ " \treturn sprintf(buf, \"%d\\n\", FAN_DIV_FROM_REG(data->fan_div[offset-1])); \\\n"
+ "@@ -465,13 +465,13 @@ static ssize_t set_fan_div(struct device\n"
+ " }\n"
+ " \n"
+ " #define set_fan(offset) \\\n"
+ "-static ssize_t set_fan##offset##_min(struct device *dev, const char *buf, \\\n"
+ "+static ssize_t set_fan##offset##_min(struct device *dev, struct device_attribute *attr, const char *buf, \\\n"
+ " \t\tsize_t count) \\\n"
+ " { \\\n"
+ " \tset_fan_min(dev, buf, offset-1); \\\n"
+ " \treturn count; \\\n"
+ " } \\\n"
+ "-static ssize_t set_fan##offset##_div(struct device *dev, const char *buf, \\\n"
+ "+static ssize_t set_fan##offset##_div(struct device *dev, struct device_attribute *attr, const char *buf, \\\n"
+ " \t\tsize_t count) \\\n"
+ " { \\\n"
+ " \treturn set_fan_div(dev, buf, count, offset-1); \\\n"
+ "@@ -483,26 +483,26 @@ static DEVICE_ATTR(fan##offset##_div, S_\n"
+ " set_fan(1);\n"
+ " set_fan(2);\n"
+ " \n"
+ "-static ssize_t show_alarms(struct device *dev, char *buf)\n"
+ "+static ssize_t show_alarms(struct device *dev, struct device_attribute *attr, char *buf)\n"
+ " {\n"
+ " \tstruct lm87_data *data = lm87_update_device(dev);\n"
+ " \treturn sprintf(buf, \"%d\\n\", data->alarms);\n"
+ " }\n"
+ " static DEVICE_ATTR(alarms, S_IRUGO, show_alarms, NULL);\n"
+ " \n"
+ "-static ssize_t show_vid(struct device *dev, char *buf)\n"
+ "+static ssize_t show_vid(struct device *dev, struct device_attribute *attr, char *buf)\n"
+ " {\n"
+ " \tstruct lm87_data *data = lm87_update_device(dev);\n"
+ " \treturn sprintf(buf, \"%d\\n\", vid_from_reg(data->vid, data->vrm));\n"
+ " }\n"
+ " static DEVICE_ATTR(cpu0_vid, S_IRUGO, show_vid, NULL);\n"
+ " \n"
+ "-static ssize_t show_vrm(struct device *dev, char *buf)\n"
+ "+static ssize_t show_vrm(struct device *dev, struct device_attribute *attr, char *buf)\n"
+ " {\n"
+ " \tstruct lm87_data *data = lm87_update_device(dev);\n"
+ " \treturn sprintf(buf, \"%d\\n\", data->vrm);\n"
+ " }\n"
+ "-static ssize_t set_vrm(struct device *dev, const char *buf, size_t count)\n"
+ "+static ssize_t set_vrm(struct device *dev, struct device_attribute *attr, const char *buf, size_t count)\n"
+ " {\n"
+ " \tstruct i2c_client *client = to_i2c_client(dev);\n"
+ " \tstruct lm87_data *data = i2c_get_clientdata(client);\n"
+ "@@ -511,12 +511,12 @@ static ssize_t set_vrm(struct device *de\n"
+ " }\n"
+ " static DEVICE_ATTR(vrm, S_IRUGO | S_IWUSR, show_vrm, set_vrm);\n"
+ " \n"
+ "-static ssize_t show_aout(struct device *dev, char *buf)\n"
+ "+static ssize_t show_aout(struct device *dev, struct device_attribute *attr, char *buf)\n"
+ " {\n"
+ " \tstruct lm87_data *data = lm87_update_device(dev);\n"
+ " \treturn sprintf(buf, \"%d\\n\", AOUT_FROM_REG(data->aout));\n"
+ " }\n"
+ "-static ssize_t set_aout(struct device *dev, const char *buf, size_t count)\n"
+ "+static ssize_t set_aout(struct device *dev, struct device_attribute *attr, const char *buf, size_t count)\n"
+ " {\n"
+ " \tstruct i2c_client *client = to_i2c_client(dev);\n"
+ " \tstruct lm87_data *data = i2c_get_clientdata(client);\n"
+ "diff -uprN -X dontdiff linux-2.6.12-rc4-sysfsdyncallback-deviceattr/drivers/i2c/chips/lm90.c linux-2.6.12-rc4-sysfsdyncallback-deviceattr-update/drivers/i2c/chips/lm90.c\n"
+ "--- linux-2.6.12-rc4-sysfsdyncallback-deviceattr/drivers/i2c/chips/lm90.c\t2005-05-16 20:35:33.000000000 -0400\n"
+ "+++ linux-2.6.12-rc4-sysfsdyncallback-deviceattr-update/drivers/i2c/chips/lm90.c\t2005-05-16 23:45:52.000000000 -0400\n"
+ "@@ -218,7 +218,7 @@ struct lm90_data {\n"
+ "  */\n"
+ " \n"
+ " #define show_temp(value, converter) \\\n"
+ "-static ssize_t show_##value(struct device *dev, char *buf) \\\n"
+ "+static ssize_t show_##value(struct device *dev, struct device_attribute *attr, char *buf) \\\n"
+ " { \\\n"
+ " \tstruct lm90_data *data = lm90_update_device(dev); \\\n"
+ " \treturn sprintf(buf, \"%d\\n\", converter(data->value)); \\\n"
+ "@@ -233,7 +233,7 @@ show_temp(temp_crit1, TEMP1_FROM_REG);\n"
+ " show_temp(temp_crit2, TEMP1_FROM_REG);\n"
+ " \n"
+ " #define set_temp1(value, reg) \\\n"
+ "-static ssize_t set_##value(struct device *dev, const char *buf, \\\n"
+ "+static ssize_t set_##value(struct device *dev, struct device_attribute *attr, const char *buf, \\\n"
+ " \tsize_t count) \\\n"
+ " { \\\n"
+ " \tstruct i2c_client *client = to_i2c_client(dev); \\\n"
+ "@@ -250,7 +250,7 @@ static ssize_t set_##value(struct device\n"
+ " \treturn count; \\\n"
+ " }\n"
+ " #define set_temp2(value, regh, regl) \\\n"
+ "-static ssize_t set_##value(struct device *dev, const char *buf, \\\n"
+ "+static ssize_t set_##value(struct device *dev, struct device_attribute *attr, const char *buf, \\\n"
+ " \tsize_t count) \\\n"
+ " { \\\n"
+ " \tstruct i2c_client *client = to_i2c_client(dev); \\\n"
+ "@@ -275,7 +275,7 @@ set_temp1(temp_crit1, LM90_REG_W_LOCAL_C\n"
+ " set_temp1(temp_crit2, LM90_REG_W_REMOTE_CRIT);\n"
+ " \n"
+ " #define show_temp_hyst(value, basereg) \\\n"
+ "-static ssize_t show_##value(struct device *dev, char *buf) \\\n"
+ "+static ssize_t show_##value(struct device *dev, struct device_attribute *attr, char *buf) \\\n"
+ " { \\\n"
+ " \tstruct lm90_data *data = lm90_update_device(dev); \\\n"
+ " \treturn sprintf(buf, \"%d\\n\", TEMP1_FROM_REG(data->basereg) \\\n"
+ "@@ -284,7 +284,7 @@ static ssize_t show_##value(struct devic\n"
+ " show_temp_hyst(temp_hyst1, temp_crit1);\n"
+ " show_temp_hyst(temp_hyst2, temp_crit2);\n"
+ " \n"
+ "-static ssize_t set_temp_hyst1(struct device *dev, const char *buf,\n"
+ "+static ssize_t set_temp_hyst1(struct device *dev, struct device_attribute *attr, const char *buf,\n"
+ " \tsize_t count)\n"
+ " {\n"
+ " \tstruct i2c_client *client = to_i2c_client(dev);\n"
+ "@@ -300,7 +300,7 @@ static ssize_t set_temp_hyst1(struct dev\n"
+ " \treturn count;\n"
+ " }\n"
+ " \n"
+ "-static ssize_t show_alarms(struct device *dev, char *buf)\n"
+ "+static ssize_t show_alarms(struct device *dev, struct device_attribute *attr, char *buf)\n"
+ " {\n"
+ " \tstruct lm90_data *data = lm90_update_device(dev);\n"
+ " \treturn sprintf(buf, \"%d\\n\", data->alarms);\n"
+ "diff -uprN -X dontdiff linux-2.6.12-rc4-sysfsdyncallback-deviceattr/drivers/i2c/chips/lm92.c linux-2.6.12-rc4-sysfsdyncallback-deviceattr-update/drivers/i2c/chips/lm92.c\n"
+ "--- linux-2.6.12-rc4-sysfsdyncallback-deviceattr/drivers/i2c/chips/lm92.c\t2005-05-16 20:35:33.000000000 -0400\n"
+ "+++ linux-2.6.12-rc4-sysfsdyncallback-deviceattr-update/drivers/i2c/chips/lm92.c\t2005-05-16 23:45:52.000000000 -0400\n"
+ "@@ -140,7 +140,7 @@ static struct lm92_data *lm92_update_dev\n"
+ " }\n"
+ " \n"
+ " #define show_temp(value) \\\n"
+ "-static ssize_t show_##value(struct device *dev, char *buf) \\\n"
+ "+static ssize_t show_##value(struct device *dev, struct device_attribute *attr, char *buf) \\\n"
+ " { \\\n"
+ " \tstruct lm92_data *data = lm92_update_device(dev); \\\n"
+ " \treturn sprintf(buf, \"%d\\n\", TEMP_FROM_REG(data->value)); \\\n"
+ "@@ -151,7 +151,7 @@ show_temp(temp1_min);\n"
+ " show_temp(temp1_max);\n"
+ " \n"
+ " #define set_temp(value, reg) \\\n"
+ "-static ssize_t set_##value(struct device *dev, const char *buf, \\\n"
+ "+static ssize_t set_##value(struct device *dev, struct device_attribute *attr, const char *buf, \\\n"
+ " \tsize_t count) \\\n"
+ " { \\\n"
+ " \tstruct i2c_client *client = to_i2c_client(dev); \\\n"
+ "@@ -168,26 +168,26 @@ set_temp(temp1_crit, LM92_REG_TEMP_CRIT)\n"
+ " set_temp(temp1_min, LM92_REG_TEMP_LOW);\n"
+ " set_temp(temp1_max, LM92_REG_TEMP_HIGH);\n"
+ " \n"
+ "-static ssize_t show_temp1_crit_hyst(struct device *dev, char *buf)\n"
+ "+static ssize_t show_temp1_crit_hyst(struct device *dev, struct device_attribute *attr, char *buf)\n"
+ " {\n"
+ " \tstruct lm92_data *data = lm92_update_device(dev);\n"
+ " \treturn sprintf(buf, \"%d\\n\", TEMP_FROM_REG(data->temp1_crit)\n"
+ " \t\t       - TEMP_FROM_REG(data->temp1_hyst));\n"
+ " }\n"
+ "-static ssize_t show_temp1_max_hyst(struct device *dev, char *buf)\n"
+ "+static ssize_t show_temp1_max_hyst(struct device *dev, struct device_attribute *attr, char *buf)\n"
+ " {\n"
+ " \tstruct lm92_data *data = lm92_update_device(dev);\n"
+ " \treturn sprintf(buf, \"%d\\n\", TEMP_FROM_REG(data->temp1_max)\n"
+ " \t\t       - TEMP_FROM_REG(data->temp1_hyst));\n"
+ " }\n"
+ "-static ssize_t show_temp1_min_hyst(struct device *dev, char *buf)\n"
+ "+static ssize_t show_temp1_min_hyst(struct device *dev, struct device_attribute *attr, char *buf)\n"
+ " {\n"
+ " \tstruct lm92_data *data = lm92_update_device(dev);\n"
+ " \treturn sprintf(buf, \"%d\\n\", TEMP_FROM_REG(data->temp1_min)\n"
+ " \t\t       + TEMP_FROM_REG(data->temp1_hyst));\n"
+ " }\n"
+ " \n"
+ "-static ssize_t set_temp1_crit_hyst(struct device *dev, const char *buf,\n"
+ "+static ssize_t set_temp1_crit_hyst(struct device *dev, struct device_attribute *attr, const char *buf,\n"
+ " \tsize_t count)\n"
+ " {\n"
+ " \tstruct i2c_client *client = to_i2c_client(dev);\n"
+ "@@ -202,7 +202,7 @@ static ssize_t set_temp1_crit_hyst(struc\n"
+ " \treturn count;\n"
+ " }\n"
+ " \n"
+ "-static ssize_t show_alarms(struct device *dev, char *buf)\n"
+ "+static ssize_t show_alarms(struct device *dev, struct device_attribute *attr, char *buf)\n"
+ " {\n"
+ " \tstruct lm92_data *data = lm92_update_device(dev);\n"
+ " \treturn sprintf(buf, \"%d\\n\", ALARMS_FROM_REG(data->temp1_input));\n"
+ "diff -uprN -X dontdiff linux-2.6.12-rc4-sysfsdyncallback-deviceattr/drivers/i2c/chips/max1619.c linux-2.6.12-rc4-sysfsdyncallback-deviceattr-update/drivers/i2c/chips/max1619.c\n"
+ "--- linux-2.6.12-rc4-sysfsdyncallback-deviceattr/drivers/i2c/chips/max1619.c\t2005-05-16 20:35:33.000000000 -0400\n"
+ "+++ linux-2.6.12-rc4-sysfsdyncallback-deviceattr-update/drivers/i2c/chips/max1619.c\t2005-05-16 23:45:52.000000000 -0400\n"
+ "@@ -122,7 +122,7 @@ struct max1619_data {\n"
+ "  */\n"
+ " \n"
+ " #define show_temp(value) \\\n"
+ "-static ssize_t show_##value(struct device *dev, char *buf) \\\n"
+ "+static ssize_t show_##value(struct device *dev, struct device_attribute *attr, char *buf) \\\n"
+ " { \\\n"
+ " \tstruct max1619_data *data = max1619_update_device(dev); \\\n"
+ " \treturn sprintf(buf, \"%d\\n\", TEMP_FROM_REG(data->value)); \\\n"
+ "@@ -135,7 +135,7 @@ show_temp(temp_crit2);\n"
+ " show_temp(temp_hyst2);\n"
+ " \n"
+ " #define set_temp2(value, reg) \\\n"
+ "-static ssize_t set_##value(struct device *dev, const char *buf, \\\n"
+ "+static ssize_t set_##value(struct device *dev, struct device_attribute *attr, const char *buf, \\\n"
+ " \tsize_t count) \\\n"
+ " { \\\n"
+ " \tstruct i2c_client *client = to_i2c_client(dev); \\\n"
+ "@@ -154,7 +154,7 @@ set_temp2(temp_high2, MAX1619_REG_W_REMO\n"
+ " set_temp2(temp_crit2, MAX1619_REG_W_REMOTE_CRIT);\n"
+ " set_temp2(temp_hyst2, MAX1619_REG_W_TCRIT_HYST);\n"
+ " \n"
+ "-static ssize_t show_alarms(struct device *dev, char *buf)\n"
+ "+static ssize_t show_alarms(struct device *dev, struct device_attribute *attr, char *buf)\n"
+ " {\n"
+ " \tstruct max1619_data *data = max1619_update_device(dev);\n"
+ " \treturn sprintf(buf, \"%d\\n\", data->alarms);"
 
-6e5b9b83527594ec97e60369a0aa0c7da02b5e1854945a0a6e5591ca2abf7b58
+c43356b38f548ef930c9d1cc982f6ea0ab806af3202e85b6ed2b7b8d80b085a9

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.