diff -urN linux-2.4.24.org/Documentation/Configure.help linux-2.4.24/Documentation/Configure.help
---- linux-2.4.24.org/Documentation/Configure.help 2004-01-19 00:57:40.711147069 +0100
-+++ linux-2.4.24/Documentation/Configure.help 2004-01-19 01:37:57.569677460 +0100
-@@ -20124,6 +20124,16 @@
+--- linux-2.4.24.org/Documentation/Configure.help 2004-02-04 22:35:48.287889651 +0100
++++ linux-2.4.24/Documentation/Configure.help 2004-02-04 22:36:36.607840921 +0100
+@@ -20127,6 +20127,16 @@
<file:Documentation/modules.txt>.
The module will be called i2c-velleman.o.
I2C PCF 8584 interfaces
CONFIG_I2C_ALGOPCF
This allows you to use a range of I2C adapters called PCF adapters.
-@@ -20145,6 +20155,15 @@
+@@ -20148,6 +20158,15 @@
<file:Documentation/modules.txt>.
The module will be called i2c-elektor.o.
ITE I2C Algorithm
CONFIG_ITE_I2C_ALGO
This supports the use the ITE8172 I2C interface found on some MIPS
-@@ -20182,6 +20201,51 @@
+@@ -20185,6 +20204,51 @@
Supports the SGI interfaces like the ones found on SGI Indy VINO
or SGI O2 MACE.
CONFIG_I2C_CHARDEV
Say Y here to use i2c-* device files, usually found in the /dev
diff -urN linux-2.4.24.org/Documentation/i2c/dev-interface linux-2.4.24/Documentation/i2c/dev-interface
---- linux-2.4.24.org/Documentation/i2c/dev-interface 2004-01-19 00:57:38.305648310 +0100
-+++ linux-2.4.24/Documentation/i2c/dev-interface 2004-01-19 01:37:57.903608081 +0100
+--- linux-2.4.24.org/Documentation/i2c/dev-interface 2004-02-04 22:35:46.529255353 +0100
++++ linux-2.4.24/Documentation/i2c/dev-interface 2004-02-04 22:36:36.612839881 +0100
@@ -89,6 +89,11 @@
Selects ten bit addresses if select not equals 0, selects normal 7 bit
addresses if select equals 0. Default 0.
diff -urN linux-2.4.24.org/Documentation/i2c/i2c-pport linux-2.4.24/Documentation/i2c/i2c-pport
--- linux-2.4.24.org/Documentation/i2c/i2c-pport 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.4.24/Documentation/i2c/i2c-pport 2004-01-19 01:37:58.302525201 +0100
++++ linux-2.4.24/Documentation/i2c/i2c-pport 2004-02-04 22:36:36.619838425 +0100
@@ -0,0 +1,67 @@
+Parallel Port Adapters
+----------------------
+Daniel Smolik
+marvin@sitour.cz
diff -urN linux-2.4.24.org/Documentation/i2c/i2c-protocol linux-2.4.24/Documentation/i2c/i2c-protocol
---- linux-2.4.24.org/Documentation/i2c/i2c-protocol 2004-01-19 00:57:38.306648102 +0100
-+++ linux-2.4.24/Documentation/i2c/i2c-protocol 2004-01-19 01:37:59.228332853 +0100
+--- linux-2.4.24.org/Documentation/i2c/i2c-protocol 2004-02-04 22:35:46.532254730 +0100
++++ linux-2.4.24/Documentation/i2c/i2c-protocol 2004-02-04 22:36:36.621838010 +0100
@@ -65,3 +65,12 @@
need to emit an Rd instead of a Wr, or vice versa, you set this
flag. For example:
+ Flags I2C_M_NO_RD_ACK
+ In a read message, master A/NA bit is skipped.
diff -urN linux-2.4.24.org/Documentation/i2c/summary linux-2.4.24/Documentation/i2c/summary
---- linux-2.4.24.org/Documentation/i2c/summary 2004-01-19 00:57:38.333642477 +0100
-+++ linux-2.4.24/Documentation/i2c/summary 2004-01-19 01:37:59.718231070 +0100
+--- linux-2.4.24.org/Documentation/i2c/summary 2004-02-04 22:35:46.582244335 +0100
++++ linux-2.4.24/Documentation/i2c/summary 2004-02-04 22:36:36.624837386 +0100
@@ -59,16 +59,16 @@
i2c-algo-8xx: An algorithm for CPM's I2C device in Motorola 8xx processors (NOT BUILT BY DEFAULT)
i2c-algo-bit: A bit-banging algorithm
i2c-rpx: RPX board Motorola 8xx I2C device (uses i2c-algo-8xx) (NOT BUILT BY DEFAULT)
i2c-velleman: Velleman K8000 parallel port adapter (uses i2c-algo-bit)
diff -urN linux-2.4.24.org/Documentation/i2c/writing-clients linux-2.4.24/Documentation/i2c/writing-clients
---- linux-2.4.24.org/Documentation/i2c/writing-clients 2004-01-19 00:57:38.359637061 +0100
-+++ linux-2.4.24/Documentation/i2c/writing-clients 2004-01-19 01:38:00.209129080 +0100
+--- linux-2.4.24.org/Documentation/i2c/writing-clients 2004-02-04 22:35:46.605239553 +0100
++++ linux-2.4.24/Documentation/i2c/writing-clients 2004-02-04 22:36:36.629836346 +0100
@@ -24,16 +24,14 @@
routines, a client structure specific information like the actual I2C
address.
Extra client data
diff -urN linux-2.4.24.org/drivers/i2c/i2c-adap-ibm_ocp.c linux-2.4.24/drivers/i2c/i2c-adap-ibm_ocp.c
--- linux-2.4.24.org/drivers/i2c/i2c-adap-ibm_ocp.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.4.24/drivers/i2c/i2c-adap-ibm_ocp.c 2004-01-19 01:38:00.568054509 +0100
++++ linux-2.4.24/drivers/i2c/i2c-adap-ibm_ocp.c 2004-02-04 22:36:36.635835098 +0100
@@ -0,0 +1,346 @@
+/*
+ -------------------------------------------------------------------------
+module_exit(iic_ibmocp_exit);
diff -urN linux-2.4.24.org/drivers/i2c/i2c-algo-8xx.c linux-2.4.24/drivers/i2c/i2c-algo-8xx.c
--- linux-2.4.24.org/drivers/i2c/i2c-algo-8xx.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.4.24/drivers/i2c/i2c-algo-8xx.c 2004-01-19 01:38:00.572053678 +0100
++++ linux-2.4.24/drivers/i2c/i2c-algo-8xx.c 2004-02-04 22:36:36.640834059 +0100
@@ -0,0 +1,616 @@
+/*
+ * i2c-algo-8xx.c i2x driver algorithms for MPC8XX CPM
+MODULE_DESCRIPTION("I2C-Bus MPC8XX algorithm");
+MODULE_LICENSE("GPL");
diff -urN linux-2.4.24.org/drivers/i2c/i2c-algo-bit.c linux-2.4.24/drivers/i2c/i2c-algo-bit.c
---- linux-2.4.24.org/drivers/i2c/i2c-algo-bit.c 2004-01-19 00:55:48.051624305 +0100
-+++ linux-2.4.24/drivers/i2c/i2c-algo-bit.c 2004-01-19 01:38:00.761014419 +0100
+--- linux-2.4.24.org/drivers/i2c/i2c-algo-bit.c 2004-02-04 22:33:47.392029625 +0100
++++ linux-2.4.24/drivers/i2c/i2c-algo-bit.c 2004-02-04 22:36:36.644833227 +0100
@@ -18,24 +18,22 @@
Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */
/* ------------------------------------------------------------------------- */
-#endif
diff -urN linux-2.4.24.org/drivers/i2c/i2c-algo-ibm_ocp.c linux-2.4.24/drivers/i2c/i2c-algo-ibm_ocp.c
--- linux-2.4.24.org/drivers/i2c/i2c-algo-ibm_ocp.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.4.24/drivers/i2c/i2c-algo-ibm_ocp.c 2004-01-19 01:38:01.767805246 +0100
++++ linux-2.4.24/drivers/i2c/i2c-algo-ibm_ocp.c 2004-02-04 22:36:36.653831355 +0100
@@ -0,0 +1,901 @@
+/*
+ -------------------------------------------------------------------------
+ "debug level - 0 off; 1 normal; 2,3 more verbose; 9 iic-protocol");
+
diff -urN linux-2.4.24.org/drivers/i2c/i2c-algo-pcf.c linux-2.4.24/drivers/i2c/i2c-algo-pcf.c
---- linux-2.4.24.org/drivers/i2c/i2c-algo-pcf.c 2004-01-19 00:55:48.234586174 +0100
-+++ linux-2.4.24/drivers/i2c/i2c-algo-pcf.c 2004-01-19 01:38:01.845789044 +0100
+--- linux-2.4.24.org/drivers/i2c/i2c-algo-pcf.c 2004-02-04 22:33:47.589988460 +0100
++++ linux-2.4.24/drivers/i2c/i2c-algo-pcf.c 2004-02-04 22:36:36.656830731 +0100
@@ -32,14 +32,11 @@
#include <linux/delay.h>
#include <linux/slab.h>
-}
-#endif
diff -urN linux-2.4.24.org/drivers/i2c/i2c-core.c linux-2.4.24/drivers/i2c/i2c-core.c
---- linux-2.4.24.org/drivers/i2c/i2c-core.c 2004-01-19 00:55:48.021630556 +0100
-+++ linux-2.4.24/drivers/i2c/i2c-core.c 2004-01-19 01:38:02.521648626 +0100
+--- linux-2.4.24.org/drivers/i2c/i2c-core.c 2004-02-04 22:33:47.354037526 +0100
++++ linux-2.4.24/drivers/i2c/i2c-core.c 2004-02-04 22:36:36.665828860 +0100
@@ -18,56 +18,33 @@
/* ------------------------------------------------------------------------- */
+module_init(i2c_init);
+module_exit(i2c_exit);
diff -urN linux-2.4.24.org/drivers/i2c/i2c-dev.c linux-2.4.24/drivers/i2c/i2c-dev.c
---- linux-2.4.24.org/drivers/i2c/i2c-dev.c 2004-01-19 00:55:47.817673063 +0100
-+++ linux-2.4.24/drivers/i2c/i2c-dev.c 2004-01-19 01:38:03.213504884 +0100
+--- linux-2.4.24.org/drivers/i2c/i2c-dev.c 2004-02-04 22:33:47.320044595 +0100
++++ linux-2.4.24/drivers/i2c/i2c-dev.c 2004-02-04 22:36:36.672827404 +0100
@@ -28,9 +28,8 @@
/* The devfs code is contributed by Philipp Matthias Hahn
<pmhahn@titan.lahn.de> */
+module_init(i2c_dev_init);
+module_exit(i2c_dev_exit);
diff -urN linux-2.4.24.org/drivers/i2c/i2c-elektor.c linux-2.4.24/drivers/i2c/i2c-elektor.c
---- linux-2.4.24.org/drivers/i2c/i2c-elektor.c 2004-01-19 00:55:48.252582424 +0100
-+++ linux-2.4.24/drivers/i2c/i2c-elektor.c 2004-01-19 01:38:04.703195383 +0100
+--- linux-2.4.24.org/drivers/i2c/i2c-elektor.c 2004-02-04 22:33:47.601985965 +0100
++++ linux-2.4.24/drivers/i2c/i2c-elektor.c 2004-02-04 22:36:36.682825325 +0100
@@ -31,23 +31,22 @@
#include <linux/delay.h>
#include <linux/slab.h>
+module_init(i2c_pcfisa_init);
+module_exit(i2c_pcfisa_exit);
diff -urN linux-2.4.24.org/drivers/i2c/i2c-elv.c linux-2.4.24/drivers/i2c/i2c-elv.c
---- linux-2.4.24.org/drivers/i2c/i2c-elv.c 2004-01-19 00:55:48.270578673 +0100
-+++ linux-2.4.24/drivers/i2c/i2c-elv.c 2004-01-19 01:38:05.664995558 +0100
+--- linux-2.4.24.org/drivers/i2c/i2c-elv.c 2004-02-04 22:33:47.624981184 +0100
++++ linux-2.4.24/drivers/i2c/i2c-elv.c 2004-02-04 22:36:36.688824077 +0100
@@ -21,21 +21,18 @@
/* With some changes from Kyösti Mälkki <kmalkki@cc.hut.fi> and even
Frodo Looijaard <frodol@dds.nl> */
+module_exit(i2c_bitelv_exit);
diff -urN linux-2.4.24.org/drivers/i2c/i2c-frodo.c linux-2.4.24/drivers/i2c/i2c-frodo.c
--- linux-2.4.24.org/drivers/i2c/i2c-frodo.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.4.24/drivers/i2c/i2c-frodo.c 2004-01-19 01:38:06.299863657 +0100
++++ linux-2.4.24/drivers/i2c/i2c-frodo.c 2004-02-04 22:36:36.692823246 +0100
@@ -0,0 +1,83 @@
+
+/*
+
diff -urN linux-2.4.24.org/drivers/i2c/i2c-pcf-epp.c linux-2.4.24/drivers/i2c/i2c-pcf-epp.c
--- linux-2.4.24.org/drivers/i2c/i2c-pcf-epp.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.4.24/drivers/i2c/i2c-pcf-epp.c 2004-01-19 01:38:06.775764783 +0100
++++ linux-2.4.24/drivers/i2c/i2c-pcf-epp.c 2004-02-04 22:36:36.696822414 +0100
@@ -0,0 +1,281 @@
+/* ------------------------------------------------------------------------- */
+/* i2c-pcf-epp.c i2c-hw access for PCF8584 style EPP parallel port adapters */
+module_init(i2c_pcfepp_init);
+module_exit(pcf_epp_exit);
diff -urN linux-2.4.24.org/drivers/i2c/i2c-philips-par.c linux-2.4.24/drivers/i2c/i2c-philips-par.c
---- linux-2.4.24.org/drivers/i2c/i2c-philips-par.c 2004-01-19 00:55:48.322567838 +0100
-+++ linux-2.4.24/drivers/i2c/i2c-philips-par.c 2004-01-19 01:38:06.801759382 +0100
+--- linux-2.4.24.org/drivers/i2c/i2c-philips-par.c 2004-02-04 22:33:47.661973491 +0100
++++ linux-2.4.24/drivers/i2c/i2c-philips-par.c 2004-02-04 22:37:38.775910804 +0100
@@ -21,7 +21,7 @@
/* With some changes from Kyösti Mälkki <kmalkki@cc.hut.fi> and even
Frodo Looijaard <frodol@dds.nl> */
return;
}
-@@ -210,8 +182,12 @@
- adapter->bit_lp_data = type ? bit_lp_data2 : bit_lp_data;
+@@ -211,7 +183,11 @@
adapter->bit_lp_data.data = port;
+ /* reset hardware to sane state */
+- parport_claim_or_block(adapter->pdev);
+ if (parport_claim_or_block(adapter->pdev) < 0 ) {
-+ printk(KERN_ERR "i2c-philips-par: Could not claim parallel port.\n");
++ printk(KERN_ERR "i2c-philips-par: Could not claim parallel port.\n");
+ kfree(adapter);
+ return;
+ }
- /* reset hardware to sane state */
-- parport_claim_or_block(adapter->pdev);
- bit_lp_setsda(port, 1);
- bit_lp_setscl(port, 1);
+ adapter->bit_lp_data.setsda(port, 1);
+ adapter->bit_lp_data.setscl(port, 1);
parport_release(adapter->pdev);
@@ -257,7 +233,7 @@
NULL
+module_exit(i2c_bitlp_exit);
diff -urN linux-2.4.24.org/drivers/i2c/i2c-pport.c linux-2.4.24/drivers/i2c/i2c-pport.c
--- linux-2.4.24.org/drivers/i2c/i2c-pport.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.4.24/drivers/i2c/i2c-pport.c 2004-01-19 01:38:07.237668817 +0100
++++ linux-2.4.24/drivers/i2c/i2c-pport.c 2004-02-04 22:36:36.706820334 +0100
@@ -0,0 +1,205 @@
+/* ------------------------------------------------------------------------- */
+/* i2c-pport.c i2c-hw access for primitive i2c par. port adapter */
+module_init(i2c_bitpport_init);
+module_exit(i2c_bitpport_exit);
diff -urN linux-2.4.24.org/drivers/i2c/i2c-proc.c linux-2.4.24/drivers/i2c/i2c-proc.c
---- linux-2.4.24.org/drivers/i2c/i2c-proc.c 2004-01-19 00:55:48.174598676 +0100
-+++ linux-2.4.24/drivers/i2c/i2c-proc.c 2004-01-19 01:38:07.267662585 +0100
+--- linux-2.4.24.org/drivers/i2c/i2c-proc.c 2004-02-04 22:33:47.507005716 +0100
++++ linux-2.4.24/drivers/i2c/i2c-proc.c 2004-02-04 22:36:36.711819295 +0100
@@ -29,23 +29,15 @@
#include <linux/ctype.h>
#include <linux/sysctl.h>
+module_exit(i2c_proc_exit);
diff -urN linux-2.4.24.org/drivers/i2c/i2c-rpx.c linux-2.4.24/drivers/i2c/i2c-rpx.c
--- linux-2.4.24.org/drivers/i2c/i2c-rpx.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.4.24/drivers/i2c/i2c-rpx.c 2004-01-19 01:38:08.185471900 +0100
++++ linux-2.4.24/drivers/i2c/i2c-rpx.c 2004-02-04 22:36:36.715818463 +0100
@@ -0,0 +1,101 @@
+/*
+ * Embedded Planet RPX Lite MPC8xx CPM I2C interface.
+module_init(i2c_rpx_init);
+module_exit(i2c_rpx_exit);
diff -urN linux-2.4.24.org/drivers/i2c/i2c-velleman.c linux-2.4.24/drivers/i2c/i2c-velleman.c
---- linux-2.4.24.org/drivers/i2c/i2c-velleman.c 2004-01-19 00:55:48.331565963 +0100
-+++ linux-2.4.24/drivers/i2c/i2c-velleman.c 2004-01-19 01:38:08.250458398 +0100
+--- linux-2.4.24.org/drivers/i2c/i2c-velleman.c 2004-02-04 22:33:47.695966422 +0100
++++ linux-2.4.24/drivers/i2c/i2c-velleman.c 2004-02-04 22:36:36.718817839 +0100
@@ -18,18 +18,18 @@
Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */
/* ------------------------------------------------------------------------- */
+module_init(i2c_bitvelle_init);
+module_exit(i2c_bitvelle_exit);
diff -urN linux-2.4.24.org/drivers/i2c/scx200_acb.c linux-2.4.24/drivers/i2c/scx200_acb.c
---- linux-2.4.24.org/drivers/i2c/scx200_acb.c 2004-01-19 00:55:48.149603885 +0100
-+++ linux-2.4.24/drivers/i2c/scx200_acb.c 2004-01-19 01:41:26.143347097 +0100
+--- linux-2.4.24.org/drivers/i2c/scx200_acb.c 2004-02-04 22:33:47.486010082 +0100
++++ linux-2.4.24/drivers/i2c/scx200_acb.c 2004-02-04 22:36:36.724816591 +0100
@@ -408,16 +408,6 @@
return 0;
}
adapter->client_unregister = scx200_acb_unreg;
diff -urN linux-2.4.24.org/drivers/i2c/scx200_i2c.c linux-2.4.24/drivers/i2c/scx200_i2c.c
---- linux-2.4.24.org/drivers/i2c/scx200_i2c.c 2004-01-19 00:55:48.103613470 +0100
-+++ linux-2.4.24/drivers/i2c/scx200_i2c.c 2004-01-19 01:41:09.572789315 +0100
+--- linux-2.4.24.org/drivers/i2c/scx200_i2c.c 2004-02-04 22:33:47.451017359 +0100
++++ linux-2.4.24/drivers/i2c/scx200_i2c.c 2004-02-04 22:36:36.728815760 +0100
@@ -76,16 +76,6 @@
return 0;
}
.client_register = scx200_i2c_reg,
.client_unregister = scx200_i2c_unreg,
};
+diff -urN linux-2.4.24.org/drivers/media/video/saa5249.c linux-2.4.24/drivers/media/video/saa5249.c
+--- linux-2.4.24.org/drivers/media/video/saa5249.c 2004-02-04 22:33:53.966662445 +0100
++++ linux-2.4.24/drivers/media/video/saa5249.c 2004-02-04 22:36:37.042750465 +0100
+@@ -258,12 +258,12 @@
+
+ static struct i2c_driver i2c_driver_videotext =
+ {
+- IF_NAME, /* name */
+- I2C_DRIVERID_SAA5249, /* in i2c.h */
+- I2C_DF_NOTIFY,
+- saa5249_probe,
+- saa5249_detach,
+- saa5249_command
++ .name = IF_NAME, /* name */
++ .id = I2C_DRIVERID_SAA5249, /* in i2c.h */
++ .flags = I2C_DF_NOTIFY,
++ .attach_adapter = saa5249_probe,
++ .detach_client = saa5249_detach,
++ .command = saa5249_command
+ };
+
+ static struct i2c_client client_template = {
+diff -urN linux-2.4.24.org/drivers/media/video/tuner-3036.c linux-2.4.24/drivers/media/video/tuner-3036.c
+--- linux-2.4.24.org/drivers/media/video/tuner-3036.c 2004-02-04 22:33:54.024650387 +0100
++++ linux-2.4.24/drivers/media/video/tuner-3036.c 2004-02-04 22:36:37.049749010 +0100
+@@ -185,12 +185,12 @@
+ static struct i2c_driver
+ i2c_driver_tuner =
+ {
+- "sab3036", /* name */
+- I2C_DRIVERID_SAB3036, /* ID */
+- I2C_DF_NOTIFY,
+- tuner_probe,
+- tuner_detach,
+- tuner_command
++ .name = "sab3036", /* name */
++ .id = I2C_DRIVERID_SAB3036, /* ID */
++ .flags = I2C_DF_NOTIFY,
++ .attach_adapter = tuner_probe,
++ .detach_client = tuner_detach,
++ .command = tuner_command
+ };
+
+ static struct i2c_client client_template =
+diff -urN linux-2.4.24.org/drivers/video/matrox/i2c-matroxfb.c linux-2.4.24/drivers/video/matrox/i2c-matroxfb.c
+--- linux-2.4.24.org/drivers/video/matrox/i2c-matroxfb.c 2004-02-04 22:33:29.409768997 +0100
++++ linux-2.4.24/drivers/video/matrox/i2c-matroxfb.c 2004-02-04 22:36:37.057747346 +0100
+@@ -87,19 +87,9 @@
+ return (matroxfb_read_gpio(b->minfo) & b->mask.clock) ? 1 : 0;
+ }
+
+-static void matroxfb_dh_inc_use(struct i2c_adapter* dummy) {
+- MOD_INC_USE_COUNT;
+-}
+-
+-static void matroxfb_dh_dec_use(struct i2c_adapter* dummy) {
+- MOD_DEC_USE_COUNT;
+-}
+-
+ static struct i2c_adapter matrox_i2c_adapter_template =
+ {
+ .id = I2C_HW_B_G400,
+- .inc_use = matroxfb_dh_inc_use,
+- .dec_use = matroxfb_dh_dec_use,
+ };
+
+ static struct i2c_algo_bit_data matrox_i2c_algo_template =
+diff -urN linux-2.4.24.org/drivers/video/matrox/matroxfb_maven.c linux-2.4.24/drivers/video/matrox/matroxfb_maven.c
+--- linux-2.4.24.org/drivers/video/matrox/matroxfb_maven.c 2004-02-04 22:33:29.237804756 +0100
++++ linux-2.4.24/drivers/video/matrox/matroxfb_maven.c 2004-02-04 22:36:37.061746514 +0100
+@@ -1246,14 +1246,6 @@
+ static unsigned short normal_i2c_range[] = { MAVEN_I2CID, MAVEN_I2CID, I2C_CLIENT_END };
+ I2C_CLIENT_INSMOD;
+
+-static void maven_inc_use(struct i2c_client* clnt) {
+- MOD_INC_USE_COUNT;
+-}
+-
+-static void maven_dec_use(struct i2c_client* clnt) {
+- MOD_DEC_USE_COUNT;
+-}
+-
+ static struct i2c_driver maven_driver;
+
+ static int maven_detect_client(struct i2c_adapter* adapter, int address, unsigned short flags,
+@@ -1320,14 +1312,12 @@
+ static int maven_driver_registered = 0;
+
+ static struct i2c_driver maven_driver={
+- "maven",
+- I2C_DRIVERID_MGATVO,
+- I2C_DF_NOTIFY,
+- maven_attach_adapter,
+- maven_detach_client,
+- maven_command,
+- maven_inc_use,
+- maven_dec_use
++ .name = "maven",
++ .id = I2C_DRIVERID_MGATVO,
++ .flags = I2C_DF_NOTIFY,
++ .attach_adapter = maven_attach_adapter,
++ .detach_client = maven_detach_client,
++ .command = maven_command,
+ };
+
+ /* ************************** */
diff -urN linux-2.4.24.org/include/linux/i2c-algo-8xx.h linux-2.4.24/include/linux/i2c-algo-8xx.h
--- linux-2.4.24.org/include/linux/i2c-algo-8xx.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.4.24/include/linux/i2c-algo-8xx.h 2004-01-19 01:38:00.671033114 +0100
++++ linux-2.4.24/include/linux/i2c-algo-8xx.h 2004-02-04 22:36:36.749811393 +0100
@@ -0,0 +1,43 @@
+/* ------------------------------------------------------------------------- */
+/* i2c-algo-8xx.h i2c driver algorithms for MPX8XX CPM */
+
+#endif /* _LINUX_I2C_ALGO_8XX_H */
diff -urN linux-2.4.24.org/include/linux/i2c-algo-bit.h linux-2.4.24/include/linux/i2c-algo-bit.h
---- linux-2.4.24.org/include/linux/i2c-algo-bit.h 2004-01-19 00:52:56.054475029 +0100
-+++ linux-2.4.24/include/linux/i2c-algo-bit.h 2004-01-19 01:38:01.445872131 +0100
+--- linux-2.4.24.org/include/linux/i2c-algo-bit.h 2004-02-04 22:30:56.871489160 +0100
++++ linux-2.4.24/include/linux/i2c-algo-bit.h 2004-02-04 22:36:36.784804115 +0100
@@ -21,12 +21,10 @@
/* With some changes from Kyösti Mälkki <kmalkki@cc.hut.fi> and even
Frodo Looijaard <frodol@dds.nl> */
+#endif /* _LINUX_I2C_ALGO_BIT_H */
diff -urN linux-2.4.24.org/include/linux/i2c-algo-ibm_ocp.h linux-2.4.24/include/linux/i2c-algo-ibm_ocp.h
--- linux-2.4.24.org/include/linux/i2c-algo-ibm_ocp.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.4.24/include/linux/i2c-algo-ibm_ocp.h 2004-01-19 01:38:01.769804830 +0100
++++ linux-2.4.24/include/linux/i2c-algo-ibm_ocp.h 2004-02-04 22:36:36.788803283 +0100
@@ -0,0 +1,52 @@
+/* ------------------------------------------------------------------------- */
+/* i2c-algo-ibm_ocp.h i2c driver algorithms for IBM PPC 405 IIC adapters */
+
+#endif /* _LINUX_I2C_ALGO_IBM_OCP_H */
diff -urN linux-2.4.24.org/include/linux/i2c-algo-pcf.h linux-2.4.24/include/linux/i2c-algo-pcf.h
---- linux-2.4.24.org/include/linux/i2c-algo-pcf.h 2004-01-19 00:52:56.079469818 +0100
-+++ linux-2.4.24/include/linux/i2c-algo-pcf.h 2004-01-19 01:38:02.289696816 +0100
+--- linux-2.4.24.org/include/linux/i2c-algo-pcf.h 2004-02-04 22:30:56.872488952 +0100
++++ linux-2.4.24/include/linux/i2c-algo-pcf.h 2004-02-04 22:36:36.810798708 +0100
@@ -22,13 +22,12 @@
/* With some changes from Kyösti Mälkki <kmalkki@cc.hut.fi> and even
Frodo Looijaard <frodol@dds.nl> */
-#endif /* I2C_ALGO_PCF_H */
+#endif /* _LINUX_I2C_ALGO_PCF_H */
diff -urN linux-2.4.24.org/include/linux/i2c-dev.h linux-2.4.24/include/linux/i2c-dev.h
---- linux-2.4.24.org/include/linux/i2c-dev.h 2004-01-19 00:52:49.451851465 +0100
-+++ linux-2.4.24/include/linux/i2c-dev.h 2004-01-19 01:38:04.481241497 +0100
+--- linux-2.4.24.org/include/linux/i2c-dev.h 2004-02-04 22:30:49.848949493 +0100
++++ linux-2.4.24/include/linux/i2c-dev.h 2004-02-04 22:36:36.831794341 +0100
@@ -19,14 +19,16 @@
Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
*/
-#endif
+#endif /* _LINUX_I2C_DEV_H */
diff -urN linux-2.4.24.org/include/linux/i2c-elektor.h linux-2.4.24/include/linux/i2c-elektor.h
---- linux-2.4.24.org/include/linux/i2c-elektor.h 2004-01-19 00:52:56.339415628 +0100
-+++ linux-2.4.24/include/linux/i2c-elektor.h 2004-01-19 01:38:05.176097132 +0100
+--- linux-2.4.24.org/include/linux/i2c-elektor.h 2004-02-04 22:30:56.931476685 +0100
++++ linux-2.4.24/include/linux/i2c-elektor.h 2004-02-04 22:36:36.834793718 +0100
@@ -1,47 +0,0 @@
-/* ------------------------------------------------------------------------- */
-/* i2c-elektor.c i2c-hw access for PCF8584 style isa bus adaptes */
-
-#endif /* PCF_ELEKTOR_H */
diff -urN linux-2.4.24.org/include/linux/i2c.h linux-2.4.24/include/linux/i2c.h
---- linux-2.4.24.org/include/linux/i2c.h 2004-01-19 00:52:49.411859802 +0100
-+++ linux-2.4.24/include/linux/i2c.h 2004-01-19 01:38:09.789138720 +0100
+--- linux-2.4.24.org/include/linux/i2c.h 2004-02-04 22:30:49.830953235 +0100
++++ linux-2.4.24/include/linux/i2c.h 2004-02-04 22:36:36.957768140 +0100
@@ -23,36 +23,33 @@
/* With some changes from Kyösti Mälkki <kmalkki@cc.hut.fi> and
Frodo Looijaard <frodol@dds.nl> */
+
+#endif /* _LINUX_I2C_H */
diff -urN linux-2.4.24.org/include/linux/i2c-id.h linux-2.4.24/include/linux/i2c-id.h
---- linux-2.4.24.org/include/linux/i2c-id.h 2004-01-19 00:52:42.139375899 +0100
-+++ linux-2.4.24/include/linux/i2c-id.h 2004-01-19 01:38:06.401842469 +0100
+--- linux-2.4.24.org/include/linux/i2c-id.h 2004-02-04 22:30:48.969132451 +0100
++++ linux-2.4.24/include/linux/i2c-id.h 2004-02-04 22:36:37.005758159 +0100
@@ -20,10 +20,11 @@
Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */
/* ------------------------------------------------------------------------- */
+#endif /* LINUX_I2C_ID_H */
diff -urN linux-2.4.24.org/include/linux/i2c-pcf8584.h linux-2.4.24/include/linux/i2c-pcf8584.h
--- linux-2.4.24.org/include/linux/i2c-pcf8584.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.4.24/include/linux/i2c-pcf8584.h 2004-01-19 01:38:06.778764160 +0100
++++ linux-2.4.24/include/linux/i2c-pcf8584.h 2004-02-04 22:36:37.010757119 +0100
@@ -0,0 +1,78 @@
+/* -------------------------------------------------------------------- */
+/* i2c-pcf8584.h: PCF 8584 global defines */
+
+#endif /* _LINUX_I2C_PCF8584_H */
diff -urN linux-2.4.24.org/include/linux/i2c-proc.h linux-2.4.24/include/linux/i2c-proc.h
---- linux-2.4.24.org/include/linux/i2c-proc.h 2004-01-19 00:52:58.774907910 +0100
-+++ linux-2.4.24/include/linux/i2c-proc.h 2004-01-19 01:38:07.991512197 +0100
+--- linux-2.4.24.org/include/linux/i2c-proc.h 2004-02-04 22:30:58.421166905 +0100
++++ linux-2.4.24/include/linux/i2c-proc.h 2004-02-04 22:36:37.038751297 +0100
@@ -1,6 +1,7 @@
/*
- sensors.h - Part of lm_sensors, Linux kernel modules for hardware
-#endif /* def SENSORS_SENSORS_H */
+#endif /* def _LINUX_I2C_PROC_H */
-diff -urN linux-2.4.24.org/drivers/i2c/scx200_acb.c linux-2.4.24/drivers/i2c/scx200_acb.c
---- linux-2.4.24.org/drivers/i2c/scx200_acb.c 2004-01-19 00:55:48.149603885 +0100
-+++ linux-2.4.24/drivers/i2c/scx200_acb.c 2004-01-19 01:41:26.143347097 +0100
-@@ -408,16 +408,6 @@
- return 0;
- }
-
--static void scx200_acb_inc_use(struct i2c_adapter *adapter)
--{
-- MOD_INC_USE_COUNT;
--}
--
--static void scx200_acb_dec_use(struct i2c_adapter *adapter)
--{
-- MOD_DEC_USE_COUNT;
--}
--
- /* For now, we only handle combined mode (smbus) */
- static struct i2c_algorithm scx200_acb_algorithm = {
- name: "NatSemi SCx200 ACCESS.bus",
-@@ -482,8 +472,6 @@
- sprintf(adapter->name, "SCx200 ACB%d", index);
- adapter->id = I2C_ALGO_SMBUS;
- adapter->algo = &scx200_acb_algorithm;
-- adapter->inc_use = scx200_acb_inc_use;
-- adapter->dec_use = scx200_acb_dec_use;
- adapter->client_register = scx200_acb_reg;
- adapter->client_unregister = scx200_acb_unreg;
-
-diff -urN linux-2.4.24.org/drivers/i2c/scx200_i2c.c linux-2.4.24/drivers/i2c/scx200_i2c.c
---- linux-2.4.24.org/drivers/i2c/scx200_i2c.c 2004-01-19 00:55:48.103613470 +0100
-+++ linux-2.4.24/drivers/i2c/scx200_i2c.c 2004-01-19 01:41:09.572789315 +0100
-@@ -76,16 +76,6 @@
- return 0;
- }
-
--static void scx200_i2c_inc_use(struct i2c_adapter *adap)
--{
-- MOD_INC_USE_COUNT;
--}
--
--static void scx200_i2c_dec_use(struct i2c_adapter *adap)
--{
-- MOD_DEC_USE_COUNT;
--}
--
- /* ------------------------------------------------------------------------
- * Encapsulate the above functions in the correct operations structure.
- * This is only done when more than one hardware adapter is supported.
-@@ -104,8 +94,6 @@
- .name = "NatSemi SCx200 I2C",
- .id = I2C_HW_B_VELLE,
- .algo_data = &scx200_i2c_data,
-- .inc_use = scx200_i2c_inc_use,
-- .dec_use = scx200_i2c_dec_use,
- .client_register = scx200_i2c_reg,
- .client_unregister = scx200_i2c_unreg,
- };