aboutsummaryrefslogtreecommitdiffstats
path: root/i2c
diff options
context:
space:
mode:
authorGreg KH <greg@press.(none)>2005-10-27 17:04:02 -0700
committerGreg Kroah-Hartman <gregkh@suse.de>2005-10-27 17:04:02 -0700
commitfab486cd4f178aba2163a6db00ad8b282956e09a (patch)
tree2f583ff86ba56a7ee4e93039c6d0fee6b3607500 /i2c
parent23cd589af9a5cde6a14135bfa8ee5a34a6c282c6 (diff)
downloadpatches-fab486cd4f178aba2163a6db00ad8b282956e09a.tar.gz
added i2c patches
Diffstat (limited to 'i2c')
-rw-r--r--i2c/i2c-drop-unused-parport-i2c-ids.patch33
-rw-r--r--i2c/i2c-i810-update-device-list.patch56
-rw-r--r--i2c/i2c-id-clean-redefinitions-1.patch59
-rw-r--r--i2c/i2c-smbus-pec-01-drop-pec-funcs.patch80
-rw-r--r--i2c/static-01-i2c-eeprom.patch33
-rw-r--r--i2c/static-02-hwmon-lm78-lm85.patch90
-rw-r--r--i2c/static-03-hwmon-other.patch148
-rw-r--r--i2c/static-04-i2c-chips-other.patch58
8 files changed, 557 insertions, 0 deletions
diff --git a/i2c/i2c-drop-unused-parport-i2c-ids.patch b/i2c/i2c-drop-unused-parport-i2c-ids.patch
new file mode 100644
index 0000000000000..eda15eecd1d4b
--- /dev/null
+++ b/i2c/i2c-drop-unused-parport-i2c-ids.patch
@@ -0,0 +1,33 @@
+From khali@linux-fr.org Wed Oct 26 12:20:05 2005
+Date: Wed, 26 Oct 2005 21:20:17 +0200
+From: Jean Delvare <khali@linux-fr.org>
+To: Greg KH <greg@kroah.com>
+Subject: [PATCH 07/16] i2c: Drop unused parport i2c IDs
+Message-Id: <20051026212017.23a70d41.khali@linux-fr.org>
+Content-disposition: inline; filename=i2c-id-drop-old-parport.patch
+
+Drop unused i2c-over-parallel-port i2c IDs:
+* I2C_HW_B_LPC was never actually used as far as I could search.
+* I2C_HW_B_ELV and I2C_HW_B_VELLE are no more used since the
+ introduction of the unified i2c-parport driver in Linux 2.6.2.
+
+Signed-off-by: Jean Delvare <khali@linux-fr.org>
+Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
+
+---
+ include/linux/i2c-id.h | 3 ---
+ 1 file changed, 3 deletions(-)
+
+--- gregkh-2.6.orig/include/linux/i2c-id.h
++++ gregkh-2.6/include/linux/i2c-id.h
+@@ -164,10 +164,7 @@
+
+ /* --- Bit algorithm adapters */
+ #define I2C_HW_B_LP 0x010000 /* Parallel port Philips style */
+-#define I2C_HW_B_LPC 0x010001 /* Parallel port control reg. */
+ #define I2C_HW_B_SER 0x010002 /* Serial line interface */
+-#define I2C_HW_B_ELV 0x010003 /* ELV Card */
+-#define I2C_HW_B_VELLE 0x010004 /* Vellemann K8000 */
+ #define I2C_HW_B_BT848 0x010005 /* BT848 video boards */
+ #define I2C_HW_B_WNV 0x010006 /* Winnov Videums */
+ #define I2C_HW_B_VIA 0x010007 /* Via vt82c586b */
diff --git a/i2c/i2c-i810-update-device-list.patch b/i2c/i2c-i810-update-device-list.patch
new file mode 100644
index 0000000000000..437f380a67c75
--- /dev/null
+++ b/i2c/i2c-i810-update-device-list.patch
@@ -0,0 +1,56 @@
+From khali@linux-fr.org Wed Oct 26 12:25:25 2005
+Date: Wed, 26 Oct 2005 21:21:50 +0200
+From: Jean Delvare <khali@linux-fr.org>
+To: Greg KH <greg@kroah.com>
+Subject: [PATCH 08/16] i2c: i2c-i810 documentation update
+Message-Id: <20051026212150.010e7472.khali@linux-fr.org>
+Content-Disposition: inline; filename=i2c-i810-update-device-list.patch
+
+Update the documented list of devices supported by the i2c-i810
+driver.
+
+Signed-off-by: Jean Delvare <khali@linux-fr.org>
+Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
+
+---
+ Documentation/i2c/busses/i2c-i810 | 1 +
+ drivers/i2c/busses/Kconfig | 3 ++-
+ drivers/i2c/busses/i2c-i810.c | 1 +
+ 3 files changed, 4 insertions(+), 1 deletion(-)
+
+--- gregkh-2.6.orig/Documentation/i2c/busses/i2c-i810
++++ gregkh-2.6/Documentation/i2c/busses/i2c-i810
+@@ -2,6 +2,7 @@ Kernel driver i2c-i810
+
+ Supported adapters:
+ * Intel 82810, 82810-DC100, 82810E, and 82815 (GMCH)
++ * Intel 82845G (GMCH)
+
+ Authors:
+ Frodo Looijaard <frodol@dds.nl>,
+--- gregkh-2.6.orig/drivers/i2c/busses/Kconfig
++++ gregkh-2.6/drivers/i2c/busses/Kconfig
+@@ -135,11 +135,12 @@ config I2C_I810
+ help
+ If you say yes to this option, support will be included for the Intel
+ 810/815 family of mainboard I2C interfaces. Specifically, the
+- following versions of the chipset is supported:
++ following versions of the chipset are supported:
+ i810AA
+ i810AB
+ i810E
+ i815
++ i845G
+
+ This driver can also be built as a module. If so, the module
+ will be called i2c-i810.
+--- gregkh-2.6.orig/drivers/i2c/busses/i2c-i810.c
++++ gregkh-2.6/drivers/i2c/busses/i2c-i810.c
+@@ -32,6 +32,7 @@
+ i810AB 7123
+ i810E 7125
+ i815 1132
++ i845G 2562
+ */
+
+ #include <linux/kernel.h>
diff --git a/i2c/i2c-id-clean-redefinitions-1.patch b/i2c/i2c-id-clean-redefinitions-1.patch
new file mode 100644
index 0000000000000..60e03bae9d8fc
--- /dev/null
+++ b/i2c/i2c-id-clean-redefinitions-1.patch
@@ -0,0 +1,59 @@
+From khali@linux-fr.org Wed Oct 26 12:14:13 2005
+Date: Wed, 26 Oct 2005 21:14:16 +0200
+From: Jean Delvare <khali@linux-fr.org>
+To: Greg KH <greg@kroah.com>
+Cc: Henk Vergonet <henk@god.dyndns.org>, Mark McClelland <mark@alpha.dyndns.org>
+Subject: [PATCH 05/16] i2c: ID redefinition cleanups
+Message-Id: <20051026211416.293d8e42.khali@linux-fr.org>
+Content-Disposition: inline; filename=i2c-id-clean-redefinitions-1.patch
+
+Fix several redefinitions of i2c IDs. i2c IDs must not be defined
+outside of i2c-id.h.
+
+Signed-off-by: Jean Delvare <khali@linux-fr.org>
+Signed-off-by: Henk Vergonet <henk@god.dyndns.org>
+Acked-by: Mark McClelland <mark@alpha.dyndns.org>
+Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
+
+---
+ drivers/i2c/busses/i2c-prosavage.c | 5 -----
+ include/media/ovcamchip.h | 14 --------------
+ 2 files changed, 19 deletions(-)
+
+--- gregkh-2.6.orig/drivers/i2c/busses/i2c-prosavage.c
++++ gregkh-2.6/drivers/i2c/busses/i2c-prosavage.c
+@@ -83,11 +83,6 @@ struct s_i2c_chip {
+ /*
+ * i2c configuration
+ */
+-#ifndef I2C_HW_B_S3VIA
+-#define I2C_HW_B_S3VIA 0x18 /* S3VIA ProSavage adapter */
+-#endif
+-
+-/* delays */
+ #define CYCLE_DELAY 10
+ #define TIMEOUT (HZ / 2)
+
+--- gregkh-2.6.orig/include/media/ovcamchip.h
++++ gregkh-2.6/include/media/ovcamchip.h
+@@ -17,20 +17,6 @@
+ #include <linux/videodev.h>
+ #include <linux/i2c.h>
+
+-/* Remove these once they are officially defined */
+-#ifndef I2C_DRIVERID_OVCAMCHIP
+- #define I2C_DRIVERID_OVCAMCHIP 0xf00f
+-#endif
+-#ifndef I2C_HW_SMBUS_OV511
+- #define I2C_HW_SMBUS_OV511 0xfe
+-#endif
+-#ifndef I2C_HW_SMBUS_OV518
+- #define I2C_HW_SMBUS_OV518 0xff
+-#endif
+-#ifndef I2C_HW_SMBUS_OVFX2
+- #define I2C_HW_SMBUS_OVFX2 0xfd
+-#endif
+-
+ /* --------------------------------- */
+ /* ENUMERATIONS */
+ /* --------------------------------- */
diff --git a/i2c/i2c-smbus-pec-01-drop-pec-funcs.patch b/i2c/i2c-smbus-pec-01-drop-pec-funcs.patch
new file mode 100644
index 0000000000000..cee690506f774
--- /dev/null
+++ b/i2c/i2c-smbus-pec-01-drop-pec-funcs.patch
@@ -0,0 +1,80 @@
+From khali@linux-fr.org Wed Oct 26 12:25:48 2005
+Date: Wed, 26 Oct 2005 21:25:04 +0200
+From: Jean Delvare <khali@linux-fr.org>
+To: Greg KH <greg@kroah.com>
+Subject: [PATCH 09/16] i2c: SMBus PEC support rewrite, 1 of 3
+Message-Id: <20051026212504.589fef53.khali@linux-fr.org>
+Content-Disposition: inline; filename=i2c-smbus-pec-01-drop-pec-funcs.patch
+
+Discard I2C_FUNC_SMBUS_*_PEC defines. i2c clients are not supposed to
+check for PEC support of i2c bus drivers on individual SMBus
+transactions, and i2c bus drivers are not supposed to advertise them.
+
+Signed-off-by: Jean Delvare <khali@linux-fr.org>
+Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
+
+---
+ drivers/i2c/busses/i2c-i801.c | 3 +--
+ include/linux/i2c.h | 18 ------------------
+ 2 files changed, 1 insertion(+), 20 deletions(-)
+
+--- gregkh-2.6.orig/include/linux/i2c.h
++++ gregkh-2.6/include/linux/i2c.h
+@@ -390,10 +390,6 @@ struct i2c_msg {
+ #define I2C_FUNC_10BIT_ADDR 0x00000002
+ #define I2C_FUNC_PROTOCOL_MANGLING 0x00000004 /* I2C_M_{REV_DIR_ADDR,NOSTART,..} */
+ #define I2C_FUNC_SMBUS_HWPEC_CALC 0x00000008 /* SMBus 2.0 */
+-#define I2C_FUNC_SMBUS_READ_WORD_DATA_PEC 0x00000800 /* SMBus 2.0 */
+-#define I2C_FUNC_SMBUS_WRITE_WORD_DATA_PEC 0x00001000 /* SMBus 2.0 */
+-#define I2C_FUNC_SMBUS_PROC_CALL_PEC 0x00002000 /* SMBus 2.0 */
+-#define I2C_FUNC_SMBUS_BLOCK_PROC_CALL_PEC 0x00004000 /* SMBus 2.0 */
+ #define I2C_FUNC_SMBUS_BLOCK_PROC_CALL 0x00008000 /* SMBus 2.0 */
+ #define I2C_FUNC_SMBUS_QUICK 0x00010000
+ #define I2C_FUNC_SMBUS_READ_BYTE 0x00020000
+@@ -409,8 +405,6 @@ struct i2c_msg {
+ #define I2C_FUNC_SMBUS_WRITE_I2C_BLOCK 0x08000000 /* w/ 1-byte reg. addr. */
+ #define I2C_FUNC_SMBUS_READ_I2C_BLOCK_2 0x10000000 /* I2C-like block xfer */
+ #define I2C_FUNC_SMBUS_WRITE_I2C_BLOCK_2 0x20000000 /* w/ 2-byte reg. addr. */
+-#define I2C_FUNC_SMBUS_READ_BLOCK_DATA_PEC 0x40000000 /* SMBus 2.0 */
+-#define I2C_FUNC_SMBUS_WRITE_BLOCK_DATA_PEC 0x80000000 /* SMBus 2.0 */
+
+ #define I2C_FUNC_SMBUS_BYTE (I2C_FUNC_SMBUS_READ_BYTE | \
+ I2C_FUNC_SMBUS_WRITE_BYTE)
+@@ -424,17 +418,6 @@ struct i2c_msg {
+ I2C_FUNC_SMBUS_WRITE_I2C_BLOCK)
+ #define I2C_FUNC_SMBUS_I2C_BLOCK_2 (I2C_FUNC_SMBUS_READ_I2C_BLOCK_2 | \
+ I2C_FUNC_SMBUS_WRITE_I2C_BLOCK_2)
+-#define I2C_FUNC_SMBUS_BLOCK_DATA_PEC (I2C_FUNC_SMBUS_READ_BLOCK_DATA_PEC | \
+- I2C_FUNC_SMBUS_WRITE_BLOCK_DATA_PEC)
+-#define I2C_FUNC_SMBUS_WORD_DATA_PEC (I2C_FUNC_SMBUS_READ_WORD_DATA_PEC | \
+- I2C_FUNC_SMBUS_WRITE_WORD_DATA_PEC)
+-
+-#define I2C_FUNC_SMBUS_READ_BYTE_PEC I2C_FUNC_SMBUS_READ_BYTE_DATA
+-#define I2C_FUNC_SMBUS_WRITE_BYTE_PEC I2C_FUNC_SMBUS_WRITE_BYTE_DATA
+-#define I2C_FUNC_SMBUS_READ_BYTE_DATA_PEC I2C_FUNC_SMBUS_READ_WORD_DATA
+-#define I2C_FUNC_SMBUS_WRITE_BYTE_DATA_PEC I2C_FUNC_SMBUS_WRITE_WORD_DATA
+-#define I2C_FUNC_SMBUS_BYTE_PEC I2C_FUNC_SMBUS_BYTE_DATA
+-#define I2C_FUNC_SMBUS_BYTE_DATA_PEC I2C_FUNC_SMBUS_WORD_DATA
+
+ #define I2C_FUNC_SMBUS_EMUL (I2C_FUNC_SMBUS_QUICK | \
+ I2C_FUNC_SMBUS_BYTE | \
+@@ -442,7 +425,6 @@ struct i2c_msg {
+ I2C_FUNC_SMBUS_WORD_DATA | \
+ I2C_FUNC_SMBUS_PROC_CALL | \
+ I2C_FUNC_SMBUS_WRITE_BLOCK_DATA | \
+- I2C_FUNC_SMBUS_WRITE_BLOCK_DATA_PEC | \
+ I2C_FUNC_SMBUS_I2C_BLOCK)
+
+ /*
+--- gregkh-2.6.orig/drivers/i2c/busses/i2c-i801.c
++++ gregkh-2.6/drivers/i2c/busses/i2c-i801.c
+@@ -513,8 +513,7 @@ static u32 i801_func(struct i2c_adapter
+ return I2C_FUNC_SMBUS_QUICK | I2C_FUNC_SMBUS_BYTE |
+ I2C_FUNC_SMBUS_BYTE_DATA | I2C_FUNC_SMBUS_WORD_DATA |
+ I2C_FUNC_SMBUS_BLOCK_DATA | I2C_FUNC_SMBUS_WRITE_I2C_BLOCK
+- | (isich4 ? I2C_FUNC_SMBUS_BLOCK_DATA_PEC |
+- I2C_FUNC_SMBUS_HWPEC_CALC : 0);
++ | (isich4 ? I2C_FUNC_SMBUS_HWPEC_CALC : 0);
+ }
+
+ static struct i2c_algorithm smbus_algorithm = {
diff --git a/i2c/static-01-i2c-eeprom.patch b/i2c/static-01-i2c-eeprom.patch
new file mode 100644
index 0000000000000..4475466491ef3
--- /dev/null
+++ b/i2c/static-01-i2c-eeprom.patch
@@ -0,0 +1,33 @@
+From khali@linux-fr.org Wed Oct 26 12:08:00 2005
+Date: Wed, 26 Oct 2005 21:04:12 +0200
+From: Jean Delvare <khali@linux-fr.org>
+To: Greg KH <greg@kroah.com>
+Cc: Ben Dooks <ben-linux@fluff.org>
+Subject: [PATCH 01/16] i2c: Static function fixes, 1 of 4
+Message-Id: <20051026210412.5080cf67.khali@linux-fr.org>
+Content-Disposition: inline; filename=static-01-i2c-eeprom.patch
+
+From: Ben Dooks <ben-linux@fluff.org>
+
+eeprom_detect is first declared static and then when
+the function is actually implemented, there is no static.
+
+Signed-off-by: Ben Dooks <ben-linux@fluff.org>
+Signed-off-by: Jean Delvare <khali@linux-fr.org>
+Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
+
+---
+ drivers/i2c/chips/eeprom.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+--- gregkh-2.6.orig/drivers/i2c/chips/eeprom.c
++++ gregkh-2.6/drivers/i2c/chips/eeprom.c
+@@ -155,7 +155,7 @@ static int eeprom_attach_adapter(struct
+ }
+
+ /* This function is called by i2c_probe */
+-int eeprom_detect(struct i2c_adapter *adapter, int address, int kind)
++static int eeprom_detect(struct i2c_adapter *adapter, int address, int kind)
+ {
+ struct i2c_client *new_client;
+ struct eeprom_data *data;
diff --git a/i2c/static-02-hwmon-lm78-lm85.patch b/i2c/static-02-hwmon-lm78-lm85.patch
new file mode 100644
index 0000000000000..afde23d42c221
--- /dev/null
+++ b/i2c/static-02-hwmon-lm78-lm85.patch
@@ -0,0 +1,90 @@
+From khali@linux-fr.org Wed Oct 26 12:08:09 2005
+Date: Wed, 26 Oct 2005 21:05:46 +0200
+From: Jean Delvare <khali@linux-fr.org>
+To: Greg KH <greg@kroah.com>
+Cc: Ben Dooks <ben-linux@fluff.org>
+Subject: [PATCH 02/16] hwmon: Static function fixes, 2 of 4
+Message-Id: <20051026210546.3337fe63.khali@linux-fr.org>
+Content-Disposition: inline; filename=static-02-hwmon-lm78-lm85.patch
+
+From: Ben Dooks <ben-linux@fluff.org>
+
+lm78.c and lm85.c have a number of items declared static
+then implemented without the static on them. The following
+patch fixes these sparse errors.
+
+Signed-off-by: Ben Dooks <ben-linux@fluff.org>
+Signed-off-by: Jean Delvare <khali@linux-fr.org>
+Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
+
+---
+ drivers/hwmon/lm78.c | 2 +-
+ drivers/hwmon/lm85.c | 12 ++++++------
+ 2 files changed, 7 insertions(+), 7 deletions(-)
+
+--- gregkh-2.6.orig/drivers/hwmon/lm78.c
++++ gregkh-2.6/drivers/hwmon/lm78.c
+@@ -480,7 +480,7 @@ static int lm78_isa_attach_adapter(struc
+ }
+
+ /* This function is called by i2c_probe */
+-int lm78_detect(struct i2c_adapter *adapter, int address, int kind)
++static int lm78_detect(struct i2c_adapter *adapter, int address, int kind)
+ {
+ int i, err;
+ struct i2c_client *new_client;
+--- gregkh-2.6.orig/drivers/hwmon/lm85.c
++++ gregkh-2.6/drivers/hwmon/lm85.c
+@@ -1007,14 +1007,14 @@ temp_auto(1);
+ temp_auto(2);
+ temp_auto(3);
+
+-int lm85_attach_adapter(struct i2c_adapter *adapter)
++static int lm85_attach_adapter(struct i2c_adapter *adapter)
+ {
+ if (!(adapter->class & I2C_CLASS_HWMON))
+ return 0;
+ return i2c_probe(adapter, &addr_data, lm85_detect);
+ }
+
+-int lm85_detect(struct i2c_adapter *adapter, int address,
++static int lm85_detect(struct i2c_adapter *adapter, int address,
+ int kind)
+ {
+ int company, verstep ;
+@@ -1235,7 +1235,7 @@ int lm85_detect(struct i2c_adapter *adap
+ return err;
+ }
+
+-int lm85_detach_client(struct i2c_client *client)
++static int lm85_detach_client(struct i2c_client *client)
+ {
+ struct lm85_data *data = i2c_get_clientdata(client);
+ hwmon_device_unregister(data->class_dev);
+@@ -1245,7 +1245,7 @@ int lm85_detach_client(struct i2c_client
+ }
+
+
+-int lm85_read_value(struct i2c_client *client, u8 reg)
++static int lm85_read_value(struct i2c_client *client, u8 reg)
+ {
+ int res;
+
+@@ -1275,7 +1275,7 @@ int lm85_read_value(struct i2c_client *c
+ return res ;
+ }
+
+-int lm85_write_value(struct i2c_client *client, u8 reg, int value)
++static int lm85_write_value(struct i2c_client *client, u8 reg, int value)
+ {
+ int res ;
+
+@@ -1304,7 +1304,7 @@ int lm85_write_value(struct i2c_client *
+ return res ;
+ }
+
+-void lm85_init_client(struct i2c_client *client)
++static void lm85_init_client(struct i2c_client *client)
+ {
+ int value;
+ struct lm85_data *data = i2c_get_clientdata(client);
diff --git a/i2c/static-03-hwmon-other.patch b/i2c/static-03-hwmon-other.patch
new file mode 100644
index 0000000000000..a06ee25d6dc4b
--- /dev/null
+++ b/i2c/static-03-hwmon-other.patch
@@ -0,0 +1,148 @@
+From khali@linux-fr.org Wed Oct 26 12:08:18 2005
+Date: Wed, 26 Oct 2005 21:07:25 +0200
+From: Jean Delvare <khali@linux-fr.org>
+To: Greg KH <greg@kroah.com>
+Cc: Ben Dooks <ben-linux@fluff.org>
+Subject: [PATCH 03/16] hwmon: Static function fixes, 3 of 4
+Message-Id: <20051026210725.577b12ec.khali@linux-fr.org>
+Content-Disposition: inline; filename=static-03-hwmon-other.patch
+
+From: Ben Dooks <ben-linux@fluff.org>
+
+Fixup functions that have been declared static
+and then actually defined without the static on.
+
+Signed-off-by: Ben Dooks <ben-linux@fluff.org>
+Signed-off-by: Jean Delvare <khali@linux-fr.org>
+Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
+
+---
+ drivers/hwmon/adm1026.c | 18 +++++++++---------
+ drivers/hwmon/ds1621.c | 4 ++--
+ drivers/hwmon/fscpos.c | 2 +-
+ drivers/hwmon/it87.c | 2 +-
+ drivers/hwmon/lm80.c | 2 +-
+ 5 files changed, 14 insertions(+), 14 deletions(-)
+
+--- gregkh-2.6.orig/drivers/hwmon/adm1026.c
++++ gregkh-2.6/drivers/hwmon/adm1026.c
+@@ -315,7 +315,7 @@ static struct i2c_driver adm1026_driver
+ .detach_client = adm1026_detach_client,
+ };
+
+-int adm1026_attach_adapter(struct i2c_adapter *adapter)
++static int adm1026_attach_adapter(struct i2c_adapter *adapter)
+ {
+ if (!(adapter->class & I2C_CLASS_HWMON)) {
+ return 0;
+@@ -323,7 +323,7 @@ int adm1026_attach_adapter(struct i2c_ad
+ return i2c_probe(adapter, &addr_data, adm1026_detect);
+ }
+
+-int adm1026_detach_client(struct i2c_client *client)
++static int adm1026_detach_client(struct i2c_client *client)
+ {
+ struct adm1026_data *data = i2c_get_clientdata(client);
+ hwmon_device_unregister(data->class_dev);
+@@ -332,7 +332,7 @@ int adm1026_detach_client(struct i2c_cli
+ return 0;
+ }
+
+-int adm1026_read_value(struct i2c_client *client, u8 reg)
++static int adm1026_read_value(struct i2c_client *client, u8 reg)
+ {
+ int res;
+
+@@ -346,7 +346,7 @@ int adm1026_read_value(struct i2c_client
+ return res;
+ }
+
+-int adm1026_write_value(struct i2c_client *client, u8 reg, int value)
++static int adm1026_write_value(struct i2c_client *client, u8 reg, int value)
+ {
+ int res;
+
+@@ -360,7 +360,7 @@ int adm1026_write_value(struct i2c_clien
+ return res;
+ }
+
+-void adm1026_init_client(struct i2c_client *client)
++static void adm1026_init_client(struct i2c_client *client)
+ {
+ int value, i;
+ struct adm1026_data *data = i2c_get_clientdata(client);
+@@ -460,7 +460,7 @@ void adm1026_init_client(struct i2c_clie
+ }
+ }
+
+-void adm1026_print_gpio(struct i2c_client *client)
++static void adm1026_print_gpio(struct i2c_client *client)
+ {
+ struct adm1026_data *data = i2c_get_clientdata(client);
+ int i;
+@@ -492,7 +492,7 @@ void adm1026_print_gpio(struct i2c_clien
+ }
+ }
+
+-void adm1026_fixup_gpio(struct i2c_client *client)
++static void adm1026_fixup_gpio(struct i2c_client *client)
+ {
+ struct adm1026_data *data = i2c_get_clientdata(client);
+ int i;
+@@ -1452,8 +1452,8 @@ static DEVICE_ATTR(temp1_auto_point2_pwm
+ static DEVICE_ATTR(temp2_auto_point2_pwm, S_IRUGO, show_auto_pwm_max, NULL);
+ static DEVICE_ATTR(temp3_auto_point2_pwm, S_IRUGO, show_auto_pwm_max, NULL);
+
+-int adm1026_detect(struct i2c_adapter *adapter, int address,
+- int kind)
++static int adm1026_detect(struct i2c_adapter *adapter, int address,
++ int kind)
+ {
+ int company, verstep;
+ struct i2c_client *new_client;
+--- gregkh-2.6.orig/drivers/hwmon/ds1621.c
++++ gregkh-2.6/drivers/hwmon/ds1621.c
+@@ -186,8 +186,8 @@ static int ds1621_attach_adapter(struct
+ }
+
+ /* This function is called by i2c_probe */
+-int ds1621_detect(struct i2c_adapter *adapter, int address,
+- int kind)
++static int ds1621_detect(struct i2c_adapter *adapter, int address,
++ int kind)
+ {
+ int conf, temp;
+ struct i2c_client *new_client;
+--- gregkh-2.6.orig/drivers/hwmon/fscpos.c
++++ gregkh-2.6/drivers/hwmon/fscpos.c
+@@ -438,7 +438,7 @@ static int fscpos_attach_adapter(struct
+ return i2c_probe(adapter, &addr_data, fscpos_detect);
+ }
+
+-int fscpos_detect(struct i2c_adapter *adapter, int address, int kind)
++static int fscpos_detect(struct i2c_adapter *adapter, int address, int kind)
+ {
+ struct i2c_client *new_client;
+ struct fscpos_data *data;
+--- gregkh-2.6.orig/drivers/hwmon/it87.c
++++ gregkh-2.6/drivers/hwmon/it87.c
+@@ -738,7 +738,7 @@ exit:
+ }
+
+ /* This function is called by i2c_probe */
+-int it87_detect(struct i2c_adapter *adapter, int address, int kind)
++static int it87_detect(struct i2c_adapter *adapter, int address, int kind)
+ {
+ int i;
+ struct i2c_client *new_client;
+--- gregkh-2.6.orig/drivers/hwmon/lm80.c
++++ gregkh-2.6/drivers/hwmon/lm80.c
+@@ -393,7 +393,7 @@ static int lm80_attach_adapter(struct i2
+ return i2c_probe(adapter, &addr_data, lm80_detect);
+ }
+
+-int lm80_detect(struct i2c_adapter *adapter, int address, int kind)
++static int lm80_detect(struct i2c_adapter *adapter, int address, int kind)
+ {
+ int i, cur;
+ struct i2c_client *new_client;
diff --git a/i2c/static-04-i2c-chips-other.patch b/i2c/static-04-i2c-chips-other.patch
new file mode 100644
index 0000000000000..bf55aaabf7685
--- /dev/null
+++ b/i2c/static-04-i2c-chips-other.patch
@@ -0,0 +1,58 @@
+From khali@linux-fr.org Wed Oct 26 12:13:30 2005
+Date: Wed, 26 Oct 2005 21:09:41 +0200
+From: Jean Delvare <khali@linux-fr.org>
+To: Greg KH <greg@kroah.com>
+Cc: Ben Dooks <ben-linux@fluff.org>
+Subject: [PATCH 04/16] i2c: Static function fixes, 4 of 4
+Message-Id: <20051026210941.28517044.khali@linux-fr.org>
+Content-Disposition: inline; filename=static-04-i2c-chips-other.patch
+
+From: Ben Dooks <ben-linux@fluff.org>
+
+Fix functions declared static and then implemented
+without the static in drivers/i2c/chips.
+
+Signed-off-by: Ben Dooks <ben-linux@fluff.org>
+Signed-off-by: Jean Delvare <khali@linux-fr.org>
+Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
+
+---
+ drivers/i2c/chips/ds1374.c | 3 ++-
+ drivers/i2c/chips/pcf8574.c | 2 +-
+ drivers/i2c/chips/pcf8591.c | 2 +-
+ 3 files changed, 4 insertions(+), 3 deletions(-)
+
+--- gregkh-2.6.orig/drivers/i2c/chips/ds1374.c
++++ gregkh-2.6/drivers/i2c/chips/ds1374.c
+@@ -167,7 +167,8 @@ static void ds1374_set_tlet(ulong arg)
+
+ static ulong new_time;
+
+-DECLARE_TASKLET_DISABLED(ds1374_tasklet, ds1374_set_tlet, (ulong) & new_time);
++static DECLARE_TASKLET_DISABLED(ds1374_tasklet, ds1374_set_tlet,
++ (ulong) & new_time);
+
+ int ds1374_set_rtc_time(ulong nowtime)
+ {
+--- gregkh-2.6.orig/drivers/i2c/chips/pcf8574.c
++++ gregkh-2.6/drivers/i2c/chips/pcf8574.c
+@@ -115,7 +115,7 @@ static int pcf8574_attach_adapter(struct
+ }
+
+ /* This function is called by i2c_probe */
+-int pcf8574_detect(struct i2c_adapter *adapter, int address, int kind)
++static int pcf8574_detect(struct i2c_adapter *adapter, int address, int kind)
+ {
+ struct i2c_client *new_client;
+ struct pcf8574_data *data;
+--- gregkh-2.6.orig/drivers/i2c/chips/pcf8591.c
++++ gregkh-2.6/drivers/i2c/chips/pcf8591.c
+@@ -166,7 +166,7 @@ static int pcf8591_attach_adapter(struct
+ }
+
+ /* This function is called by i2c_probe */
+-int pcf8591_detect(struct i2c_adapter *adapter, int address, int kind)
++static int pcf8591_detect(struct i2c_adapter *adapter, int address, int kind)
+ {
+ struct i2c_client *new_client;
+ struct pcf8591_data *data;