diff for duplicates of <415067CB.1020101@linuxtv.org> diff --git a/a/1.txt b/N1/1.txt index b505d61..9196f6b 100644 --- a/a/1.txt +++ b/N1/1.txt @@ -27,7 +27,7 @@ devices won't be recognized anymore, because the .class entries don't match. Patches 1-3 are straight forward. For patches 4-7 I once created the following list: -=>4 +==>4 #drivers/ieee1394/pcilynx.c => I2C_CLASS_NONE #drivers/macintosh/therm_adt746x.c => I2C_CLASS_HWMON #drivers/macintosh/therm_pm72.c => I2C_CLASS_HWMON @@ -39,7 +39,7 @@ following list: #sound/oss/dmasound/dac3550a.c => I2C_CLASS_SOUND #sound/oss/dmasound/tas_common.c => I2C_CLASS_SOUND -=>5 +==>5 #drivers/i2c/algos/i2c-algo-pcf.c => I2C_CLASS_ALL #drivers/i2c/busses/i2c-elektor.c => I2C_CLASS_ALL #drivers/video/aty/radeon_i2c.c => I2C_CLASS_NONE @@ -51,14 +51,14 @@ I2C_CLASS_TV_ANALOG I2C_CLASS_TV_DIGITAL #drivers/media/dvb/bt8xx/dvb-bt8xx.c => I2C_CLASS_ALL -=>6 +==>6 #drivers/i2c/busses/i2c-ibm_iic.c: => I2C_CLASS_ALL #drivers/i2c/busses/i2c-iop3xx.c:=> I2C_CLASS_ALL #drivers/i2c/busses/scx200_i2c.c => I2C_CLASS_ALL #drivers/i2c/busses/i2c-ite.c => I2C_CLASS_ALL (drivers/i2c/algos/i2c-algo-ite.c:) -=>7 +==>7 #drivers/i2c/busses/i2c-frodo.c => I2C_CLASS_ALL #drivers/i2c/busses/i2c-i810.c => I2C_CLASS_ALL + I2C_CLASS_DDC #drivers/i2c/busses/i2c-prosavage.c => I2C_CLASS_ALL + I2C_CLASS_DDC @@ -70,1336 +70,3 @@ I2C_CLASS_TV_DIGITAL CU Michael. - --------------- next part -------------- -diff -ura xx-linux-2.6-6-rc3-mm2/drivers/media/video/adv7170.c linux-2.6-6-rc3-mm2/drivers/media/video/adv7170.c ---- xx-linux-2.6-6-rc3-mm2/drivers/media/video/adv7170.c 2004-05-09 11:03:04.000000000 +0200 -+++ linux-2.6-6-rc3-mm2/drivers/media/video/adv7170.c 2004-05-09 11:28:12.000000000 +0200 -@@ -516,6 +516,7 @@ - - .id = I2C_DRIVERID_ADV7170, - .flags = I2C_DF_NOTIFY, -+ .class = I2C_CLASS_TV_ANALOG, - - .attach_adapter = adv7170_attach_adapter, - .detach_client = adv7170_detach_client, -diff -ura xx-linux-2.6-6-rc3-mm2/drivers/media/video/adv7175.c linux-2.6-6-rc3-mm2/drivers/media/video/adv7175.c ---- xx-linux-2.6-6-rc3-mm2/drivers/media/video/adv7175.c 2004-05-09 11:03:04.000000000 +0200 -+++ linux-2.6-6-rc3-mm2/drivers/media/video/adv7175.c 2004-05-09 11:27:55.000000000 +0200 -@@ -538,6 +538,7 @@ - - .id = I2C_DRIVERID_ADV7175, - .flags = I2C_DF_NOTIFY, -+ .class = I2C_CLASS_TV_ANALOG, - - .attach_adapter = adv7175_attach_adapter, - .detach_client = adv7175_detach_client, -diff -ura xx-linux-2.6-6-rc3-mm2/drivers/media/video/bt819.c linux-2.6-6-rc3-mm2/drivers/media/video/bt819.c ---- xx-linux-2.6-6-rc3-mm2/drivers/media/video/bt819.c 2004-05-09 11:03:03.000000000 +0200 -+++ linux-2.6-6-rc3-mm2/drivers/media/video/bt819.c 2004-05-09 11:24:22.000000000 +0200 -@@ -642,6 +642,7 @@ - - .id = I2C_DRIVERID_BT819, - .flags = I2C_DF_NOTIFY, -+ .class = I2C_CLASS_TV_ANALOG, - - .attach_adapter = bt819_attach_adapter, - .detach_client = bt819_detach_client, -diff -ura xx-linux-2.6-6-rc3-mm2/drivers/media/video/bt856.c linux-2.6-6-rc3-mm2/drivers/media/video/bt856.c ---- xx-linux-2.6-6-rc3-mm2/drivers/media/video/bt856.c 2004-05-09 11:03:03.000000000 +0200 -+++ linux-2.6-6-rc3-mm2/drivers/media/video/bt856.c 2004-05-09 11:23:22.000000000 +0200 -@@ -423,6 +423,7 @@ - - .id = I2C_DRIVERID_BT856, - .flags = I2C_DF_NOTIFY, -+ .class = I2C_CLASS_TV_ANALOG, - - .attach_adapter = bt856_attach_adapter, - .detach_client = bt856_detach_client, -diff -ura xx-linux-2.6-6-rc3-mm2/drivers/media/video/saa7110.c linux-2.6-6-rc3-mm2/drivers/media/video/saa7110.c ---- xx-linux-2.6-6-rc3-mm2/drivers/media/video/saa7110.c 2004-05-09 11:03:03.000000000 +0200 -+++ linux-2.6-6-rc3-mm2/drivers/media/video/saa7110.c 2004-05-09 11:22:57.000000000 +0200 -@@ -599,6 +599,7 @@ - - .id = I2C_DRIVERID_SAA7110, - .flags = I2C_DF_NOTIFY, -+ .class = I2C_CLASS_TV_ANALOG, - - .attach_adapter = saa7110_attach_adapter, - .detach_client = saa7110_detach_client, -diff -ura xx-linux-2.6-6-rc3-mm2/drivers/media/video/saa7111.c linux-2.6-6-rc3-mm2/drivers/media/video/saa7111.c ---- xx-linux-2.6-6-rc3-mm2/drivers/media/video/saa7111.c 2004-05-09 11:06:43.000000000 +0200 -+++ linux-2.6-6-rc3-mm2/drivers/media/video/saa7111.c 2004-05-09 11:24:54.000000000 +0200 -@@ -608,7 +608,8 @@ - - .id = I2C_DRIVERID_SAA7111A, - .flags = I2C_DF_NOTIFY, -- -+ .class = I2C_CLASS_TV_ANALOG, -+ - .attach_adapter = saa7111_attach_adapter, - .detach_client = saa7111_detach_client, - .command = saa7111_command, -diff -ura xx-linux-2.6-6-rc3-mm2/drivers/media/video/saa7114.c linux-2.6-6-rc3-mm2/drivers/media/video/saa7114.c ---- xx-linux-2.6-6-rc3-mm2/drivers/media/video/saa7114.c 2004-05-09 11:03:04.000000000 +0200 -+++ linux-2.6-6-rc3-mm2/drivers/media/video/saa7114.c 2004-05-09 11:27:15.000000000 +0200 -@@ -1222,6 +1222,7 @@ - - .id = I2C_DRIVERID_SAA7114, - .flags = I2C_DF_NOTIFY, -+ .class = I2C_CLASS_TV_ANALOG, - - .attach_adapter = saa7114_attach_adapter, - .detach_client = saa7114_detach_client, -diff -ura xx-linux-2.6-6-rc3-mm2/drivers/media/video/saa7185.c linux-2.6-6-rc3-mm2/drivers/media/video/saa7185.c ---- xx-linux-2.6-6-rc3-mm2/drivers/media/video/saa7185.c 2004-05-09 11:03:03.000000000 +0200 -+++ linux-2.6-6-rc3-mm2/drivers/media/video/saa7185.c 2004-05-09 11:23:55.000000000 +0200 -@@ -505,6 +505,7 @@ - - .id = I2C_DRIVERID_SAA7185B, - .flags = I2C_DF_NOTIFY, -+ .class = I2C_CLASS_TV_ANALOG, - - .attach_adapter = saa7185_attach_adapter, - .detach_client = saa7185_detach_client, -diff -ura xx-linux-2.6-6-rc3-mm2/drivers/media/video/tda9840.c linux-2.6-6-rc3-mm2/drivers/media/video/tda9840.c ---- xx-linux-2.6-6-rc3-mm2/drivers/media/video/tda9840.c 2004-05-09 11:03:03.000000000 +0200 -+++ linux-2.6-6-rc3-mm2/drivers/media/video/tda9840.c 2004-05-09 11:26:35.000000000 +0200 -@@ -263,6 +263,7 @@ - .name = "tda9840 driver", - .id = I2C_DRIVERID_TDA9840, - .flags = I2C_DF_NOTIFY, -+ .class = I2C_CLASS_TV_ANALOG, - .attach_adapter = tda9840_attach, - .detach_client = tda9840_detach, - .command = tda9840_command, -diff -ura xx-linux-2.6-6-rc3-mm2/drivers/media/video/tea6415c.c linux-2.6-6-rc3-mm2/drivers/media/video/tea6415c.c ---- xx-linux-2.6-6-rc3-mm2/drivers/media/video/tea6415c.c 2004-05-09 11:03:03.000000000 +0200 -+++ linux-2.6-6-rc3-mm2/drivers/media/video/tea6415c.c 2004-05-09 11:26:52.000000000 +0200 -@@ -212,6 +212,7 @@ - .name = "tea6415c driver", - .id = I2C_DRIVERID_TEA6415C, - .flags = I2C_DF_NOTIFY, -+ .class = I2C_CLASS_TV_ANALOG, - .attach_adapter = tea6415c_attach, - .detach_client = tea6415c_detach, - .command = tea6415c_command, -diff -ura xx-linux-2.6-6-rc3-mm2/drivers/media/video/tea6420.c linux-2.6-6-rc3-mm2/drivers/media/video/tea6420.c ---- xx-linux-2.6-6-rc3-mm2/drivers/media/video/tea6420.c 2004-05-09 11:03:03.000000000 +0200 -+++ linux-2.6-6-rc3-mm2/drivers/media/video/tea6420.c 2004-05-09 11:26:09.000000000 +0200 -@@ -192,8 +192,9 @@ - .name = "tea6420 driver", - .id = I2C_DRIVERID_TEA6420, - .flags = I2C_DF_NOTIFY, -- .attach_adapter = tea6420_attach, -+ .class = I2C_CLASS_TV_ANALOG, -+ .attach_adapter = tea6420_attach, - .detach_client = tea6420_detach, - .command = tea6420_command, - }; - -diff -ura xx-linux-2.6-6-rc3-mm2/drivers/media/video/tuner-3036.c linux-2.6-6-rc3-mm2/drivers/media/video/tuner-3036.c ---- xx-linux-2.6-6-rc3-mm2/drivers/media/video/tuner-3036.c 2004-05-09 11:03:03.000000000 +0200 -+++ linux-2.6-6-rc3-mm2/drivers/media/video/tuner-3036.c 2004-05-09 11:25:25.000000000 +0200 -@@ -185,6 +185,7 @@ - .name = "sab3036", - .id = I2C_DRIVERID_SAB3036, - .flags = I2C_DF_NOTIFY, -+ .class = I2C_CLASS_TV_ANALOG, - .attach_adapter = tuner_probe, - .detach_client = tuner_detach, - .command = tuner_command -@@ -200,8 +201,7 @@ - int __init - tuner3036_init(void) - { -- i2c_add_driver(&i2c_driver_tuner); -- return 0; -+ return i2c_add_driver(&i2c_driver_tuner); - } - - void __exit -diff -ura xx-linux-2.6-6-rc3-mm2/drivers/media/video/vpx3220.c linux-2.6-6-rc3-mm2/drivers/media/video/vpx3220.c ---- xx-linux-2.6-6-rc3-mm2/drivers/media/video/vpx3220.c 2004-05-09 11:03:03.000000000 +0200 -+++ linux-2.6-6-rc3-mm2/drivers/media/video/vpx3220.c 2004-05-09 11:27:33.000000000 +0200 -@@ -731,6 +731,7 @@ - - .id = I2C_DRIVERID_VPX3220, - .flags = I2C_DF_NOTIFY, -+ .class = I2C_CLASS_TV_ANALOG, - - .attach_adapter = vpx3220_attach_adapter, - .detach_client = vpx3220_detach_client, --------------- next part -------------- -diff -ura xx-linux-2.6-6-rc3-mm2/drivers/media/video/bt832.c linux-2.6-6-rc3-mm2/drivers/media/video/bt832.c ---- xx-linux-2.6-6-rc3-mm2/drivers/media/video/bt832.c 2004-05-09 11:11:10.000000000 +0200 -+++ linux-2.6-6-rc3-mm2/drivers/media/video/bt832.c 2004-05-09 14:49:58.000000000 +0200 -@@ -197,9 +197,7 @@ - - static int bt832_probe(struct i2c_adapter *adap) - { -- if (adap->class & I2C_CLASS_TV_ANALOG) -- return i2c_probe(adap, &addr_data, bt832_attach); -- return 0; -+ return i2c_probe(adap, &addr_data, bt832_attach); - } - - static int bt832_detach(struct i2c_client *client) -@@ -243,6 +241,7 @@ - .name = "i2c bt832 driver", - .id = -1, /* FIXME */ - .flags = I2C_DF_NOTIFY, -+ .class = I2C_CLASS_TV_ANALOG, - .attach_adapter = bt832_probe, - .detach_client = bt832_detach, - .command = bt832_command, -@@ -257,8 +256,7 @@ - - int bt832_init_module(void) - { -- i2c_add_driver(&driver); -- return 0; -+ return i2c_add_driver(&driver); - } - - static void bt832_cleanup_module(void) -diff -ura xx-linux-2.6-6-rc3-mm2/drivers/media/video/msp3400.c linux-2.6-6-rc3-mm2/drivers/media/video/msp3400.c ---- xx-linux-2.6-6-rc3-mm2/drivers/media/video/msp3400.c 2004-05-09 11:11:11.000000000 +0200 -+++ linux-2.6-6-rc3-mm2/drivers/media/video/msp3400.c 2004-05-09 14:48:30.000000000 +0200 -@@ -1222,6 +1222,7 @@ - .name = "i2c msp3400 driver", - .id = I2C_DRIVERID_MSP3400, - .flags = I2C_DF_NOTIFY, -+ .class = I2C_CLASS_TV_ANALOG, - .attach_adapter = msp_probe, - .detach_client = msp_detach, - .command = msp_command, -@@ -1353,19 +1354,7 @@ - - static int msp_probe(struct i2c_adapter *adap) - { --#ifdef I2C_CLASS_TV_ANALOG -- if (adap->class & I2C_CLASS_TV_ANALOG) -- return i2c_probe(adap, &addr_data, msp_attach); --#else -- switch (adap->id) { -- case I2C_ALGO_BIT | I2C_HW_SMBUS_VOODOO3: -- case I2C_ALGO_BIT | I2C_HW_B_BT848: -- //case I2C_ALGO_SAA7134: -- return i2c_probe(adap, &addr_data, msp_attach); -- break; -- } --#endif -- return 0; -+ return i2c_probe(adap, &addr_data, msp_attach); - } - - static void msp_wake_thread(struct i2c_client *client) -@@ -1558,8 +1547,7 @@ - - static int msp3400_init_module(void) - { -- i2c_add_driver(&driver); -- return 0; -+ return i2c_add_driver(&driver); - } - - static void msp3400_cleanup_module(void) -diff -ura xx-linux-2.6-6-rc3-mm2/drivers/media/video/saa5246a.c linux-2.6-6-rc3-mm2/drivers/media/video/saa5246a.c ---- xx-linux-2.6-6-rc3-mm2/drivers/media/video/saa5246a.c 2004-05-09 11:11:11.000000000 +0200 -+++ linux-2.6-6-rc3-mm2/drivers/media/video/saa5246a.c 2004-05-09 14:52:53.000000000 +0200 -@@ -143,9 +143,7 @@ - */ - static int saa5246a_probe(struct i2c_adapter *adap) - { -- if (adap->class & I2C_CLASS_TV_ANALOG) -- return i2c_probe(adap, &addr_data, saa5246a_attach); -- return 0; -+ return i2c_probe(adap, &addr_data, saa5246a_attach); - } - - static int saa5246a_detach(struct i2c_client *client) -@@ -174,6 +172,7 @@ - .name = IF_NAME, /* name */ - .id = I2C_DRIVERID_SAA5249, /* in i2c.h */ - .flags = I2C_DF_NOTIFY, -+ .class = I2C_CLASS_TV_ANALOG, - .attach_adapter = saa5246a_probe, - .detach_client = saa5246a_detach, - .command = saa5246a_command -diff -ura xx-linux-2.6-6-rc3-mm2/drivers/media/video/saa5249.c linux-2.6-6-rc3-mm2/drivers/media/video/saa5249.c ---- xx-linux-2.6-6-rc3-mm2/drivers/media/video/saa5249.c 2004-05-09 11:11:11.000000000 +0200 -+++ linux-2.6-6-rc3-mm2/drivers/media/video/saa5249.c 2004-05-09 14:50:30.000000000 +0200 -@@ -219,9 +219,7 @@ - - static int saa5249_probe(struct i2c_adapter *adap) - { -- if (adap->class & I2C_CLASS_TV_ANALOG) -- return i2c_probe(adap, &addr_data, saa5249_attach); -- return 0; -+ return i2c_probe(adap, &addr_data, saa5249_attach); - } - - static int saa5249_detach(struct i2c_client *client) -@@ -249,6 +247,7 @@ - .name = IF_NAME, /* name */ - .id = I2C_DRIVERID_SAA5249, /* in i2c.h */ - .flags = I2C_DF_NOTIFY, -+ .class = I2C_CLASS_TV_ANALOG, - .attach_adapter = saa5249_probe, - .detach_client = saa5249_detach, - .command = saa5249_command -diff -ura xx-linux-2.6-6-rc3-mm2/drivers/media/video/saa7134/saa6752hs.c linux-2.6-6-rc3-mm2/drivers/media/video/saa7134/saa6752hs.c ---- xx-linux-2.6-6-rc3-mm2/drivers/media/video/saa7134/saa6752hs.c 2004-05-09 11:11:11.000000000 +0200 -+++ linux-2.6-6-rc3-mm2/drivers/media/video/saa7134/saa6752hs.c 2004-05-09 14:47:01.000000000 +0200 -@@ -335,9 +335,7 @@ - - static int saa6752hs_probe(struct i2c_adapter *adap) - { -- if (adap->class & I2C_CLASS_TV_ANALOG) -- return i2c_probe(adap, &addr_data, saa6752hs_attach); -- return 0; -+ return i2c_probe(adap, &addr_data, saa6752hs_attach); - } - - static int saa6752hs_detach(struct i2c_client *client) -@@ -376,6 +373,7 @@ - .name = "i2c saa6752hs MPEG encoder", - .id = I2C_DRIVERID_SAA6752HS, - .flags = I2C_DF_NOTIFY, -+ .class = I2C_CLASS_TV_ANALOG, - .attach_adapter = saa6752hs_probe, - .detach_client = saa6752hs_detach, - .command = saa6752hs_command, -@@ -390,8 +388,7 @@ - - static int saa6752hs_init_module(void) - { -- i2c_add_driver(&driver); -- return 0; -+ return i2c_add_driver(&driver); - } - - static void saa6752hs_cleanup_module(void) -diff -ura xx-linux-2.6-6-rc3-mm2/drivers/media/video/tda7432.c linux-2.6-6-rc3-mm2/drivers/media/video/tda7432.c ---- xx-linux-2.6-6-rc3-mm2/drivers/media/video/tda7432.c 2004-05-09 11:11:11.000000000 +0200 -+++ linux-2.6-6-rc3-mm2/drivers/media/video/tda7432.c 2004-05-09 14:49:17.000000000 +0200 -@@ -338,14 +338,7 @@ - - static int tda7432_probe(struct i2c_adapter *adap) - { --#ifdef I2C_CLASS_TV_ANALOG -- if (adap->class & I2C_CLASS_TV_ANALOG) -- return i2c_probe(adap, &addr_data, tda7432_attach); --#else -- if (adap->id = (I2C_ALGO_BIT | I2C_HW_B_BT848)) -- return i2c_probe(adap, &addr_data, tda7432_attach); --#endif -- return 0; -+ return i2c_probe(adap, &addr_data, tda7432_attach); - } - - static int tda7432_detach(struct i2c_client *client) -@@ -520,6 +513,7 @@ - .name = "i2c tda7432 driver", - .id = I2C_DRIVERID_TDA7432, - .flags = I2C_DF_NOTIFY, -+ .class = I2C_CLASS_TV_ANALOG, - .attach_adapter = tda7432_probe, - .detach_client = tda7432_detach, - .command = tda7432_command, -@@ -538,8 +532,7 @@ - printk(KERN_ERR "tda7432: loudness parameter must be between 0 and 15\n"); - return -EINVAL; - } -- i2c_add_driver(&driver); -- return 0; -+ return i2c_add_driver(&driver); - } - - static void tda7432_fini(void) -diff -ura xx-linux-2.6-6-rc3-mm2/drivers/media/video/tda9875.c linux-2.6-6-rc3-mm2/drivers/media/video/tda9875.c ---- xx-linux-2.6-6-rc3-mm2/drivers/media/video/tda9875.c 2004-05-09 11:11:11.000000000 +0200 -+++ linux-2.6-6-rc3-mm2/drivers/media/video/tda9875.c 2004-05-09 14:48:00.000000000 +0200 -@@ -272,14 +272,7 @@ - - static int tda9875_probe(struct i2c_adapter *adap) - { --#ifdef I2C_CLASS_TV_ANALOG -- if (adap->class & I2C_CLASS_TV_ANALOG) -- return i2c_probe(adap, &addr_data, tda9875_attach); --#else -- if (adap->id = (I2C_ALGO_BIT | I2C_HW_B_BT848)) -- return i2c_probe(adap, &addr_data, tda9875_attach); --#endif -- return 0; -+ return i2c_probe(adap, &addr_data, tda9875_attach); - } - - static int tda9875_detach(struct i2c_client *client) -@@ -391,6 +384,7 @@ - .name = "i2c tda9875 driver", - .id = I2C_DRIVERID_TDA9875, - .flags = I2C_DF_NOTIFY, -+ .class = I2C_CLASS_TV_ANALOG, - .attach_adapter = tda9875_probe, - .detach_client = tda9875_detach, - .command = tda9875_command, -@@ -405,8 +399,7 @@ - - static int tda9875_init(void) - { -- i2c_add_driver(&driver); -- return 0; -+ return i2c_add_driver(&driver); - } - - static void tda9875_fini(void) -diff -ura xx-linux-2.6-6-rc3-mm2/drivers/media/video/tda9887.c linux-2.6-6-rc3-mm2/drivers/media/video/tda9887.c ---- xx-linux-2.6-6-rc3-mm2/drivers/media/video/tda9887.c 2004-05-09 11:11:11.000000000 +0200 -+++ linux-2.6-6-rc3-mm2/drivers/media/video/tda9887.c 2004-05-09 14:46:31.000000000 +0200 -@@ -370,19 +370,7 @@ - - static int tda9887_probe(struct i2c_adapter *adap) - { --#ifdef I2C_CLASS_TV_ANALOG -- if (adap->class & I2C_CLASS_TV_ANALOG) -- return i2c_probe(adap, &addr_data, tda9887_attach); --#else -- switch (adap->id) { -- case I2C_ALGO_BIT | I2C_HW_B_BT848: -- case I2C_ALGO_BIT | I2C_HW_B_RIVA: -- case I2C_ALGO_SAA7134: -- return i2c_probe(adap, &addr_data, tda9887_attach); -- break; -- } --#endif -- return 0; -+ return i2c_probe(adap, &addr_data, tda9887_attach); - } - - static int tda9887_detach(struct i2c_client *client) -@@ -447,6 +435,7 @@ - .name = "i2c tda9887 driver", - .id = -1, /* FIXME */ - .flags = I2C_DF_NOTIFY, -+ .class = I2C_CLASS_TV_ANALOG, - .attach_adapter = tda9887_probe, - .detach_client = tda9887_detach, - .command = tda9887_command, -@@ -460,8 +449,7 @@ - - static int tda9887_init_module(void) - { -- i2c_add_driver(&driver); -- return 0; -+ return i2c_add_driver(&driver); - } - - static void tda9887_cleanup_module(void) -diff -ura xx-linux-2.6-6-rc3-mm2/drivers/media/video/tuner.c linux-2.6-6-rc3-mm2/drivers/media/video/tuner.c ---- xx-linux-2.6-6-rc3-mm2/drivers/media/video/tuner.c 2004-05-09 11:11:11.000000000 +0200 -+++ linux-2.6-6-rc3-mm2/drivers/media/video/tuner.c 2004-05-09 14:51:10.000000000 +0200 -@@ -1067,21 +1067,7 @@ - } - this_adap = 0; - --#ifdef I2C_CLASS_TV_ANALOG -- if (adap->class & I2C_CLASS_TV_ANALOG) -- return i2c_probe(adap, &addr_data, tuner_attach); --#else -- switch (adap->id) { -- case I2C_ALGO_BIT | I2C_HW_SMBUS_VOODOO3: -- case I2C_ALGO_BIT | I2C_HW_B_BT848: -- case I2C_ALGO_BIT | I2C_HW_B_RIVA: -- case I2C_ALGO_SAA7134: -- case I2C_ALGO_SAA7146: -- return i2c_probe(adap, &addr_data, tuner_attach); -- break; -- } --#endif -- return 0; -+ return i2c_probe(adap, &addr_data, tuner_attach); - } - - static int tuner_detach(struct i2c_client *client) -@@ -1184,6 +1170,7 @@ - .name = "i2c TV tuner driver", - .id = I2C_DRIVERID_TUNER, - .flags = I2C_DF_NOTIFY, -+ .class = I2C_CLASS_TV_ANALOG, - .attach_adapter = tuner_probe, - .detach_client = tuner_detach, - .command = tuner_command, -@@ -1197,8 +1184,7 @@ - - static int tuner_init_module(void) - { -- i2c_add_driver(&driver); -- return 0; -+ return i2c_add_driver(&driver); - } - - static void tuner_cleanup_module(void) -diff -ura xx-linux-2.6-6-rc3-mm2/drivers/media/video/tvaudio.c linux-2.6-6-rc3-mm2/drivers/media/video/tvaudio.c ---- xx-linux-2.6-6-rc3-mm2/drivers/media/video/tvaudio.c 2004-05-09 11:11:11.000000000 +0200 -+++ linux-2.6-6-rc3-mm2/drivers/media/video/tvaudio.c 2004-05-09 14:47:38.000000000 +0200 -@@ -1497,18 +1497,7 @@ - - static int chip_probe(struct i2c_adapter *adap) - { --#ifdef I2C_CLASS_TV_ANALOG -- if (adap->class & I2C_CLASS_TV_ANALOG) -- return i2c_probe(adap, &addr_data, chip_attach); --#else -- switch (adap->id) { -- case I2C_ALGO_BIT | I2C_HW_B_BT848: -- case I2C_ALGO_BIT | I2C_HW_B_RIVA: -- case I2C_ALGO_SAA7134: -- return i2c_probe(adap, &addr_data, chip_attach); -- } --#endif -- return 0; -+ return i2c_probe(adap, &addr_data, chip_attach); - } - - static int chip_detach(struct i2c_client *client) -@@ -1639,6 +1628,7 @@ - .name = "generic i2c audio driver", - .id = I2C_DRIVERID_TVAUDIO, - .flags = I2C_DF_NOTIFY, -+ .class = I2C_CLASS_TV_ANALOG, - .attach_adapter = chip_probe, - .detach_client = chip_detach, - .command = chip_command, -@@ -1659,8 +1649,7 @@ - for (desc = chiplist; desc->name != NULL; desc++) - printk("%s%s", (desc = chiplist) ? "" : ",",desc->name); - printk("\n"); -- i2c_add_driver(&driver); -- return 0; -+ return i2c_add_driver(&driver); - } - - static void audiochip_cleanup_module(void) -diff -ura xx-linux-2.6-6-rc3-mm2/drivers/media/video/tvmixer.c linux-2.6-6-rc3-mm2/drivers/media/video/tvmixer.c ---- xx-linux-2.6-6-rc3-mm2/drivers/media/video/tvmixer.c 2004-05-09 11:11:11.000000000 +0200 -+++ linux-2.6-6-rc3-mm2/drivers/media/video/tvmixer.c 2004-05-09 14:52:10.000000000 +0200 -@@ -232,6 +232,7 @@ - .flags = I2C_DF_NOTIFY, - .detach_adapter = tvmixer_adapters, - #endif -+ .class = I2C_CLASS_TV_ANALOG, - .attach_adapter = tvmixer_adapters, - .detach_client = tvmixer_clients, - }; -@@ -263,23 +264,6 @@ - struct video_audio va; - int i,minor; - --#ifdef I2C_CLASS_TV_ANALOG -- if (!(client->adapter->class & I2C_CLASS_TV_ANALOG)) -- return -1; --#else -- /* TV card ??? */ -- switch (client->adapter->id) { -- case I2C_ALGO_BIT | I2C_HW_SMBUS_VOODOO3: -- case I2C_ALGO_BIT | I2C_HW_B_BT848: -- case I2C_ALGO_BIT | I2C_HW_B_RIVA: -- /* ok, have a look ... */ -- break; -- default: -- /* ignore that one */ -- return -1; -- } --#endif -- - /* unregister ?? */ - for (i = 0; i < DEV_MAX; i++) { - if (devices[i].dev = client) { -@@ -334,8 +318,7 @@ - - for (i = 0; i < DEV_MAX; i++) - devices[i].minor = -1; -- i2c_add_driver(&driver); -- return 0; -+ return i2c_add_driver(&driver); - } - - static void tvmixer_cleanup_module(void) --------------- next part -------------- -diff -ura xx-linux-2.6-6-rc3-mm2/drivers/i2c/chips/adm1021.c linux-2.6-6-rc3-mm2/drivers/i2c/chips/adm1021.c ---- xx-linux-2.6-6-rc3-mm2/drivers/i2c/chips/adm1021.c 2004-05-09 11:11:10.000000000 +0200 -+++ linux-2.6-6-rc3-mm2/drivers/i2c/chips/adm1021.c 2004-05-09 16:17:00.000000000 +0200 -@@ -144,6 +144,7 @@ - .name = "adm1021", - .id = I2C_DRIVERID_ADM1021, - .flags = I2C_DF_NOTIFY, -+ .class = I2C_CLASS_HWMON, - .attach_adapter = adm1021_attach_adapter, - .detach_client = adm1021_detach_client, - }; -@@ -200,8 +201,6 @@ - - static int adm1021_attach_adapter(struct i2c_adapter *adapter) - { -- if (!(adapter->class & I2C_CLASS_HWMON)) -- return 0; - return i2c_detect(adapter, &addr_data, adm1021_detect); - } - -diff -ura xx-linux-2.6-6-rc3-mm2/drivers/i2c/chips/asb100.c linux-2.6-6-rc3-mm2/drivers/i2c/chips/asb100.c ---- xx-linux-2.6-6-rc3-mm2/drivers/i2c/chips/asb100.c 2004-05-09 11:11:10.000000000 +0200 -+++ linux-2.6-6-rc3-mm2/drivers/i2c/chips/asb100.c 2004-05-09 16:13:42.000000000 +0200 -@@ -233,6 +233,7 @@ - .name = "asb100", - .id = I2C_DRIVERID_ASB100, - .flags = I2C_DF_NOTIFY, -+ .class = I2C_CLASS_HWMON, - .attach_adapter = asb100_attach_adapter, - .detach_client = asb100_detach_client, - }; -@@ -609,8 +610,6 @@ - */ - static int asb100_attach_adapter(struct i2c_adapter *adapter) - { -- if (!(adapter->class & I2C_CLASS_HWMON)) -- return 0; - return i2c_detect(adapter, &addr_data, asb100_detect); - } - -diff -ura xx-linux-2.6-6-rc3-mm2/drivers/i2c/chips/ds1621.c linux-2.6-6-rc3-mm2/drivers/i2c/chips/ds1621.c ---- xx-linux-2.6-6-rc3-mm2/drivers/i2c/chips/ds1621.c 2004-05-09 11:05:29.000000000 +0200 -+++ linux-2.6-6-rc3-mm2/drivers/i2c/chips/ds1621.c 2004-05-09 16:11:42.000000000 +0200 -@@ -92,6 +92,7 @@ - .name = "ds1621", - .id = I2C_DRIVERID_DS1621, - .flags = I2C_DF_NOTIFY, -+ .class = I2C_CLASS_HWMON, - .attach_adapter = ds1621_attach_adapter, - .detach_client = ds1621_detach_client, - }; -diff -ura xx-linux-2.6-6-rc3-mm2/drivers/i2c/chips/eeprom.c linux-2.6-6-rc3-mm2/drivers/i2c/chips/eeprom.c ---- xx-linux-2.6-6-rc3-mm2/drivers/i2c/chips/eeprom.c 2004-05-09 11:05:29.000000000 +0200 -+++ linux-2.6-6-rc3-mm2/drivers/i2c/chips/eeprom.c 2004-05-09 16:11:59.000000000 +0200 -@@ -82,6 +82,7 @@ - .name = "eeprom", - .id = I2C_DRIVERID_EEPROM, - .flags = I2C_DF_NOTIFY, -+ .class = I2C_CLASS_HWMON, - .attach_adapter = eeprom_attach_adapter, - .detach_client = eeprom_detach_client, - }; -diff -ura xx-linux-2.6-6-rc3-mm2/drivers/i2c/chips/fscher.c linux-2.6-6-rc3-mm2/drivers/i2c/chips/fscher.c ---- xx-linux-2.6-6-rc3-mm2/drivers/i2c/chips/fscher.c 2004-05-09 11:11:10.000000000 +0200 -+++ linux-2.6-6-rc3-mm2/drivers/i2c/chips/fscher.c 2004-05-09 16:13:00.000000000 +0200 -@@ -124,6 +124,7 @@ - .name = "fscher", - .id = I2C_DRIVERID_FSCHER, - .flags = I2C_DF_NOTIFY, -+ .class = I2C_CLASS_HWMON, - .attach_adapter = fscher_attach_adapter, - .detach_client = fscher_detach_client, - }; -@@ -293,8 +294,6 @@ - - static int fscher_attach_adapter(struct i2c_adapter *adapter) - { -- if (!(adapter->class & I2C_CLASS_HWMON)) -- return 0; - return i2c_detect(adapter, &addr_data, fscher_detect); - } - -diff -ura xx-linux-2.6-6-rc3-mm2/drivers/i2c/chips/gl518sm.c linux-2.6-6-rc3-mm2/drivers/i2c/chips/gl518sm.c ---- xx-linux-2.6-6-rc3-mm2/drivers/i2c/chips/gl518sm.c 2004-05-09 11:11:10.000000000 +0200 -+++ linux-2.6-6-rc3-mm2/drivers/i2c/chips/gl518sm.c 2004-05-09 16:12:21.000000000 +0200 -@@ -156,6 +156,7 @@ - .name = "gl518sm", - .id = I2C_DRIVERID_GL518, - .flags = I2C_DF_NOTIFY, -+ .class = I2C_CLASS_HWMON, - .attach_adapter = gl518_attach_adapter, - .detach_client = gl518_detach_client, - }; -@@ -335,8 +336,6 @@ - - static int gl518_attach_adapter(struct i2c_adapter *adapter) - { -- if (!(adapter->class & I2C_CLASS_HWMON)) -- return 0; - return i2c_detect(adapter, &addr_data, gl518_detect); - } - -diff -ura xx-linux-2.6-6-rc3-mm2/drivers/i2c/chips/it87.c linux-2.6-6-rc3-mm2/drivers/i2c/chips/it87.c ---- xx-linux-2.6-6-rc3-mm2/drivers/i2c/chips/it87.c 2004-05-09 11:11:10.000000000 +0200 -+++ linux-2.6-6-rc3-mm2/drivers/i2c/chips/it87.c 2004-05-09 16:16:14.000000000 +0200 -@@ -173,6 +173,7 @@ - .name = "it87", - .id = I2C_DRIVERID_IT87, - .flags = I2C_DF_NOTIFY, -+ .class = I2C_CLASS_HWMON, - .attach_adapter = it87_attach_adapter, - .detach_client = it87_detach_client, - }; -@@ -500,8 +501,6 @@ - * when a new adapter is inserted (and it87_driver is still present) */ - static int it87_attach_adapter(struct i2c_adapter *adapter) - { -- if (!(adapter->class & I2C_CLASS_HWMON)) -- return 0; - return i2c_detect(adapter, &addr_data, it87_detect); - } - -diff -ura xx-linux-2.6-6-rc3-mm2/drivers/i2c/chips/lm78.c linux-2.6-6-rc3-mm2/drivers/i2c/chips/lm78.c ---- xx-linux-2.6-6-rc3-mm2/drivers/i2c/chips/lm78.c 2004-05-09 11:11:10.000000000 +0200 -+++ linux-2.6-6-rc3-mm2/drivers/i2c/chips/lm78.c 2004-05-09 16:15:57.000000000 +0200 -@@ -229,6 +229,7 @@ - .name = "lm78", - .id = I2C_DRIVERID_LM78, - .flags = I2C_DF_NOTIFY, -+ .class = I2C_CLASS_HWMON, - .attach_adapter = lm78_attach_adapter, - .detach_client = lm78_detach_client, - }; -@@ -488,8 +489,6 @@ - * when a new adapter is inserted (and lm78_driver is still present) */ - static int lm78_attach_adapter(struct i2c_adapter *adapter) - { -- if (!(adapter->class & I2C_CLASS_HWMON)) -- return 0; - return i2c_detect(adapter, &addr_data, lm78_detect); - } - -diff -ura xx-linux-2.6-6-rc3-mm2/drivers/i2c/chips/lm80.c linux-2.6-6-rc3-mm2/drivers/i2c/chips/lm80.c ---- xx-linux-2.6-6-rc3-mm2/drivers/i2c/chips/lm80.c 2004-05-09 11:11:10.000000000 +0200 -+++ linux-2.6-6-rc3-mm2/drivers/i2c/chips/lm80.c 2004-05-09 16:15:28.000000000 +0200 -@@ -156,6 +156,7 @@ - .name = "lm80", - .id = I2C_DRIVERID_LM80, - .flags = I2C_DF_NOTIFY, -+ .class = I2C_CLASS_HWMON, - .attach_adapter = lm80_attach_adapter, - .detach_client = lm80_detach_client, - }; -@@ -376,8 +377,6 @@ - - static int lm80_attach_adapter(struct i2c_adapter *adapter) - { -- if (!(adapter->class & I2C_CLASS_HWMON)) -- return 0; - return i2c_detect(adapter, &addr_data, lm80_detect); - } - -diff -ura xx-linux-2.6-6-rc3-mm2/drivers/i2c/chips/lm83.c linux-2.6-6-rc3-mm2/drivers/i2c/chips/lm83.c ---- xx-linux-2.6-6-rc3-mm2/drivers/i2c/chips/lm83.c 2004-05-09 11:11:10.000000000 +0200 -+++ linux-2.6-6-rc3-mm2/drivers/i2c/chips/lm83.c 2004-05-09 16:15:08.000000000 +0200 -@@ -125,6 +125,7 @@ - .name = "lm83", - .id = I2C_DRIVERID_LM83, - .flags = I2C_DF_NOTIFY, -+ .class = I2C_CLASS_HWMON, - .attach_adapter = lm83_attach_adapter, - .detach_client = lm83_detach_client, - }; -@@ -216,8 +217,6 @@ - - static int lm83_attach_adapter(struct i2c_adapter *adapter) - { -- if (!(adapter->class & I2C_CLASS_HWMON)) -- return 0; - return i2c_detect(adapter, &addr_data, lm83_detect); - } - -diff -ura xx-linux-2.6-6-rc3-mm2/drivers/i2c/chips/lm85.c linux-2.6-6-rc3-mm2/drivers/i2c/chips/lm85.c ---- xx-linux-2.6-6-rc3-mm2/drivers/i2c/chips/lm85.c 2004-05-09 11:05:29.000000000 +0200 -+++ linux-2.6-6-rc3-mm2/drivers/i2c/chips/lm85.c 2004-05-09 16:14:53.000000000 +0200 -@@ -403,6 +403,7 @@ - .name = "lm85", - .id = I2C_DRIVERID_LM85, - .flags = I2C_DF_NOTIFY, -+ .class = I2C_CLASS_HWMON, - .attach_adapter = lm85_attach_adapter, - .detach_client = lm85_detach_client, - }; -diff -ura xx-linux-2.6-6-rc3-mm2/drivers/i2c/chips/lm90.c linux-2.6-6-rc3-mm2/drivers/i2c/chips/lm90.c ---- xx-linux-2.6-6-rc3-mm2/drivers/i2c/chips/lm90.c 2004-05-09 11:11:10.000000000 +0200 -+++ linux-2.6-6-rc3-mm2/drivers/i2c/chips/lm90.c 2004-05-09 16:14:33.000000000 +0200 -@@ -146,6 +146,7 @@ - .name = "lm90", - .id = I2C_DRIVERID_LM90, - .flags = I2C_DF_NOTIFY, -+ .class = I2C_CLASS_HWMON, - .attach_adapter = lm90_attach_adapter, - .detach_client = lm90_detach_client, - }; -@@ -274,8 +275,6 @@ - - static int lm90_attach_adapter(struct i2c_adapter *adapter) - { -- if (!(adapter->class & I2C_CLASS_HWMON)) -- return 0; - return i2c_detect(adapter, &addr_data, lm90_detect); - } - -diff -ura xx-linux-2.6-6-rc3-mm2/drivers/i2c/chips/pcf8574.c linux-2.6-6-rc3-mm2/drivers/i2c/chips/pcf8574.c ---- xx-linux-2.6-6-rc3-mm2/drivers/i2c/chips/pcf8574.c 2004-05-09 11:05:29.000000000 +0200 -+++ linux-2.6-6-rc3-mm2/drivers/i2c/chips/pcf8574.c 2004-05-09 16:10:36.000000000 +0200 -@@ -73,6 +73,7 @@ - .name = "pcf8574", - .id = I2C_DRIVERID_PCF8574, - .flags = I2C_DF_NOTIFY, -+ .class = I2C_CLASS_HWMON, - .attach_adapter = pcf8574_attach_adapter, - .detach_client = pcf8574_detach_client, - }; -diff -ura xx-linux-2.6-6-rc3-mm2/drivers/i2c/chips/pcf8591.c linux-2.6-6-rc3-mm2/drivers/i2c/chips/pcf8591.c ---- xx-linux-2.6-6-rc3-mm2/drivers/i2c/chips/pcf8591.c 2004-05-09 11:05:29.000000000 +0200 -+++ linux-2.6-6-rc3-mm2/drivers/i2c/chips/pcf8591.c 2004-05-09 16:10:09.000000000 +0200 -@@ -95,6 +95,7 @@ - .name = "pcf8591", - .id = I2C_DRIVERID_PCF8591, - .flags = I2C_DF_NOTIFY, -+ .class = I2C_CLASS_HWMON, - .attach_adapter = pcf8591_attach_adapter, - .detach_client = pcf8591_detach_client, - }; -diff -ura xx-linux-2.6-6-rc3-mm2/drivers/i2c/chips/via686a.c linux-2.6-6-rc3-mm2/drivers/i2c/chips/via686a.c ---- xx-linux-2.6-6-rc3-mm2/drivers/i2c/chips/via686a.c 2004-05-09 11:11:10.000000000 +0200 -+++ linux-2.6-6-rc3-mm2/drivers/i2c/chips/via686a.c 2004-05-09 16:16:46.000000000 +0200 -@@ -586,6 +586,7 @@ - .name = "via686a", - .id = I2C_DRIVERID_VIA686A, - .flags = I2C_DF_NOTIFY, -+ .class = I2C_CLASS_HWMON, - .attach_adapter = via686a_attach_adapter, - .detach_client = via686a_detach_client, - }; -@@ -594,8 +595,6 @@ - /* This is called when the module is loaded */ - static int via686a_attach_adapter(struct i2c_adapter *adapter) - { -- if (!(adapter->class & I2C_CLASS_HWMON)) -- return 0; - return i2c_detect(adapter, &addr_data, via686a_detect); - } - -diff -ura xx-linux-2.6-6-rc3-mm2/drivers/i2c/chips/w83627hf.c linux-2.6-6-rc3-mm2/drivers/i2c/chips/w83627hf.c ---- xx-linux-2.6-6-rc3-mm2/drivers/i2c/chips/w83627hf.c 2004-05-09 11:05:29.000000000 +0200 -+++ linux-2.6-6-rc3-mm2/drivers/i2c/chips/w83627hf.c 2004-05-09 16:11:27.000000000 +0200 -@@ -331,6 +331,7 @@ - .name = "w83627hf", - .id = I2C_DRIVERID_W83627HF, - .flags = I2C_DF_NOTIFY, -+ .class = I2C_CLASS_HWMON, - .attach_adapter = w83627hf_attach_adapter, - .detach_client = w83627hf_detach_client, - }; -diff -ura xx-linux-2.6-6-rc3-mm2/drivers/i2c/chips/w83781d.c linux-2.6-6-rc3-mm2/drivers/i2c/chips/w83781d.c ---- xx-linux-2.6-6-rc3-mm2/drivers/i2c/chips/w83781d.c 2004-05-09 11:11:10.000000000 +0200 -+++ linux-2.6-6-rc3-mm2/drivers/i2c/chips/w83781d.c 2004-05-09 16:17:18.000000000 +0200 -@@ -281,6 +281,7 @@ - .name = "w83781d", - .id = I2C_DRIVERID_W83781D, - .flags = I2C_DF_NOTIFY, -+ .class = I2C_CLASS_HWMON, - .attach_adapter = w83781d_attach_adapter, - .detach_client = w83781d_detach_client, - }; -@@ -905,8 +906,6 @@ - static int - w83781d_attach_adapter(struct i2c_adapter *adapter) - { -- if (!(adapter->class & I2C_CLASS_HWMON)) -- return 0; - return i2c_detect(adapter, &addr_data, w83781d_detect); - } - -diff -ura xx-linux-2.6-6-rc3-mm2/drivers/i2c/chips/w83l785ts.c linux-2.6-6-rc3-mm2/drivers/i2c/chips/w83l785ts.c ---- xx-linux-2.6-6-rc3-mm2/drivers/i2c/chips/w83l785ts.c 2004-05-09 11:11:10.000000000 +0200 -+++ linux-2.6-6-rc3-mm2/drivers/i2c/chips/w83l785ts.c 2004-05-09 16:13:22.000000000 +0200 -@@ -96,6 +96,7 @@ - .name = "w83l785ts", - .id = I2C_DRIVERID_W83L785TS, - .flags = I2C_DF_NOTIFY, -+ .class = I2C_CLASS_HWMON, - .attach_adapter = w83l785ts_attach_adapter, - .detach_client = w83l785ts_detach_client, - }; -@@ -145,8 +146,6 @@ - - static int w83l785ts_attach_adapter(struct i2c_adapter *adapter) - { -- if (!(adapter->class & I2C_CLASS_HWMON)) -- return 0; - return i2c_detect(adapter, &addr_data, w83l785ts_detect); - } - -diff -ura xx-linux-2.6-6-rc3-mm2/drivers/i2c/i2c-dev.c linux-2.6-6-rc3-mm2/drivers/i2c/i2c-dev.c ---- xx-linux-2.6-6-rc3-mm2/drivers/i2c/i2c-dev.c 2004-05-09 11:05:29.000000000 +0200 -+++ linux-2.6-6-rc3-mm2/drivers/i2c/i2c-dev.c 2004-05-09 16:06:33.000000000 +0200 -@@ -500,6 +500,7 @@ - .name = "dev_driver", - .id = I2C_DRIVERID_I2CDEV, - .flags = I2C_DF_NOTIFY, -+ .class = I2C_CLASS_ALL, - .attach_adapter = i2cdev_attach_adapter, - .detach_adapter = i2cdev_detach_adapter, - .detach_client = i2cdev_detach_client, --------------- next part -------------- -diff -ura xx-linux-2.6-6-rc3-mm2/drivers/acorn/char/i2c.c linux-2.6-6-rc3-mm2/drivers/acorn/char/i2c.c ---- xx-linux-2.6-6-rc3-mm2/drivers/acorn/char/i2c.c 2004-05-09 11:03:40.000000000 +0200 -+++ linux-2.6-6-rc3-mm2/drivers/acorn/char/i2c.c 2004-05-09 16:31:58.000000000 +0200 -@@ -345,6 +345,7 @@ - static struct i2c_adapter ioc_ops = { - .id = I2C_HW_B_IOC, - .algo_data = &ioc_data, -+ .class = I2C_CLASS_ALL, - .client_register = ioc_client_reg, - .client_unregister = ioc_client_unreg, - }; -diff -ura xx-linux-2.6-6-rc3-mm2/drivers/acorn/char/pcf8583.c linux-2.6-6-rc3-mm2/drivers/acorn/char/pcf8583.c ---- xx-linux-2.6-6-rc3-mm2/drivers/acorn/char/pcf8583.c 2004-05-09 11:03:40.000000000 +0200 -+++ linux-2.6-6-rc3-mm2/drivers/acorn/char/pcf8583.c 2004-05-09 16:33:20.000000000 +0200 -@@ -227,6 +227,7 @@ - .name = "PCF8583", - .id = I2C_DRIVERID_PCF8583, - .flags = I2C_DF_NOTIFY, -+ .class = I2C_CLASS_ALL, /* fixme: add another I2C_CLASS_xxx entry for Acorn? */ - .attach_adapter = pcf8583_probe, - .detach_client = pcf8583_detach, - .command = pcf8583_command -diff -ura xx-linux-2.6-6-rc3-mm2/drivers/i2c/busses/i2c-keywest.c linux-2.6-6-rc3-mm2/drivers/i2c/busses/i2c-keywest.c ---- xx-linux-2.6-6-rc3-mm2/drivers/i2c/busses/i2c-keywest.c 2004-05-09 11:03:02.000000000 +0200 -+++ linux-2.6-6-rc3-mm2/drivers/i2c/busses/i2c-keywest.c 2004-05-09 16:37:41.000000000 +0200 -@@ -619,6 +619,7 @@ - chan->iface = iface; - chan->chan_no = i; - chan->adapter.id = I2C_ALGO_SMBUS; -+ chan->adapter.class = I2C_CLASS_HWMON | I2C_CLASS_SOUND; - chan->adapter.algo = &keywest_algorithm; - chan->adapter.algo_data = NULL; - chan->adapter.client_register = NULL; -diff -ura xx-linux-2.6-6-rc3-mm2/drivers/ieee1394/pcilynx.c linux-2.6-6-rc3-mm2/drivers/ieee1394/pcilynx.c ---- xx-linux-2.6-6-rc3-mm2/drivers/ieee1394/pcilynx.c 2004-05-09 11:05:30.000000000 +0200 -+++ linux-2.6-6-rc3-mm2/drivers/ieee1394/pcilynx.c 2004-05-09 16:42:30.000000000 +0200 -@@ -1799,6 +1799,7 @@ - i2c_adapter = bit_ops; - i2c_adapter_data = bit_data; - i2c_adapter.algo_data = &i2c_adapter_data; -+ i2c_adapter.class = I2C_CLASS_NONE; - i2c_adapter_data.data = lynx; - - PRINTD(KERN_DEBUG, lynx->id,"original eeprom control: %d", -diff -ura xx-linux-2.6-6-rc3-mm2/drivers/macintosh/therm_adt746x.c linux-2.6-6-rc3-mm2/drivers/macintosh/therm_adt746x.c ---- xx-linux-2.6-6-rc3-mm2/drivers/macintosh/therm_adt746x.c 2004-05-09 11:03:40.000000000 +0200 -+++ linux-2.6-6-rc3-mm2/drivers/macintosh/therm_adt746x.c 2004-05-09 16:30:02.000000000 +0200 -@@ -164,6 +164,7 @@ - .name ="Apple Thermostat ADT746x", - .id =0xDEAD7467, - .flags =I2C_DF_NOTIFY, -+ .class =I2C_CLASS_HWMON, - .attach_adapter =&attach_thermostat, - .detach_adapter =&detach_thermostat, - }; -diff -ura xx-linux-2.6-6-rc3-mm2/drivers/macintosh/therm_pm72.c linux-2.6-6-rc3-mm2/drivers/macintosh/therm_pm72.c ---- xx-linux-2.6-6-rc3-mm2/drivers/macintosh/therm_pm72.c 2004-05-09 11:03:40.000000000 +0200 -+++ linux-2.6-6-rc3-mm2/drivers/macintosh/therm_pm72.c 2004-05-09 16:29:32.000000000 +0200 -@@ -142,6 +142,7 @@ - .name = "therm_pm72", - .id = 0xDEADBEEF, - .flags = I2C_DF_NOTIFY, -+ .class = I2C_CLASS_HWMON, - .attach_adapter = therm_pm72_attach, - .detach_adapter = therm_pm72_detach, - }; -diff -ura xx-linux-2.6-6-rc3-mm2/drivers/macintosh/therm_windtunnel.c linux-2.6-6-rc3-mm2/drivers/macintosh/therm_windtunnel.c ---- xx-linux-2.6-6-rc3-mm2/drivers/macintosh/therm_windtunnel.c 2004-05-09 11:03:40.000000000 +0200 -+++ linux-2.6-6-rc3-mm2/drivers/macintosh/therm_windtunnel.c 2004-05-09 16:29:13.000000000 +0200 -@@ -357,6 +357,7 @@ - .name = "Apple G4 Thermostat/Fan", - .id = I2C_DRIVERID_G4FAN, - .flags = I2C_DF_NOTIFY, -+ .class = I2C_CLASS_HWMON, - .attach_adapter = &do_attach, - .detach_client = &do_detach, - .command = NULL, -diff -ura xx-linux-2.6-6-rc3-mm2/include/linux/i2c.h linux-2.6-6-rc3-mm2/include/linux/i2c.h ---- xx-linux-2.6-6-rc3-mm2/include/linux/i2c.h 2004-05-09 11:11:11.000000000 +0200 -+++ linux-2.6-6-rc3-mm2/include/linux/i2c.h 2004-05-09 16:42:13.000000000 +0200 -@@ -285,7 +285,8 @@ - #define I2C_CLIENT_TEN 0x10 /* we have a ten bit chip address */ - /* Must equal I2C_M_TEN below */ - --/* i2c adapter classes (bitmask) */ -+/* i2c classes (bitmask) */ -+#define I2C_CLASS_NONE 0 /* none, don't use */ - #define I2C_CLASS_HWMON (1<<0) /* lm_sensors, ... */ - #define I2C_CLASS_TV_ANALOG (1<<1) /* bttv + friends */ - #define I2C_CLASS_TV_DIGITAL (1<<2) /* dvb cards */ -diff -ura xx-linux-2.6-6-rc3-mm2/sound/oss/dmasound/dac3550a.c linux-2.6-6-rc3-mm2/sound/oss/dmasound/dac3550a.c ---- xx-linux-2.6-6-rc3-mm2/sound/oss/dmasound/dac3550a.c 2004-05-09 11:04:50.000000000 +0200 -+++ linux-2.6-6-rc3-mm2/sound/oss/dmasound/dac3550a.c 2004-05-09 16:38:47.000000000 +0200 -@@ -47,6 +47,7 @@ - .name = "DAC3550A driver V " DACA_VERSION, - .id = I2C_DRIVERID_DACA, - .flags = I2C_DF_NOTIFY, -+ .class = I2C_CLASS_SOUND, - .attach_adapter = daca_attach_adapter, - .detach_client = daca_detach_client, - }; -diff -ura xx-linux-2.6-6-rc3-mm2/sound/oss/dmasound/tas_common.c linux-2.6-6-rc3-mm2/sound/oss/dmasound/tas_common.c ---- xx-linux-2.6-6-rc3-mm2/sound/oss/dmasound/tas_common.c 2004-05-09 11:04:50.000000000 +0200 -+++ linux-2.6-6-rc3-mm2/sound/oss/dmasound/tas_common.c 2004-05-09 16:39:01.000000000 +0200 -@@ -50,6 +50,7 @@ - .owner = THIS_MODULE, - .name = "tas", - .flags = I2C_DF_NOTIFY, -+ .class = I2C_CLASS_SOUND, - .attach_adapter = tas_attach_adapter, - .detach_client = tas_detach_client, - }; -diff -ura xx-linux-2.6-6-rc3-mm2/sound/ppc/keywest.c linux-2.6-6-rc3-mm2/sound/ppc/keywest.c ---- xx-linux-2.6-6-rc3-mm2/sound/ppc/keywest.c 2004-05-09 11:06:53.000000000 +0200 -+++ linux-2.6-6-rc3-mm2/sound/ppc/keywest.c 2004-05-09 16:38:03.000000000 +0200 -@@ -44,6 +44,7 @@ - .name = "PMac Keywest Audio", - .id = I2C_DRIVERID_KEYWEST, - .flags = I2C_DF_NOTIFY, -+ .class = I2C_CLASS_SOUND, - .attach_adapter = &keywest_attach_adapter, - .detach_client = &keywest_detach_client, - }; --------------- next part -------------- -diff -ura xx-linux-2.6-6-rc3-mm2/drivers/i2c/algos/i2c-algo-pcf.c linux-2.6-6-rc3-mm2/drivers/i2c/algos/i2c-algo-pcf.c ---- xx-linux-2.6-6-rc3-mm2/drivers/i2c/algos/i2c-algo-pcf.c 2004-05-09 11:03:03.000000000 +0200 -+++ linux-2.6-6-rc3-mm2/drivers/i2c/algos/i2c-algo-pcf.c 2004-05-09 18:00:47.000000000 +0200 -@@ -449,7 +449,8 @@ - - adap->id |= pcf_algo.id; - adap->algo = &pcf_algo; -- -+ adap->class = I2C_CLASS_ALL; -+ - adap->timeout = 100; /* default values, should */ - adap->retries = 3; /* be replaced by defines */ - -diff -ura xx-linux-2.6-6-rc3-mm2/drivers/i2c/busses/i2c-elektor.c linux-2.6-6-rc3-mm2/drivers/i2c/busses/i2c-elektor.c ---- xx-linux-2.6-6-rc3-mm2/drivers/i2c/busses/i2c-elektor.c 2004-05-09 11:03:02.000000000 +0200 -+++ linux-2.6-6-rc3-mm2/drivers/i2c/busses/i2c-elektor.c 2004-05-09 17:57:16.000000000 +0200 -@@ -171,6 +171,7 @@ - .owner = THIS_MODULE, - .id = I2C_HW_P_ELEK, - .algo_data = &pcf_isa_data, -+ .class = I2C_CLASS_ALL, - .name = "PCF8584 ISA adapter", - }; - -diff -ura xx-linux-2.6-6-rc3-mm2/drivers/media/dvb/bt8xx/dvb-bt8xx.c linux-2.6-6-rc3-mm2/drivers/media/dvb/bt8xx/dvb-bt8xx.c ---- xx-linux-2.6-6-rc3-mm2/drivers/media/dvb/bt8xx/dvb-bt8xx.c 2004-05-09 11:05:31.000000000 +0200 -+++ linux-2.6-6-rc3-mm2/drivers/media/dvb/bt8xx/dvb-bt8xx.c 2004-05-09 17:38:16.000000000 +0200 -@@ -261,6 +261,11 @@ - .name = "dvb_bt8xx", - .id = I2C_DRIVERID_DVB_BT878A, - .flags = I2C_DF_NOTIFY, -+ /* ugly, but necessary: bt8x8 based budget dvb cards are handled by bttv on the -+ lowest level and we fake a i2c client to get to know all bt8x8 based -+ cards when they have been registered by bttv. -+ we do a check for adap->id in order to find the right cards */ -+ .class = I2C_CLASS_ALL, - .attach_adapter = dvb_bt8xx_attach, - .detach_adapter = dvb_bt8xx_detach, - }; -diff -ura xx-linux-2.6-6-rc3-mm2/drivers/media/video/ir-kbd-i2c.c linux-2.6-6-rc3-mm2/drivers/media/video/ir-kbd-i2c.c ---- xx-linux-2.6-6-rc3-mm2/drivers/media/video/ir-kbd-i2c.c 2004-05-09 11:05:31.000000000 +0200 -+++ linux-2.6-6-rc3-mm2/drivers/media/video/ir-kbd-i2c.c 2004-05-09 17:39:18.000000000 +0200 -@@ -247,6 +247,7 @@ - .name = "ir remote kbd driver", - .id = I2C_DRIVERID_EXP3, /* FIXME */ - .flags = I2C_DF_NOTIFY, -+ .class = I2C_CLASS_TV_ANALOG | I2C_CLASS_TV_DIGITAL; - .attach_adapter = ir_probe, - .detach_client = ir_detach, - }; -diff -ura xx-linux-2.6-6-rc3-mm2/drivers/media/video/zoran_card.c linux-2.6-6-rc3-mm2/drivers/media/video/zoran_card.c ---- xx-linux-2.6-6-rc3-mm2/drivers/media/video/zoran_card.c 2004-05-09 11:03:03.000000000 +0200 -+++ linux-2.6-6-rc3-mm2/drivers/media/video/zoran_card.c 2004-05-09 17:40:38.000000000 +0200 -@@ -740,6 +740,7 @@ - I2C_DEVNAME("zr36057"), - .id = I2C_HW_B_ZR36067, - .algo = NULL, -+ .class = I2C_CLASS_TV_ANALOG, - .client_register = zoran_i2c_client_register, - .client_unregister = zoran_i2c_client_unregister, - }; -diff -ura xx-linux-2.6-6-rc3-mm2/drivers/video/aty/radeon_i2c.c linux-2.6-6-rc3-mm2/drivers/video/aty/radeon_i2c.c ---- xx-linux-2.6-6-rc3-mm2/drivers/video/aty/radeon_i2c.c 2004-05-09 11:03:09.000000000 +0200 -+++ linux-2.6-6-rc3-mm2/drivers/video/aty/radeon_i2c.c 2004-05-09 17:55:49.000000000 +0200 -@@ -78,6 +78,7 @@ - chan->adapter.id = I2C_ALGO_ATI; - chan->adapter.algo_data = &chan->algo; - chan->adapter.dev.parent = &chan->rinfo->pdev->dev; -+ chan->adapter.class = I2C_CLASS_NONE; - chan->algo.setsda = radeon_gpio_setsda; - chan->algo.setscl = radeon_gpio_setscl; - chan->algo.getsda = radeon_gpio_getsda; -diff -ura xx-linux-2.6-6-rc3-mm2/drivers/video/matrox/i2c-matroxfb.c linux-2.6-6-rc3-mm2/drivers/video/matrox/i2c-matroxfb.c ---- xx-linux-2.6-6-rc3-mm2/drivers/video/matrox/i2c-matroxfb.c 2004-05-09 11:03:09.000000000 +0200 -+++ linux-2.6-6-rc3-mm2/drivers/video/matrox/i2c-matroxfb.c 2004-05-09 17:50:36.000000000 +0200 -@@ -104,13 +104,14 @@ - }; - - static int i2c_bus_reg(struct i2c_bit_adapter* b, struct matrox_fb_info* minfo, -- unsigned int data, unsigned int clock, const char* name) { -+ unsigned int data, unsigned int clock, const char* name, unsigned int class) { - int err; - - b->minfo = minfo; - b->mask.data = data; - b->mask.clock = clock; - b->adapter = matrox_i2c_adapter_template; -+ b->class = class; - snprintf(b->adapter.name, I2C_NAME_SIZE, name, - minfo->fbcon.node); - i2c_set_adapdata(&b->adapter, b); -@@ -160,22 +161,22 @@ - switch (ACCESS_FBINFO(chip)) { - case MGA_2064: - case MGA_2164: -- err = i2c_bus_reg(&m2info->ddc1, minfo, DDC1B_DATA, DDC1B_CLK, "DDC:fb%u #0"); -+ err = i2c_bus_reg(&m2info->ddc1, minfo, DDC1B_DATA, DDC1B_CLK, "DDC:fb%u #0", I2C_CLASS_DDC); - break; - default: -- err = i2c_bus_reg(&m2info->ddc1, minfo, DDC1_DATA, DDC1_CLK, "DDC:fb%u #0"); -+ err = i2c_bus_reg(&m2info->ddc1, minfo, DDC1_DATA, DDC1_CLK, "DDC:fb%u #0", I2C_CLASS_DDC); - break; - } - if (err) - goto fail_ddc1; - if (ACCESS_FBINFO(devflags.dualhead)) { -- err = i2c_bus_reg(&m2info->ddc2, minfo, DDC2_DATA, DDC2_CLK, "DDC:fb%u #1"); -+ err = i2c_bus_reg(&m2info->ddc2, minfo, DDC2_DATA, DDC2_CLK, "DDC:fb%u #1", I2C_CLASS_DDC); - if (err = -ENODEV) { - printk(KERN_INFO "i2c-matroxfb: VGA->TV plug detected, DDC unavailable.\n"); - } else if (err) - printk(KERN_INFO "i2c-matroxfb: Could not register secondary output i2c bus. Continuing anyway.\n"); - /* Register maven bus even on G450/G550 */ -- err = i2c_bus_reg(&m2info->maven, minfo, MAT_DATA, MAT_CLK, "MAVEN:fb%u"); -+ err = i2c_bus_reg(&m2info->maven, minfo, MAT_DATA, MAT_CLK, "MAVEN:fb%u", I2C_CLASS_TV_ANALOG); - if (err) - printk(KERN_INFO "i2c-matroxfb: Could not register Maven i2c bus. Continuing anyway.\n"); - } -diff -ura xx-linux-2.6-6-rc3-mm2/drivers/video/matrox/matroxfb_maven.c linux-2.6-6-rc3-mm2/drivers/video/matrox/matroxfb_maven.c ---- xx-linux-2.6-6-rc3-mm2/drivers/video/matrox/matroxfb_maven.c 2004-05-09 11:03:09.000000000 +0200 -+++ linux-2.6-6-rc3-mm2/drivers/video/matrox/matroxfb_maven.c 2004-05-09 17:46:07.000000000 +0200 -@@ -1297,6 +1297,7 @@ - .name = "maven", - .id = I2C_DRIVERID_MGATVO, - .flags = I2C_DF_NOTIFY, -+ .class = I2C_CLASS_TV_ANALOG, - .attach_adapter = maven_attach_adapter, - .detach_client = maven_detach_client, - .command = maven_command, --------------- next part -------------- -diff -ura xx-linux-2.6-6-rc3-mm2/drivers/i2c/busses/i2c-ibm_iic.c linux-2.6-6-rc3-mm2/drivers/i2c/busses/i2c-ibm_iic.c ---- xx-linux-2.6-6-rc3-mm2/drivers/i2c/busses/i2c-ibm_iic.c 2004-05-09 11:03:03.000000000 +0200 -+++ linux-2.6-6-rc3-mm2/drivers/i2c/busses/i2c-ibm_iic.c 2004-05-09 18:19:44.000000000 +0200 -@@ -607,6 +607,7 @@ - i2c_set_adapdata(adap, dev); - adap->id = I2C_HW_OCP | iic_algo.id; - adap->algo = &iic_algo; -+ adap->class = I2C_CLASS_ALL; - adap->client_register = NULL; - adap->client_unregister = NULL; - adap->timeout = 1; -diff -ura xx-linux-2.6-6-rc3-mm2/drivers/i2c/busses/i2c-iop3xx.c linux-2.6-6-rc3-mm2/drivers/i2c/busses/i2c-iop3xx.c ---- xx-linux-2.6-6-rc3-mm2/drivers/i2c/busses/i2c-iop3xx.c 2004-05-09 11:03:02.000000000 +0200 -+++ linux-2.6-6-rc3-mm2/drivers/i2c/busses/i2c-iop3xx.c 2004-05-09 18:17:57.000000000 +0200 -@@ -507,18 +507,31 @@ - .name = ADAPTER_NAME_ROOT "0", - .id = I2C_HW_IOP321, - .algo_data = &algo_iop3xx_data0, -+ .class = I2C_CLASS_ALL, - }; - static struct i2c_adapter iop3xx_ops1 = { - .owner = THIS_MODULE, - .name = ADAPTER_NAME_ROOT "1", - .id = I2C_HW_IOP321, - .algo_data = &algo_iop3xx_data1, -+ .class = I2C_CLASS_ALL, - }; - - static int __init i2c_iop3xx_init (void) - { -- return i2c_iop3xx_add_bus(&iop3xx_ops0) || -- i2c_iop3xx_add_bus(&iop3xx_ops1); -+ int ret; -+ -+ ret = i2c_iop3xx_add_bus(&iop3xx_ops0); -+ if (ret) -+ return ret; -+ -+ ret = i2c_iop3xx_add_bus(&iop3xx_ops1); -+ if (ret) { -+ i2c_iop3xx_del_bus(&iop3xx_ops0); -+ return ret; -+ } -+ -+ return 0; - } - - static void __exit i2c_iop3xx_exit (void) -diff -ura xx-linux-2.6-6-rc3-mm2/drivers/i2c/busses/i2c-ite.c linux-2.6-6-rc3-mm2/drivers/i2c/busses/i2c-ite.c ---- xx-linux-2.6-6-rc3-mm2/drivers/i2c/busses/i2c-ite.c 2004-05-09 11:03:02.000000000 +0200 -+++ linux-2.6-6-rc3-mm2/drivers/i2c/busses/i2c-ite.c 2004-05-09 18:13:22.000000000 +0200 -@@ -192,6 +192,7 @@ - .owner = THIS_MODULE, - .id = I2C_HW_I_IIC, - .algo_data = &iic_ite_data, -+ .class = I2C_CLASS_ALL, - .dev = { - .name = "ITE IIC adapter", - }, -diff -ura xx-linux-2.6-6-rc3-mm2/drivers/i2c/busses/scx200_i2c.c linux-2.6-6-rc3-mm2/drivers/i2c/busses/scx200_i2c.c ---- xx-linux-2.6-6-rc3-mm2/drivers/i2c/busses/scx200_i2c.c 2004-05-09 11:03:02.000000000 +0200 -+++ linux-2.6-6-rc3-mm2/drivers/i2c/busses/scx200_i2c.c 2004-05-09 18:13:55.000000000 +0200 -@@ -84,6 +84,7 @@ - static struct i2c_adapter scx200_i2c_ops = { - .owner = THIS_MODULE, - .algo_data = &scx200_i2c_data, -+ .class = I2C_CLASS_ALL, - .name = "NatSemi SCx200 I2C", - }; - --------------- next part -------------- -diff -ura xx-linux-2.6-6-rc3-mm2/drivers/i2c/busses/i2c-frodo.c linux-2.6-6-rc3-mm2/drivers/i2c/busses/i2c-frodo.c ---- xx-linux-2.6-6-rc3-mm2/drivers/i2c/busses/i2c-frodo.c 2004-05-09 11:03:02.000000000 +0200 -+++ linux-2.6-6-rc3-mm2/drivers/i2c/busses/i2c-frodo.c 2004-05-09 19:56:30.000000000 +0200 -@@ -62,6 +62,7 @@ - .owner = THIS_MODULE, - .id = I2C_HW_B_FRODO, - .algo_data = &bit_frodo_data, -+ .class = I2C_CLASS_ALL, - .dev = { - .name = "Frodo adapter driver", - }, -diff -ura xx-linux-2.6-6-rc3-mm2/drivers/i2c/busses/i2c-hydra.c linux-2.6-6-rc3-mm2/drivers/i2c/busses/i2c-hydra.c ---- xx-linux-2.6-6-rc3-mm2/drivers/i2c/busses/i2c-hydra.c 2004-05-09 11:03:03.000000000 +0200 -+++ linux-2.6-6-rc3-mm2/drivers/i2c/busses/i2c-hydra.c 2004-05-09 20:04:50.000000000 +0200 -@@ -107,6 +107,7 @@ - .owner = THIS_MODULE, - .name = "Hydra i2c", - .id = I2C_HW_B_HYDRA, -+ .class = I2C_CLASS_HWMON, - .algo_data = &hydra_bit_data, - }; - -diff -ura xx-linux-2.6-6-rc3-mm2/drivers/i2c/busses/i2c-i810.c linux-2.6-6-rc3-mm2/drivers/i2c/busses/i2c-i810.c ---- xx-linux-2.6-6-rc3-mm2/drivers/i2c/busses/i2c-i810.c 2004-05-09 11:03:02.000000000 +0200 -+++ linux-2.6-6-rc3-mm2/drivers/i2c/busses/i2c-i810.c 2004-05-09 19:58:12.000000000 +0200 -@@ -173,6 +173,7 @@ - static struct i2c_adapter i810_i2c_adapter = { - .owner = THIS_MODULE, - .name = "I810/I815 I2C Adapter", -+ .class = I2C_CLASS_ALL, /* fixme, what's the correct class? */ - .algo_data = &i810_i2c_bit_data, - }; - -@@ -189,6 +190,7 @@ - static struct i2c_adapter i810_ddc_adapter = { - .owner = THIS_MODULE, - .name = "I810/I815 DDC Adapter", -+ .class = I2C_CLASS_DDC, - .algo_data = &i810_ddc_bit_data, - }; - -diff -ura xx-linux-2.6-6-rc3-mm2/drivers/i2c/busses/i2c-ixp4xx.c linux-2.6-6-rc3-mm2/drivers/i2c/busses/i2c-ixp4xx.c ---- xx-linux-2.6-6-rc3-mm2/drivers/i2c/busses/i2c-ixp4xx.c 2004-05-09 11:06:43.000000000 +0200 -+++ linux-2.6-6-rc3-mm2/drivers/i2c/busses/i2c-ixp4xx.c 2004-05-09 20:04:01.000000000 +0200 -@@ -133,8 +133,9 @@ - drv_data->algo_data.mdelay = 10; - drv_data->algo_data.timeout = 100; - -- drv_data->adapter.id = I2C_HW_B_IXP4XX, -- drv_data->adapter.algo_data = &drv_data->algo_data, -+ drv_data->adapter.id = I2C_HW_B_IXP4XX; -+ drv_data->adapter.algo_data = &drv_data->algo_data; -+ drv_data->adapter.class = I2C_CLASS_ALL; - - drv_data->adapter.dev.parent = &plat_dev->dev; - -diff -ura xx-linux-2.6-6-rc3-mm2/drivers/i2c/busses/i2c-prosavage.c linux-2.6-6-rc3-mm2/drivers/i2c/busses/i2c-prosavage.c ---- xx-linux-2.6-6-rc3-mm2/drivers/i2c/busses/i2c-prosavage.c 2004-05-09 11:03:02.000000000 +0200 -+++ linux-2.6-6-rc3-mm2/drivers/i2c/busses/i2c-prosavage.c 2004-05-09 20:00:12.000000000 +0200 -@@ -181,12 +181,13 @@ - /* - * adapter initialisation - */ --static int i2c_register_bus(struct pci_dev *dev, struct s_i2c_bus *p, u8 *mmvga, u32 i2c_reg) -+static int i2c_register_bus(struct pci_dev *dev, struct s_i2c_bus *p, u8 *mmvga, u32 i2c_reg, unsigned int class) - { - int ret; - p->adap.owner = THIS_MODULE; - p->adap.id = I2C_HW_B_S3VIA; - p->adap.algo_data = &p->algo; -+ p->adap.class = class; - p->adap.dev.parent = &dev->dev; - p->algo.setsda = bit_s3via_setsda; - p->algo.setscl = bit_s3via_setscl; -@@ -281,7 +282,7 @@ - snprintf(bus->adap.name, sizeof(bus->adap.name), - "ProSavage I2C bus at %02x:%02x.%x", - dev->bus->number, PCI_SLOT(dev->devfn), PCI_FUNC(dev->devfn)); -- ret = i2c_register_bus(dev, bus, chip->mmio + 0x8000, CR_SERIAL1); -+ ret = i2c_register_bus(dev, bus, chip->mmio + 0x8000, CR_SERIAL1, I2C_CLASS_ALL); - if (ret) { - goto err_adap; - } -@@ -292,7 +293,7 @@ - snprintf(bus->adap.name, sizeof(bus->adap.name), - "ProSavage DDC bus at %02x:%02x.%x", - dev->bus->number, PCI_SLOT(dev->devfn), PCI_FUNC(dev->devfn)); -- ret = i2c_register_bus(dev, bus, chip->mmio + 0x8000, CR_SERIAL2); -+ ret = i2c_register_bus(dev, bus, chip->mmio + 0x8000, CR_SERIAL2, I2C_CLASS_DDC); - if (ret) { - goto err_adap; - } -diff -ura xx-linux-2.6-6-rc3-mm2/drivers/i2c/busses/i2c-savage4.c linux-2.6-6-rc3-mm2/drivers/i2c/busses/i2c-savage4.c ---- xx-linux-2.6-6-rc3-mm2/drivers/i2c/busses/i2c-savage4.c 2004-05-09 11:03:02.000000000 +0200 -+++ linux-2.6-6-rc3-mm2/drivers/i2c/busses/i2c-savage4.c 2004-05-09 20:01:31.000000000 +0200 -@@ -149,6 +149,7 @@ - .owner = THIS_MODULE, - .name = "I2C Savage4 adapter", - .algo_data = &sav_i2c_bit_data, -+ .class = I2C_CLASS_ALL, /* fixme: correct class entry? */ - }; - - static struct pci_device_id savage4_ids[] __devinitdata = { --------------- next part -------------- -diff -ura xx-linux-2.6-6-rc3-mm2/drivers/i2c/i2c-core.c linux-2.6-6-rc3-mm2/drivers/i2c/i2c-core.c ---- xx-linux-2.6-6-rc3-mm2/drivers/i2c/i2c-core.c 2004-05-09 11:03:03.000000000 +0200 -+++ linux-2.6-6-rc3-mm2/drivers/i2c/i2c-core.c 2004-05-09 21:18:35.000000000 +0200 -@@ -148,8 +148,11 @@ - list_for_each(item,&drivers) { - driver = list_entry(item, struct i2c_driver, list); - if (driver->flags & I2C_DF_NOTIFY) -- /* We ignore the return code; if it fails, too bad */ -- driver->attach_adapter(adap); -+ if (adap->class & driver->class) -+ /* We ignore the return code; if it fails, too bad */ -+ driver->attach_adapter(adap); -+ else -+ printk("i2c-core: skipping driver '%s' on adapter '%s' (class mismatch)\n",driver->name, adap->name); - } - up(&core_lists); - -@@ -247,7 +250,10 @@ - if (driver->flags & I2C_DF_NOTIFY) { - list_for_each(item,&adapters) { - adapter = list_entry(item, struct i2c_adapter, list); -- driver->attach_adapter(adapter); -+ if (adapter->class & driver->class) -+ driver->attach_adapter(adapter); -+ else -+ printk("i2c-core: skipping driver '%s' on adapter '%s' (class mismatch)\n",driver->name, adap->name); - } - } diff --git a/N1/2.hdr b/N1/2.hdr new file mode 100644 index 0000000..09157be --- /dev/null +++ b/N1/2.hdr @@ -0,0 +1,5 @@ +Content-Type: text/plain; + name="01-drivers-media-video.diff" +Content-Transfer-Encoding: 7bit +Content-Disposition: inline; + filename="01-drivers-media-video.diff" diff --git a/N1/2.txt b/N1/2.txt new file mode 100644 index 0000000..051100b --- /dev/null +++ b/N1/2.txt @@ -0,0 +1,158 @@ +diff -ura xx-linux-2.6-6-rc3-mm2/drivers/media/video/adv7170.c linux-2.6-6-rc3-mm2/drivers/media/video/adv7170.c +--- xx-linux-2.6-6-rc3-mm2/drivers/media/video/adv7170.c 2004-05-09 11:03:04.000000000 +0200 ++++ linux-2.6-6-rc3-mm2/drivers/media/video/adv7170.c 2004-05-09 11:28:12.000000000 +0200 +@@ -516,6 +516,7 @@ + + .id = I2C_DRIVERID_ADV7170, + .flags = I2C_DF_NOTIFY, ++ .class = I2C_CLASS_TV_ANALOG, + + .attach_adapter = adv7170_attach_adapter, + .detach_client = adv7170_detach_client, +diff -ura xx-linux-2.6-6-rc3-mm2/drivers/media/video/adv7175.c linux-2.6-6-rc3-mm2/drivers/media/video/adv7175.c +--- xx-linux-2.6-6-rc3-mm2/drivers/media/video/adv7175.c 2004-05-09 11:03:04.000000000 +0200 ++++ linux-2.6-6-rc3-mm2/drivers/media/video/adv7175.c 2004-05-09 11:27:55.000000000 +0200 +@@ -538,6 +538,7 @@ + + .id = I2C_DRIVERID_ADV7175, + .flags = I2C_DF_NOTIFY, ++ .class = I2C_CLASS_TV_ANALOG, + + .attach_adapter = adv7175_attach_adapter, + .detach_client = adv7175_detach_client, +diff -ura xx-linux-2.6-6-rc3-mm2/drivers/media/video/bt819.c linux-2.6-6-rc3-mm2/drivers/media/video/bt819.c +--- xx-linux-2.6-6-rc3-mm2/drivers/media/video/bt819.c 2004-05-09 11:03:03.000000000 +0200 ++++ linux-2.6-6-rc3-mm2/drivers/media/video/bt819.c 2004-05-09 11:24:22.000000000 +0200 +@@ -642,6 +642,7 @@ + + .id = I2C_DRIVERID_BT819, + .flags = I2C_DF_NOTIFY, ++ .class = I2C_CLASS_TV_ANALOG, + + .attach_adapter = bt819_attach_adapter, + .detach_client = bt819_detach_client, +diff -ura xx-linux-2.6-6-rc3-mm2/drivers/media/video/bt856.c linux-2.6-6-rc3-mm2/drivers/media/video/bt856.c +--- xx-linux-2.6-6-rc3-mm2/drivers/media/video/bt856.c 2004-05-09 11:03:03.000000000 +0200 ++++ linux-2.6-6-rc3-mm2/drivers/media/video/bt856.c 2004-05-09 11:23:22.000000000 +0200 +@@ -423,6 +423,7 @@ + + .id = I2C_DRIVERID_BT856, + .flags = I2C_DF_NOTIFY, ++ .class = I2C_CLASS_TV_ANALOG, + + .attach_adapter = bt856_attach_adapter, + .detach_client = bt856_detach_client, +diff -ura xx-linux-2.6-6-rc3-mm2/drivers/media/video/saa7110.c linux-2.6-6-rc3-mm2/drivers/media/video/saa7110.c +--- xx-linux-2.6-6-rc3-mm2/drivers/media/video/saa7110.c 2004-05-09 11:03:03.000000000 +0200 ++++ linux-2.6-6-rc3-mm2/drivers/media/video/saa7110.c 2004-05-09 11:22:57.000000000 +0200 +@@ -599,6 +599,7 @@ + + .id = I2C_DRIVERID_SAA7110, + .flags = I2C_DF_NOTIFY, ++ .class = I2C_CLASS_TV_ANALOG, + + .attach_adapter = saa7110_attach_adapter, + .detach_client = saa7110_detach_client, +diff -ura xx-linux-2.6-6-rc3-mm2/drivers/media/video/saa7111.c linux-2.6-6-rc3-mm2/drivers/media/video/saa7111.c +--- xx-linux-2.6-6-rc3-mm2/drivers/media/video/saa7111.c 2004-05-09 11:06:43.000000000 +0200 ++++ linux-2.6-6-rc3-mm2/drivers/media/video/saa7111.c 2004-05-09 11:24:54.000000000 +0200 +@@ -608,7 +608,8 @@ + + .id = I2C_DRIVERID_SAA7111A, + .flags = I2C_DF_NOTIFY, +- ++ .class = I2C_CLASS_TV_ANALOG, ++ + .attach_adapter = saa7111_attach_adapter, + .detach_client = saa7111_detach_client, + .command = saa7111_command, +diff -ura xx-linux-2.6-6-rc3-mm2/drivers/media/video/saa7114.c linux-2.6-6-rc3-mm2/drivers/media/video/saa7114.c +--- xx-linux-2.6-6-rc3-mm2/drivers/media/video/saa7114.c 2004-05-09 11:03:04.000000000 +0200 ++++ linux-2.6-6-rc3-mm2/drivers/media/video/saa7114.c 2004-05-09 11:27:15.000000000 +0200 +@@ -1222,6 +1222,7 @@ + + .id = I2C_DRIVERID_SAA7114, + .flags = I2C_DF_NOTIFY, ++ .class = I2C_CLASS_TV_ANALOG, + + .attach_adapter = saa7114_attach_adapter, + .detach_client = saa7114_detach_client, +diff -ura xx-linux-2.6-6-rc3-mm2/drivers/media/video/saa7185.c linux-2.6-6-rc3-mm2/drivers/media/video/saa7185.c +--- xx-linux-2.6-6-rc3-mm2/drivers/media/video/saa7185.c 2004-05-09 11:03:03.000000000 +0200 ++++ linux-2.6-6-rc3-mm2/drivers/media/video/saa7185.c 2004-05-09 11:23:55.000000000 +0200 +@@ -505,6 +505,7 @@ + + .id = I2C_DRIVERID_SAA7185B, + .flags = I2C_DF_NOTIFY, ++ .class = I2C_CLASS_TV_ANALOG, + + .attach_adapter = saa7185_attach_adapter, + .detach_client = saa7185_detach_client, +diff -ura xx-linux-2.6-6-rc3-mm2/drivers/media/video/tda9840.c linux-2.6-6-rc3-mm2/drivers/media/video/tda9840.c +--- xx-linux-2.6-6-rc3-mm2/drivers/media/video/tda9840.c 2004-05-09 11:03:03.000000000 +0200 ++++ linux-2.6-6-rc3-mm2/drivers/media/video/tda9840.c 2004-05-09 11:26:35.000000000 +0200 +@@ -263,6 +263,7 @@ + .name = "tda9840 driver", + .id = I2C_DRIVERID_TDA9840, + .flags = I2C_DF_NOTIFY, ++ .class = I2C_CLASS_TV_ANALOG, + .attach_adapter = tda9840_attach, + .detach_client = tda9840_detach, + .command = tda9840_command, +diff -ura xx-linux-2.6-6-rc3-mm2/drivers/media/video/tea6415c.c linux-2.6-6-rc3-mm2/drivers/media/video/tea6415c.c +--- xx-linux-2.6-6-rc3-mm2/drivers/media/video/tea6415c.c 2004-05-09 11:03:03.000000000 +0200 ++++ linux-2.6-6-rc3-mm2/drivers/media/video/tea6415c.c 2004-05-09 11:26:52.000000000 +0200 +@@ -212,6 +212,7 @@ + .name = "tea6415c driver", + .id = I2C_DRIVERID_TEA6415C, + .flags = I2C_DF_NOTIFY, ++ .class = I2C_CLASS_TV_ANALOG, + .attach_adapter = tea6415c_attach, + .detach_client = tea6415c_detach, + .command = tea6415c_command, +diff -ura xx-linux-2.6-6-rc3-mm2/drivers/media/video/tea6420.c linux-2.6-6-rc3-mm2/drivers/media/video/tea6420.c +--- xx-linux-2.6-6-rc3-mm2/drivers/media/video/tea6420.c 2004-05-09 11:03:03.000000000 +0200 ++++ linux-2.6-6-rc3-mm2/drivers/media/video/tea6420.c 2004-05-09 11:26:09.000000000 +0200 +@@ -192,8 +192,9 @@ + .name = "tea6420 driver", + .id = I2C_DRIVERID_TEA6420, + .flags = I2C_DF_NOTIFY, +- .attach_adapter = tea6420_attach, ++ .class = I2C_CLASS_TV_ANALOG, ++ .attach_adapter = tea6420_attach, + .detach_client = tea6420_detach, + .command = tea6420_command, + }; + +diff -ura xx-linux-2.6-6-rc3-mm2/drivers/media/video/tuner-3036.c linux-2.6-6-rc3-mm2/drivers/media/video/tuner-3036.c +--- xx-linux-2.6-6-rc3-mm2/drivers/media/video/tuner-3036.c 2004-05-09 11:03:03.000000000 +0200 ++++ linux-2.6-6-rc3-mm2/drivers/media/video/tuner-3036.c 2004-05-09 11:25:25.000000000 +0200 +@@ -185,6 +185,7 @@ + .name = "sab3036", + .id = I2C_DRIVERID_SAB3036, + .flags = I2C_DF_NOTIFY, ++ .class = I2C_CLASS_TV_ANALOG, + .attach_adapter = tuner_probe, + .detach_client = tuner_detach, + .command = tuner_command +@@ -200,8 +201,7 @@ + int __init + tuner3036_init(void) + { +- i2c_add_driver(&i2c_driver_tuner); +- return 0; ++ return i2c_add_driver(&i2c_driver_tuner); + } + + void __exit +diff -ura xx-linux-2.6-6-rc3-mm2/drivers/media/video/vpx3220.c linux-2.6-6-rc3-mm2/drivers/media/video/vpx3220.c +--- xx-linux-2.6-6-rc3-mm2/drivers/media/video/vpx3220.c 2004-05-09 11:03:03.000000000 +0200 ++++ linux-2.6-6-rc3-mm2/drivers/media/video/vpx3220.c 2004-05-09 11:27:33.000000000 +0200 +@@ -731,6 +731,7 @@ + + .id = I2C_DRIVERID_VPX3220, + .flags = I2C_DF_NOTIFY, ++ .class = I2C_CLASS_TV_ANALOG, + + .attach_adapter = vpx3220_attach_adapter, + .detach_client = vpx3220_detach_client, diff --git a/N1/3.hdr b/N1/3.hdr new file mode 100644 index 0000000..4f22f93 --- /dev/null +++ b/N1/3.hdr @@ -0,0 +1,5 @@ +Content-Type: text/plain; + name="02-drivers-media-video-2.diff" +Content-Transfer-Encoding: 7bit +Content-Disposition: inline; + filename="02-drivers-media-video-2.diff" diff --git a/N1/3.txt b/N1/3.txt new file mode 100644 index 0000000..7afd0bd --- /dev/null +++ b/N1/3.txt @@ -0,0 +1,396 @@ +diff -ura xx-linux-2.6-6-rc3-mm2/drivers/media/video/bt832.c linux-2.6-6-rc3-mm2/drivers/media/video/bt832.c +--- xx-linux-2.6-6-rc3-mm2/drivers/media/video/bt832.c 2004-05-09 11:11:10.000000000 +0200 ++++ linux-2.6-6-rc3-mm2/drivers/media/video/bt832.c 2004-05-09 14:49:58.000000000 +0200 +@@ -197,9 +197,7 @@ + + static int bt832_probe(struct i2c_adapter *adap) + { +- if (adap->class & I2C_CLASS_TV_ANALOG) +- return i2c_probe(adap, &addr_data, bt832_attach); +- return 0; ++ return i2c_probe(adap, &addr_data, bt832_attach); + } + + static int bt832_detach(struct i2c_client *client) +@@ -243,6 +241,7 @@ + .name = "i2c bt832 driver", + .id = -1, /* FIXME */ + .flags = I2C_DF_NOTIFY, ++ .class = I2C_CLASS_TV_ANALOG, + .attach_adapter = bt832_probe, + .detach_client = bt832_detach, + .command = bt832_command, +@@ -257,8 +256,7 @@ + + int bt832_init_module(void) + { +- i2c_add_driver(&driver); +- return 0; ++ return i2c_add_driver(&driver); + } + + static void bt832_cleanup_module(void) +diff -ura xx-linux-2.6-6-rc3-mm2/drivers/media/video/msp3400.c linux-2.6-6-rc3-mm2/drivers/media/video/msp3400.c +--- xx-linux-2.6-6-rc3-mm2/drivers/media/video/msp3400.c 2004-05-09 11:11:11.000000000 +0200 ++++ linux-2.6-6-rc3-mm2/drivers/media/video/msp3400.c 2004-05-09 14:48:30.000000000 +0200 +@@ -1222,6 +1222,7 @@ + .name = "i2c msp3400 driver", + .id = I2C_DRIVERID_MSP3400, + .flags = I2C_DF_NOTIFY, ++ .class = I2C_CLASS_TV_ANALOG, + .attach_adapter = msp_probe, + .detach_client = msp_detach, + .command = msp_command, +@@ -1353,19 +1354,7 @@ + + static int msp_probe(struct i2c_adapter *adap) + { +-#ifdef I2C_CLASS_TV_ANALOG +- if (adap->class & I2C_CLASS_TV_ANALOG) +- return i2c_probe(adap, &addr_data, msp_attach); +-#else +- switch (adap->id) { +- case I2C_ALGO_BIT | I2C_HW_SMBUS_VOODOO3: +- case I2C_ALGO_BIT | I2C_HW_B_BT848: +- //case I2C_ALGO_SAA7134: +- return i2c_probe(adap, &addr_data, msp_attach); +- break; +- } +-#endif +- return 0; ++ return i2c_probe(adap, &addr_data, msp_attach); + } + + static void msp_wake_thread(struct i2c_client *client) +@@ -1558,8 +1547,7 @@ + + static int msp3400_init_module(void) + { +- i2c_add_driver(&driver); +- return 0; ++ return i2c_add_driver(&driver); + } + + static void msp3400_cleanup_module(void) +diff -ura xx-linux-2.6-6-rc3-mm2/drivers/media/video/saa5246a.c linux-2.6-6-rc3-mm2/drivers/media/video/saa5246a.c +--- xx-linux-2.6-6-rc3-mm2/drivers/media/video/saa5246a.c 2004-05-09 11:11:11.000000000 +0200 ++++ linux-2.6-6-rc3-mm2/drivers/media/video/saa5246a.c 2004-05-09 14:52:53.000000000 +0200 +@@ -143,9 +143,7 @@ + */ + static int saa5246a_probe(struct i2c_adapter *adap) + { +- if (adap->class & I2C_CLASS_TV_ANALOG) +- return i2c_probe(adap, &addr_data, saa5246a_attach); +- return 0; ++ return i2c_probe(adap, &addr_data, saa5246a_attach); + } + + static int saa5246a_detach(struct i2c_client *client) +@@ -174,6 +172,7 @@ + .name = IF_NAME, /* name */ + .id = I2C_DRIVERID_SAA5249, /* in i2c.h */ + .flags = I2C_DF_NOTIFY, ++ .class = I2C_CLASS_TV_ANALOG, + .attach_adapter = saa5246a_probe, + .detach_client = saa5246a_detach, + .command = saa5246a_command +diff -ura xx-linux-2.6-6-rc3-mm2/drivers/media/video/saa5249.c linux-2.6-6-rc3-mm2/drivers/media/video/saa5249.c +--- xx-linux-2.6-6-rc3-mm2/drivers/media/video/saa5249.c 2004-05-09 11:11:11.000000000 +0200 ++++ linux-2.6-6-rc3-mm2/drivers/media/video/saa5249.c 2004-05-09 14:50:30.000000000 +0200 +@@ -219,9 +219,7 @@ + + static int saa5249_probe(struct i2c_adapter *adap) + { +- if (adap->class & I2C_CLASS_TV_ANALOG) +- return i2c_probe(adap, &addr_data, saa5249_attach); +- return 0; ++ return i2c_probe(adap, &addr_data, saa5249_attach); + } + + static int saa5249_detach(struct i2c_client *client) +@@ -249,6 +247,7 @@ + .name = IF_NAME, /* name */ + .id = I2C_DRIVERID_SAA5249, /* in i2c.h */ + .flags = I2C_DF_NOTIFY, ++ .class = I2C_CLASS_TV_ANALOG, + .attach_adapter = saa5249_probe, + .detach_client = saa5249_detach, + .command = saa5249_command +diff -ura xx-linux-2.6-6-rc3-mm2/drivers/media/video/saa7134/saa6752hs.c linux-2.6-6-rc3-mm2/drivers/media/video/saa7134/saa6752hs.c +--- xx-linux-2.6-6-rc3-mm2/drivers/media/video/saa7134/saa6752hs.c 2004-05-09 11:11:11.000000000 +0200 ++++ linux-2.6-6-rc3-mm2/drivers/media/video/saa7134/saa6752hs.c 2004-05-09 14:47:01.000000000 +0200 +@@ -335,9 +335,7 @@ + + static int saa6752hs_probe(struct i2c_adapter *adap) + { +- if (adap->class & I2C_CLASS_TV_ANALOG) +- return i2c_probe(adap, &addr_data, saa6752hs_attach); +- return 0; ++ return i2c_probe(adap, &addr_data, saa6752hs_attach); + } + + static int saa6752hs_detach(struct i2c_client *client) +@@ -376,6 +373,7 @@ + .name = "i2c saa6752hs MPEG encoder", + .id = I2C_DRIVERID_SAA6752HS, + .flags = I2C_DF_NOTIFY, ++ .class = I2C_CLASS_TV_ANALOG, + .attach_adapter = saa6752hs_probe, + .detach_client = saa6752hs_detach, + .command = saa6752hs_command, +@@ -390,8 +388,7 @@ + + static int saa6752hs_init_module(void) + { +- i2c_add_driver(&driver); +- return 0; ++ return i2c_add_driver(&driver); + } + + static void saa6752hs_cleanup_module(void) +diff -ura xx-linux-2.6-6-rc3-mm2/drivers/media/video/tda7432.c linux-2.6-6-rc3-mm2/drivers/media/video/tda7432.c +--- xx-linux-2.6-6-rc3-mm2/drivers/media/video/tda7432.c 2004-05-09 11:11:11.000000000 +0200 ++++ linux-2.6-6-rc3-mm2/drivers/media/video/tda7432.c 2004-05-09 14:49:17.000000000 +0200 +@@ -338,14 +338,7 @@ + + static int tda7432_probe(struct i2c_adapter *adap) + { +-#ifdef I2C_CLASS_TV_ANALOG +- if (adap->class & I2C_CLASS_TV_ANALOG) +- return i2c_probe(adap, &addr_data, tda7432_attach); +-#else +- if (adap->id == (I2C_ALGO_BIT | I2C_HW_B_BT848)) +- return i2c_probe(adap, &addr_data, tda7432_attach); +-#endif +- return 0; ++ return i2c_probe(adap, &addr_data, tda7432_attach); + } + + static int tda7432_detach(struct i2c_client *client) +@@ -520,6 +513,7 @@ + .name = "i2c tda7432 driver", + .id = I2C_DRIVERID_TDA7432, + .flags = I2C_DF_NOTIFY, ++ .class = I2C_CLASS_TV_ANALOG, + .attach_adapter = tda7432_probe, + .detach_client = tda7432_detach, + .command = tda7432_command, +@@ -538,8 +532,7 @@ + printk(KERN_ERR "tda7432: loudness parameter must be between 0 and 15\n"); + return -EINVAL; + } +- i2c_add_driver(&driver); +- return 0; ++ return i2c_add_driver(&driver); + } + + static void tda7432_fini(void) +diff -ura xx-linux-2.6-6-rc3-mm2/drivers/media/video/tda9875.c linux-2.6-6-rc3-mm2/drivers/media/video/tda9875.c +--- xx-linux-2.6-6-rc3-mm2/drivers/media/video/tda9875.c 2004-05-09 11:11:11.000000000 +0200 ++++ linux-2.6-6-rc3-mm2/drivers/media/video/tda9875.c 2004-05-09 14:48:00.000000000 +0200 +@@ -272,14 +272,7 @@ + + static int tda9875_probe(struct i2c_adapter *adap) + { +-#ifdef I2C_CLASS_TV_ANALOG +- if (adap->class & I2C_CLASS_TV_ANALOG) +- return i2c_probe(adap, &addr_data, tda9875_attach); +-#else +- if (adap->id == (I2C_ALGO_BIT | I2C_HW_B_BT848)) +- return i2c_probe(adap, &addr_data, tda9875_attach); +-#endif +- return 0; ++ return i2c_probe(adap, &addr_data, tda9875_attach); + } + + static int tda9875_detach(struct i2c_client *client) +@@ -391,6 +384,7 @@ + .name = "i2c tda9875 driver", + .id = I2C_DRIVERID_TDA9875, + .flags = I2C_DF_NOTIFY, ++ .class = I2C_CLASS_TV_ANALOG, + .attach_adapter = tda9875_probe, + .detach_client = tda9875_detach, + .command = tda9875_command, +@@ -405,8 +399,7 @@ + + static int tda9875_init(void) + { +- i2c_add_driver(&driver); +- return 0; ++ return i2c_add_driver(&driver); + } + + static void tda9875_fini(void) +diff -ura xx-linux-2.6-6-rc3-mm2/drivers/media/video/tda9887.c linux-2.6-6-rc3-mm2/drivers/media/video/tda9887.c +--- xx-linux-2.6-6-rc3-mm2/drivers/media/video/tda9887.c 2004-05-09 11:11:11.000000000 +0200 ++++ linux-2.6-6-rc3-mm2/drivers/media/video/tda9887.c 2004-05-09 14:46:31.000000000 +0200 +@@ -370,19 +370,7 @@ + + static int tda9887_probe(struct i2c_adapter *adap) + { +-#ifdef I2C_CLASS_TV_ANALOG +- if (adap->class & I2C_CLASS_TV_ANALOG) +- return i2c_probe(adap, &addr_data, tda9887_attach); +-#else +- switch (adap->id) { +- case I2C_ALGO_BIT | I2C_HW_B_BT848: +- case I2C_ALGO_BIT | I2C_HW_B_RIVA: +- case I2C_ALGO_SAA7134: +- return i2c_probe(adap, &addr_data, tda9887_attach); +- break; +- } +-#endif +- return 0; ++ return i2c_probe(adap, &addr_data, tda9887_attach); + } + + static int tda9887_detach(struct i2c_client *client) +@@ -447,6 +435,7 @@ + .name = "i2c tda9887 driver", + .id = -1, /* FIXME */ + .flags = I2C_DF_NOTIFY, ++ .class = I2C_CLASS_TV_ANALOG, + .attach_adapter = tda9887_probe, + .detach_client = tda9887_detach, + .command = tda9887_command, +@@ -460,8 +449,7 @@ + + static int tda9887_init_module(void) + { +- i2c_add_driver(&driver); +- return 0; ++ return i2c_add_driver(&driver); + } + + static void tda9887_cleanup_module(void) +diff -ura xx-linux-2.6-6-rc3-mm2/drivers/media/video/tuner.c linux-2.6-6-rc3-mm2/drivers/media/video/tuner.c +--- xx-linux-2.6-6-rc3-mm2/drivers/media/video/tuner.c 2004-05-09 11:11:11.000000000 +0200 ++++ linux-2.6-6-rc3-mm2/drivers/media/video/tuner.c 2004-05-09 14:51:10.000000000 +0200 +@@ -1067,21 +1067,7 @@ + } + this_adap = 0; + +-#ifdef I2C_CLASS_TV_ANALOG +- if (adap->class & I2C_CLASS_TV_ANALOG) +- return i2c_probe(adap, &addr_data, tuner_attach); +-#else +- switch (adap->id) { +- case I2C_ALGO_BIT | I2C_HW_SMBUS_VOODOO3: +- case I2C_ALGO_BIT | I2C_HW_B_BT848: +- case I2C_ALGO_BIT | I2C_HW_B_RIVA: +- case I2C_ALGO_SAA7134: +- case I2C_ALGO_SAA7146: +- return i2c_probe(adap, &addr_data, tuner_attach); +- break; +- } +-#endif +- return 0; ++ return i2c_probe(adap, &addr_data, tuner_attach); + } + + static int tuner_detach(struct i2c_client *client) +@@ -1184,6 +1170,7 @@ + .name = "i2c TV tuner driver", + .id = I2C_DRIVERID_TUNER, + .flags = I2C_DF_NOTIFY, ++ .class = I2C_CLASS_TV_ANALOG, + .attach_adapter = tuner_probe, + .detach_client = tuner_detach, + .command = tuner_command, +@@ -1197,8 +1184,7 @@ + + static int tuner_init_module(void) + { +- i2c_add_driver(&driver); +- return 0; ++ return i2c_add_driver(&driver); + } + + static void tuner_cleanup_module(void) +diff -ura xx-linux-2.6-6-rc3-mm2/drivers/media/video/tvaudio.c linux-2.6-6-rc3-mm2/drivers/media/video/tvaudio.c +--- xx-linux-2.6-6-rc3-mm2/drivers/media/video/tvaudio.c 2004-05-09 11:11:11.000000000 +0200 ++++ linux-2.6-6-rc3-mm2/drivers/media/video/tvaudio.c 2004-05-09 14:47:38.000000000 +0200 +@@ -1497,18 +1497,7 @@ + + static int chip_probe(struct i2c_adapter *adap) + { +-#ifdef I2C_CLASS_TV_ANALOG +- if (adap->class & I2C_CLASS_TV_ANALOG) +- return i2c_probe(adap, &addr_data, chip_attach); +-#else +- switch (adap->id) { +- case I2C_ALGO_BIT | I2C_HW_B_BT848: +- case I2C_ALGO_BIT | I2C_HW_B_RIVA: +- case I2C_ALGO_SAA7134: +- return i2c_probe(adap, &addr_data, chip_attach); +- } +-#endif +- return 0; ++ return i2c_probe(adap, &addr_data, chip_attach); + } + + static int chip_detach(struct i2c_client *client) +@@ -1639,6 +1628,7 @@ + .name = "generic i2c audio driver", + .id = I2C_DRIVERID_TVAUDIO, + .flags = I2C_DF_NOTIFY, ++ .class = I2C_CLASS_TV_ANALOG, + .attach_adapter = chip_probe, + .detach_client = chip_detach, + .command = chip_command, +@@ -1659,8 +1649,7 @@ + for (desc = chiplist; desc->name != NULL; desc++) + printk("%s%s", (desc == chiplist) ? "" : ",",desc->name); + printk("\n"); +- i2c_add_driver(&driver); +- return 0; ++ return i2c_add_driver(&driver); + } + + static void audiochip_cleanup_module(void) +diff -ura xx-linux-2.6-6-rc3-mm2/drivers/media/video/tvmixer.c linux-2.6-6-rc3-mm2/drivers/media/video/tvmixer.c +--- xx-linux-2.6-6-rc3-mm2/drivers/media/video/tvmixer.c 2004-05-09 11:11:11.000000000 +0200 ++++ linux-2.6-6-rc3-mm2/drivers/media/video/tvmixer.c 2004-05-09 14:52:10.000000000 +0200 +@@ -232,6 +232,7 @@ + .flags = I2C_DF_NOTIFY, + .detach_adapter = tvmixer_adapters, + #endif ++ .class = I2C_CLASS_TV_ANALOG, + .attach_adapter = tvmixer_adapters, + .detach_client = tvmixer_clients, + }; +@@ -263,23 +264,6 @@ + struct video_audio va; + int i,minor; + +-#ifdef I2C_CLASS_TV_ANALOG +- if (!(client->adapter->class & I2C_CLASS_TV_ANALOG)) +- return -1; +-#else +- /* TV card ??? */ +- switch (client->adapter->id) { +- case I2C_ALGO_BIT | I2C_HW_SMBUS_VOODOO3: +- case I2C_ALGO_BIT | I2C_HW_B_BT848: +- case I2C_ALGO_BIT | I2C_HW_B_RIVA: +- /* ok, have a look ... */ +- break; +- default: +- /* ignore that one */ +- return -1; +- } +-#endif +- + /* unregister ?? */ + for (i = 0; i < DEV_MAX; i++) { + if (devices[i].dev == client) { +@@ -334,8 +318,7 @@ + + for (i = 0; i < DEV_MAX; i++) + devices[i].minor = -1; +- i2c_add_driver(&driver); +- return 0; ++ return i2c_add_driver(&driver); + } + + static void tvmixer_cleanup_module(void) diff --git a/N1/4.hdr b/N1/4.hdr new file mode 100644 index 0000000..ff8db9e --- /dev/null +++ b/N1/4.hdr @@ -0,0 +1,5 @@ +Content-Type: text/plain; + name="03-drivers-i2c-chips.diff" +Content-Transfer-Encoding: 7bit +Content-Disposition: inline; + filename="03-drivers-i2c-chips.diff" diff --git a/N1/4.txt b/N1/4.txt new file mode 100644 index 0000000..635bc7f --- /dev/null +++ b/N1/4.txt @@ -0,0 +1,317 @@ +diff -ura xx-linux-2.6-6-rc3-mm2/drivers/i2c/chips/adm1021.c linux-2.6-6-rc3-mm2/drivers/i2c/chips/adm1021.c +--- xx-linux-2.6-6-rc3-mm2/drivers/i2c/chips/adm1021.c 2004-05-09 11:11:10.000000000 +0200 ++++ linux-2.6-6-rc3-mm2/drivers/i2c/chips/adm1021.c 2004-05-09 16:17:00.000000000 +0200 +@@ -144,6 +144,7 @@ + .name = "adm1021", + .id = I2C_DRIVERID_ADM1021, + .flags = I2C_DF_NOTIFY, ++ .class = I2C_CLASS_HWMON, + .attach_adapter = adm1021_attach_adapter, + .detach_client = adm1021_detach_client, + }; +@@ -200,8 +201,6 @@ + + static int adm1021_attach_adapter(struct i2c_adapter *adapter) + { +- if (!(adapter->class & I2C_CLASS_HWMON)) +- return 0; + return i2c_detect(adapter, &addr_data, adm1021_detect); + } + +diff -ura xx-linux-2.6-6-rc3-mm2/drivers/i2c/chips/asb100.c linux-2.6-6-rc3-mm2/drivers/i2c/chips/asb100.c +--- xx-linux-2.6-6-rc3-mm2/drivers/i2c/chips/asb100.c 2004-05-09 11:11:10.000000000 +0200 ++++ linux-2.6-6-rc3-mm2/drivers/i2c/chips/asb100.c 2004-05-09 16:13:42.000000000 +0200 +@@ -233,6 +233,7 @@ + .name = "asb100", + .id = I2C_DRIVERID_ASB100, + .flags = I2C_DF_NOTIFY, ++ .class = I2C_CLASS_HWMON, + .attach_adapter = asb100_attach_adapter, + .detach_client = asb100_detach_client, + }; +@@ -609,8 +610,6 @@ + */ + static int asb100_attach_adapter(struct i2c_adapter *adapter) + { +- if (!(adapter->class & I2C_CLASS_HWMON)) +- return 0; + return i2c_detect(adapter, &addr_data, asb100_detect); + } + +diff -ura xx-linux-2.6-6-rc3-mm2/drivers/i2c/chips/ds1621.c linux-2.6-6-rc3-mm2/drivers/i2c/chips/ds1621.c +--- xx-linux-2.6-6-rc3-mm2/drivers/i2c/chips/ds1621.c 2004-05-09 11:05:29.000000000 +0200 ++++ linux-2.6-6-rc3-mm2/drivers/i2c/chips/ds1621.c 2004-05-09 16:11:42.000000000 +0200 +@@ -92,6 +92,7 @@ + .name = "ds1621", + .id = I2C_DRIVERID_DS1621, + .flags = I2C_DF_NOTIFY, ++ .class = I2C_CLASS_HWMON, + .attach_adapter = ds1621_attach_adapter, + .detach_client = ds1621_detach_client, + }; +diff -ura xx-linux-2.6-6-rc3-mm2/drivers/i2c/chips/eeprom.c linux-2.6-6-rc3-mm2/drivers/i2c/chips/eeprom.c +--- xx-linux-2.6-6-rc3-mm2/drivers/i2c/chips/eeprom.c 2004-05-09 11:05:29.000000000 +0200 ++++ linux-2.6-6-rc3-mm2/drivers/i2c/chips/eeprom.c 2004-05-09 16:11:59.000000000 +0200 +@@ -82,6 +82,7 @@ + .name = "eeprom", + .id = I2C_DRIVERID_EEPROM, + .flags = I2C_DF_NOTIFY, ++ .class = I2C_CLASS_HWMON, + .attach_adapter = eeprom_attach_adapter, + .detach_client = eeprom_detach_client, + }; +diff -ura xx-linux-2.6-6-rc3-mm2/drivers/i2c/chips/fscher.c linux-2.6-6-rc3-mm2/drivers/i2c/chips/fscher.c +--- xx-linux-2.6-6-rc3-mm2/drivers/i2c/chips/fscher.c 2004-05-09 11:11:10.000000000 +0200 ++++ linux-2.6-6-rc3-mm2/drivers/i2c/chips/fscher.c 2004-05-09 16:13:00.000000000 +0200 +@@ -124,6 +124,7 @@ + .name = "fscher", + .id = I2C_DRIVERID_FSCHER, + .flags = I2C_DF_NOTIFY, ++ .class = I2C_CLASS_HWMON, + .attach_adapter = fscher_attach_adapter, + .detach_client = fscher_detach_client, + }; +@@ -293,8 +294,6 @@ + + static int fscher_attach_adapter(struct i2c_adapter *adapter) + { +- if (!(adapter->class & I2C_CLASS_HWMON)) +- return 0; + return i2c_detect(adapter, &addr_data, fscher_detect); + } + +diff -ura xx-linux-2.6-6-rc3-mm2/drivers/i2c/chips/gl518sm.c linux-2.6-6-rc3-mm2/drivers/i2c/chips/gl518sm.c +--- xx-linux-2.6-6-rc3-mm2/drivers/i2c/chips/gl518sm.c 2004-05-09 11:11:10.000000000 +0200 ++++ linux-2.6-6-rc3-mm2/drivers/i2c/chips/gl518sm.c 2004-05-09 16:12:21.000000000 +0200 +@@ -156,6 +156,7 @@ + .name = "gl518sm", + .id = I2C_DRIVERID_GL518, + .flags = I2C_DF_NOTIFY, ++ .class = I2C_CLASS_HWMON, + .attach_adapter = gl518_attach_adapter, + .detach_client = gl518_detach_client, + }; +@@ -335,8 +336,6 @@ + + static int gl518_attach_adapter(struct i2c_adapter *adapter) + { +- if (!(adapter->class & I2C_CLASS_HWMON)) +- return 0; + return i2c_detect(adapter, &addr_data, gl518_detect); + } + +diff -ura xx-linux-2.6-6-rc3-mm2/drivers/i2c/chips/it87.c linux-2.6-6-rc3-mm2/drivers/i2c/chips/it87.c +--- xx-linux-2.6-6-rc3-mm2/drivers/i2c/chips/it87.c 2004-05-09 11:11:10.000000000 +0200 ++++ linux-2.6-6-rc3-mm2/drivers/i2c/chips/it87.c 2004-05-09 16:16:14.000000000 +0200 +@@ -173,6 +173,7 @@ + .name = "it87", + .id = I2C_DRIVERID_IT87, + .flags = I2C_DF_NOTIFY, ++ .class = I2C_CLASS_HWMON, + .attach_adapter = it87_attach_adapter, + .detach_client = it87_detach_client, + }; +@@ -500,8 +501,6 @@ + * when a new adapter is inserted (and it87_driver is still present) */ + static int it87_attach_adapter(struct i2c_adapter *adapter) + { +- if (!(adapter->class & I2C_CLASS_HWMON)) +- return 0; + return i2c_detect(adapter, &addr_data, it87_detect); + } + +diff -ura xx-linux-2.6-6-rc3-mm2/drivers/i2c/chips/lm78.c linux-2.6-6-rc3-mm2/drivers/i2c/chips/lm78.c +--- xx-linux-2.6-6-rc3-mm2/drivers/i2c/chips/lm78.c 2004-05-09 11:11:10.000000000 +0200 ++++ linux-2.6-6-rc3-mm2/drivers/i2c/chips/lm78.c 2004-05-09 16:15:57.000000000 +0200 +@@ -229,6 +229,7 @@ + .name = "lm78", + .id = I2C_DRIVERID_LM78, + .flags = I2C_DF_NOTIFY, ++ .class = I2C_CLASS_HWMON, + .attach_adapter = lm78_attach_adapter, + .detach_client = lm78_detach_client, + }; +@@ -488,8 +489,6 @@ + * when a new adapter is inserted (and lm78_driver is still present) */ + static int lm78_attach_adapter(struct i2c_adapter *adapter) + { +- if (!(adapter->class & I2C_CLASS_HWMON)) +- return 0; + return i2c_detect(adapter, &addr_data, lm78_detect); + } + +diff -ura xx-linux-2.6-6-rc3-mm2/drivers/i2c/chips/lm80.c linux-2.6-6-rc3-mm2/drivers/i2c/chips/lm80.c +--- xx-linux-2.6-6-rc3-mm2/drivers/i2c/chips/lm80.c 2004-05-09 11:11:10.000000000 +0200 ++++ linux-2.6-6-rc3-mm2/drivers/i2c/chips/lm80.c 2004-05-09 16:15:28.000000000 +0200 +@@ -156,6 +156,7 @@ + .name = "lm80", + .id = I2C_DRIVERID_LM80, + .flags = I2C_DF_NOTIFY, ++ .class = I2C_CLASS_HWMON, + .attach_adapter = lm80_attach_adapter, + .detach_client = lm80_detach_client, + }; +@@ -376,8 +377,6 @@ + + static int lm80_attach_adapter(struct i2c_adapter *adapter) + { +- if (!(adapter->class & I2C_CLASS_HWMON)) +- return 0; + return i2c_detect(adapter, &addr_data, lm80_detect); + } + +diff -ura xx-linux-2.6-6-rc3-mm2/drivers/i2c/chips/lm83.c linux-2.6-6-rc3-mm2/drivers/i2c/chips/lm83.c +--- xx-linux-2.6-6-rc3-mm2/drivers/i2c/chips/lm83.c 2004-05-09 11:11:10.000000000 +0200 ++++ linux-2.6-6-rc3-mm2/drivers/i2c/chips/lm83.c 2004-05-09 16:15:08.000000000 +0200 +@@ -125,6 +125,7 @@ + .name = "lm83", + .id = I2C_DRIVERID_LM83, + .flags = I2C_DF_NOTIFY, ++ .class = I2C_CLASS_HWMON, + .attach_adapter = lm83_attach_adapter, + .detach_client = lm83_detach_client, + }; +@@ -216,8 +217,6 @@ + + static int lm83_attach_adapter(struct i2c_adapter *adapter) + { +- if (!(adapter->class & I2C_CLASS_HWMON)) +- return 0; + return i2c_detect(adapter, &addr_data, lm83_detect); + } + +diff -ura xx-linux-2.6-6-rc3-mm2/drivers/i2c/chips/lm85.c linux-2.6-6-rc3-mm2/drivers/i2c/chips/lm85.c +--- xx-linux-2.6-6-rc3-mm2/drivers/i2c/chips/lm85.c 2004-05-09 11:05:29.000000000 +0200 ++++ linux-2.6-6-rc3-mm2/drivers/i2c/chips/lm85.c 2004-05-09 16:14:53.000000000 +0200 +@@ -403,6 +403,7 @@ + .name = "lm85", + .id = I2C_DRIVERID_LM85, + .flags = I2C_DF_NOTIFY, ++ .class = I2C_CLASS_HWMON, + .attach_adapter = lm85_attach_adapter, + .detach_client = lm85_detach_client, + }; +diff -ura xx-linux-2.6-6-rc3-mm2/drivers/i2c/chips/lm90.c linux-2.6-6-rc3-mm2/drivers/i2c/chips/lm90.c +--- xx-linux-2.6-6-rc3-mm2/drivers/i2c/chips/lm90.c 2004-05-09 11:11:10.000000000 +0200 ++++ linux-2.6-6-rc3-mm2/drivers/i2c/chips/lm90.c 2004-05-09 16:14:33.000000000 +0200 +@@ -146,6 +146,7 @@ + .name = "lm90", + .id = I2C_DRIVERID_LM90, + .flags = I2C_DF_NOTIFY, ++ .class = I2C_CLASS_HWMON, + .attach_adapter = lm90_attach_adapter, + .detach_client = lm90_detach_client, + }; +@@ -274,8 +275,6 @@ + + static int lm90_attach_adapter(struct i2c_adapter *adapter) + { +- if (!(adapter->class & I2C_CLASS_HWMON)) +- return 0; + return i2c_detect(adapter, &addr_data, lm90_detect); + } + +diff -ura xx-linux-2.6-6-rc3-mm2/drivers/i2c/chips/pcf8574.c linux-2.6-6-rc3-mm2/drivers/i2c/chips/pcf8574.c +--- xx-linux-2.6-6-rc3-mm2/drivers/i2c/chips/pcf8574.c 2004-05-09 11:05:29.000000000 +0200 ++++ linux-2.6-6-rc3-mm2/drivers/i2c/chips/pcf8574.c 2004-05-09 16:10:36.000000000 +0200 +@@ -73,6 +73,7 @@ + .name = "pcf8574", + .id = I2C_DRIVERID_PCF8574, + .flags = I2C_DF_NOTIFY, ++ .class = I2C_CLASS_HWMON, + .attach_adapter = pcf8574_attach_adapter, + .detach_client = pcf8574_detach_client, + }; +diff -ura xx-linux-2.6-6-rc3-mm2/drivers/i2c/chips/pcf8591.c linux-2.6-6-rc3-mm2/drivers/i2c/chips/pcf8591.c +--- xx-linux-2.6-6-rc3-mm2/drivers/i2c/chips/pcf8591.c 2004-05-09 11:05:29.000000000 +0200 ++++ linux-2.6-6-rc3-mm2/drivers/i2c/chips/pcf8591.c 2004-05-09 16:10:09.000000000 +0200 +@@ -95,6 +95,7 @@ + .name = "pcf8591", + .id = I2C_DRIVERID_PCF8591, + .flags = I2C_DF_NOTIFY, ++ .class = I2C_CLASS_HWMON, + .attach_adapter = pcf8591_attach_adapter, + .detach_client = pcf8591_detach_client, + }; +diff -ura xx-linux-2.6-6-rc3-mm2/drivers/i2c/chips/via686a.c linux-2.6-6-rc3-mm2/drivers/i2c/chips/via686a.c +--- xx-linux-2.6-6-rc3-mm2/drivers/i2c/chips/via686a.c 2004-05-09 11:11:10.000000000 +0200 ++++ linux-2.6-6-rc3-mm2/drivers/i2c/chips/via686a.c 2004-05-09 16:16:46.000000000 +0200 +@@ -586,6 +586,7 @@ + .name = "via686a", + .id = I2C_DRIVERID_VIA686A, + .flags = I2C_DF_NOTIFY, ++ .class = I2C_CLASS_HWMON, + .attach_adapter = via686a_attach_adapter, + .detach_client = via686a_detach_client, + }; +@@ -594,8 +595,6 @@ + /* This is called when the module is loaded */ + static int via686a_attach_adapter(struct i2c_adapter *adapter) + { +- if (!(adapter->class & I2C_CLASS_HWMON)) +- return 0; + return i2c_detect(adapter, &addr_data, via686a_detect); + } + +diff -ura xx-linux-2.6-6-rc3-mm2/drivers/i2c/chips/w83627hf.c linux-2.6-6-rc3-mm2/drivers/i2c/chips/w83627hf.c +--- xx-linux-2.6-6-rc3-mm2/drivers/i2c/chips/w83627hf.c 2004-05-09 11:05:29.000000000 +0200 ++++ linux-2.6-6-rc3-mm2/drivers/i2c/chips/w83627hf.c 2004-05-09 16:11:27.000000000 +0200 +@@ -331,6 +331,7 @@ + .name = "w83627hf", + .id = I2C_DRIVERID_W83627HF, + .flags = I2C_DF_NOTIFY, ++ .class = I2C_CLASS_HWMON, + .attach_adapter = w83627hf_attach_adapter, + .detach_client = w83627hf_detach_client, + }; +diff -ura xx-linux-2.6-6-rc3-mm2/drivers/i2c/chips/w83781d.c linux-2.6-6-rc3-mm2/drivers/i2c/chips/w83781d.c +--- xx-linux-2.6-6-rc3-mm2/drivers/i2c/chips/w83781d.c 2004-05-09 11:11:10.000000000 +0200 ++++ linux-2.6-6-rc3-mm2/drivers/i2c/chips/w83781d.c 2004-05-09 16:17:18.000000000 +0200 +@@ -281,6 +281,7 @@ + .name = "w83781d", + .id = I2C_DRIVERID_W83781D, + .flags = I2C_DF_NOTIFY, ++ .class = I2C_CLASS_HWMON, + .attach_adapter = w83781d_attach_adapter, + .detach_client = w83781d_detach_client, + }; +@@ -905,8 +906,6 @@ + static int + w83781d_attach_adapter(struct i2c_adapter *adapter) + { +- if (!(adapter->class & I2C_CLASS_HWMON)) +- return 0; + return i2c_detect(adapter, &addr_data, w83781d_detect); + } + +diff -ura xx-linux-2.6-6-rc3-mm2/drivers/i2c/chips/w83l785ts.c linux-2.6-6-rc3-mm2/drivers/i2c/chips/w83l785ts.c +--- xx-linux-2.6-6-rc3-mm2/drivers/i2c/chips/w83l785ts.c 2004-05-09 11:11:10.000000000 +0200 ++++ linux-2.6-6-rc3-mm2/drivers/i2c/chips/w83l785ts.c 2004-05-09 16:13:22.000000000 +0200 +@@ -96,6 +96,7 @@ + .name = "w83l785ts", + .id = I2C_DRIVERID_W83L785TS, + .flags = I2C_DF_NOTIFY, ++ .class = I2C_CLASS_HWMON, + .attach_adapter = w83l785ts_attach_adapter, + .detach_client = w83l785ts_detach_client, + }; +@@ -145,8 +146,6 @@ + + static int w83l785ts_attach_adapter(struct i2c_adapter *adapter) + { +- if (!(adapter->class & I2C_CLASS_HWMON)) +- return 0; + return i2c_detect(adapter, &addr_data, w83l785ts_detect); + } + +diff -ura xx-linux-2.6-6-rc3-mm2/drivers/i2c/i2c-dev.c linux-2.6-6-rc3-mm2/drivers/i2c/i2c-dev.c +--- xx-linux-2.6-6-rc3-mm2/drivers/i2c/i2c-dev.c 2004-05-09 11:05:29.000000000 +0200 ++++ linux-2.6-6-rc3-mm2/drivers/i2c/i2c-dev.c 2004-05-09 16:06:33.000000000 +0200 +@@ -500,6 +500,7 @@ + .name = "dev_driver", + .id = I2C_DRIVERID_I2CDEV, + .flags = I2C_DF_NOTIFY, ++ .class = I2C_CLASS_ALL, + .attach_adapter = i2cdev_attach_adapter, + .detach_adapter = i2cdev_detach_adapter, + .detach_client = i2cdev_detach_client, diff --git a/N1/5.hdr b/N1/5.hdr new file mode 100644 index 0000000..4995c2d --- /dev/null +++ b/N1/5.hdr @@ -0,0 +1,5 @@ +Content-Type: text/plain; + name="04-misc.diff" +Content-Transfer-Encoding: 7bit +Content-Disposition: inline; + filename="04-misc.diff" diff --git a/N1/5.txt b/N1/5.txt new file mode 100644 index 0000000..f949c91 --- /dev/null +++ b/N1/5.txt @@ -0,0 +1,123 @@ +diff -ura xx-linux-2.6-6-rc3-mm2/drivers/acorn/char/i2c.c linux-2.6-6-rc3-mm2/drivers/acorn/char/i2c.c +--- xx-linux-2.6-6-rc3-mm2/drivers/acorn/char/i2c.c 2004-05-09 11:03:40.000000000 +0200 ++++ linux-2.6-6-rc3-mm2/drivers/acorn/char/i2c.c 2004-05-09 16:31:58.000000000 +0200 +@@ -345,6 +345,7 @@ + static struct i2c_adapter ioc_ops = { + .id = I2C_HW_B_IOC, + .algo_data = &ioc_data, ++ .class = I2C_CLASS_ALL, + .client_register = ioc_client_reg, + .client_unregister = ioc_client_unreg, + }; +diff -ura xx-linux-2.6-6-rc3-mm2/drivers/acorn/char/pcf8583.c linux-2.6-6-rc3-mm2/drivers/acorn/char/pcf8583.c +--- xx-linux-2.6-6-rc3-mm2/drivers/acorn/char/pcf8583.c 2004-05-09 11:03:40.000000000 +0200 ++++ linux-2.6-6-rc3-mm2/drivers/acorn/char/pcf8583.c 2004-05-09 16:33:20.000000000 +0200 +@@ -227,6 +227,7 @@ + .name = "PCF8583", + .id = I2C_DRIVERID_PCF8583, + .flags = I2C_DF_NOTIFY, ++ .class = I2C_CLASS_ALL, /* fixme: add another I2C_CLASS_xxx entry for Acorn? */ + .attach_adapter = pcf8583_probe, + .detach_client = pcf8583_detach, + .command = pcf8583_command +diff -ura xx-linux-2.6-6-rc3-mm2/drivers/i2c/busses/i2c-keywest.c linux-2.6-6-rc3-mm2/drivers/i2c/busses/i2c-keywest.c +--- xx-linux-2.6-6-rc3-mm2/drivers/i2c/busses/i2c-keywest.c 2004-05-09 11:03:02.000000000 +0200 ++++ linux-2.6-6-rc3-mm2/drivers/i2c/busses/i2c-keywest.c 2004-05-09 16:37:41.000000000 +0200 +@@ -619,6 +619,7 @@ + chan->iface = iface; + chan->chan_no = i; + chan->adapter.id = I2C_ALGO_SMBUS; ++ chan->adapter.class = I2C_CLASS_HWMON | I2C_CLASS_SOUND; + chan->adapter.algo = &keywest_algorithm; + chan->adapter.algo_data = NULL; + chan->adapter.client_register = NULL; +diff -ura xx-linux-2.6-6-rc3-mm2/drivers/ieee1394/pcilynx.c linux-2.6-6-rc3-mm2/drivers/ieee1394/pcilynx.c +--- xx-linux-2.6-6-rc3-mm2/drivers/ieee1394/pcilynx.c 2004-05-09 11:05:30.000000000 +0200 ++++ linux-2.6-6-rc3-mm2/drivers/ieee1394/pcilynx.c 2004-05-09 16:42:30.000000000 +0200 +@@ -1799,6 +1799,7 @@ + i2c_adapter = bit_ops; + i2c_adapter_data = bit_data; + i2c_adapter.algo_data = &i2c_adapter_data; ++ i2c_adapter.class = I2C_CLASS_NONE; + i2c_adapter_data.data = lynx; + + PRINTD(KERN_DEBUG, lynx->id,"original eeprom control: %d", +diff -ura xx-linux-2.6-6-rc3-mm2/drivers/macintosh/therm_adt746x.c linux-2.6-6-rc3-mm2/drivers/macintosh/therm_adt746x.c +--- xx-linux-2.6-6-rc3-mm2/drivers/macintosh/therm_adt746x.c 2004-05-09 11:03:40.000000000 +0200 ++++ linux-2.6-6-rc3-mm2/drivers/macintosh/therm_adt746x.c 2004-05-09 16:30:02.000000000 +0200 +@@ -164,6 +164,7 @@ + .name ="Apple Thermostat ADT746x", + .id =0xDEAD7467, + .flags =I2C_DF_NOTIFY, ++ .class =I2C_CLASS_HWMON, + .attach_adapter =&attach_thermostat, + .detach_adapter =&detach_thermostat, + }; +diff -ura xx-linux-2.6-6-rc3-mm2/drivers/macintosh/therm_pm72.c linux-2.6-6-rc3-mm2/drivers/macintosh/therm_pm72.c +--- xx-linux-2.6-6-rc3-mm2/drivers/macintosh/therm_pm72.c 2004-05-09 11:03:40.000000000 +0200 ++++ linux-2.6-6-rc3-mm2/drivers/macintosh/therm_pm72.c 2004-05-09 16:29:32.000000000 +0200 +@@ -142,6 +142,7 @@ + .name = "therm_pm72", + .id = 0xDEADBEEF, + .flags = I2C_DF_NOTIFY, ++ .class = I2C_CLASS_HWMON, + .attach_adapter = therm_pm72_attach, + .detach_adapter = therm_pm72_detach, + }; +diff -ura xx-linux-2.6-6-rc3-mm2/drivers/macintosh/therm_windtunnel.c linux-2.6-6-rc3-mm2/drivers/macintosh/therm_windtunnel.c +--- xx-linux-2.6-6-rc3-mm2/drivers/macintosh/therm_windtunnel.c 2004-05-09 11:03:40.000000000 +0200 ++++ linux-2.6-6-rc3-mm2/drivers/macintosh/therm_windtunnel.c 2004-05-09 16:29:13.000000000 +0200 +@@ -357,6 +357,7 @@ + .name = "Apple G4 Thermostat/Fan", + .id = I2C_DRIVERID_G4FAN, + .flags = I2C_DF_NOTIFY, ++ .class = I2C_CLASS_HWMON, + .attach_adapter = &do_attach, + .detach_client = &do_detach, + .command = NULL, +diff -ura xx-linux-2.6-6-rc3-mm2/include/linux/i2c.h linux-2.6-6-rc3-mm2/include/linux/i2c.h +--- xx-linux-2.6-6-rc3-mm2/include/linux/i2c.h 2004-05-09 11:11:11.000000000 +0200 ++++ linux-2.6-6-rc3-mm2/include/linux/i2c.h 2004-05-09 16:42:13.000000000 +0200 +@@ -285,7 +285,8 @@ + #define I2C_CLIENT_TEN 0x10 /* we have a ten bit chip address */ + /* Must equal I2C_M_TEN below */ + +-/* i2c adapter classes (bitmask) */ ++/* i2c classes (bitmask) */ ++#define I2C_CLASS_NONE 0 /* none, don't use */ + #define I2C_CLASS_HWMON (1<<0) /* lm_sensors, ... */ + #define I2C_CLASS_TV_ANALOG (1<<1) /* bttv + friends */ + #define I2C_CLASS_TV_DIGITAL (1<<2) /* dvb cards */ +diff -ura xx-linux-2.6-6-rc3-mm2/sound/oss/dmasound/dac3550a.c linux-2.6-6-rc3-mm2/sound/oss/dmasound/dac3550a.c +--- xx-linux-2.6-6-rc3-mm2/sound/oss/dmasound/dac3550a.c 2004-05-09 11:04:50.000000000 +0200 ++++ linux-2.6-6-rc3-mm2/sound/oss/dmasound/dac3550a.c 2004-05-09 16:38:47.000000000 +0200 +@@ -47,6 +47,7 @@ + .name = "DAC3550A driver V " DACA_VERSION, + .id = I2C_DRIVERID_DACA, + .flags = I2C_DF_NOTIFY, ++ .class = I2C_CLASS_SOUND, + .attach_adapter = daca_attach_adapter, + .detach_client = daca_detach_client, + }; +diff -ura xx-linux-2.6-6-rc3-mm2/sound/oss/dmasound/tas_common.c linux-2.6-6-rc3-mm2/sound/oss/dmasound/tas_common.c +--- xx-linux-2.6-6-rc3-mm2/sound/oss/dmasound/tas_common.c 2004-05-09 11:04:50.000000000 +0200 ++++ linux-2.6-6-rc3-mm2/sound/oss/dmasound/tas_common.c 2004-05-09 16:39:01.000000000 +0200 +@@ -50,6 +50,7 @@ + .owner = THIS_MODULE, + .name = "tas", + .flags = I2C_DF_NOTIFY, ++ .class = I2C_CLASS_SOUND, + .attach_adapter = tas_attach_adapter, + .detach_client = tas_detach_client, + }; +diff -ura xx-linux-2.6-6-rc3-mm2/sound/ppc/keywest.c linux-2.6-6-rc3-mm2/sound/ppc/keywest.c +--- xx-linux-2.6-6-rc3-mm2/sound/ppc/keywest.c 2004-05-09 11:06:53.000000000 +0200 ++++ linux-2.6-6-rc3-mm2/sound/ppc/keywest.c 2004-05-09 16:38:03.000000000 +0200 +@@ -44,6 +44,7 @@ + .name = "PMac Keywest Audio", + .id = I2C_DRIVERID_KEYWEST, + .flags = I2C_DF_NOTIFY, ++ .class = I2C_CLASS_SOUND, + .attach_adapter = &keywest_attach_adapter, + .detach_client = &keywest_detach_client, + }; diff --git a/N1/6.hdr b/N1/6.hdr new file mode 100644 index 0000000..aab251d --- /dev/null +++ b/N1/6.hdr @@ -0,0 +1,5 @@ +Content-Type: text/plain; + name="05-unclear.diff" +Content-Transfer-Encoding: 7bit +Content-Disposition: inline; + filename="05-unclear.diff" diff --git a/N1/6.txt b/N1/6.txt new file mode 100644 index 0000000..d646ed6 --- /dev/null +++ b/N1/6.txt @@ -0,0 +1,129 @@ +diff -ura xx-linux-2.6-6-rc3-mm2/drivers/i2c/algos/i2c-algo-pcf.c linux-2.6-6-rc3-mm2/drivers/i2c/algos/i2c-algo-pcf.c +--- xx-linux-2.6-6-rc3-mm2/drivers/i2c/algos/i2c-algo-pcf.c 2004-05-09 11:03:03.000000000 +0200 ++++ linux-2.6-6-rc3-mm2/drivers/i2c/algos/i2c-algo-pcf.c 2004-05-09 18:00:47.000000000 +0200 +@@ -449,7 +449,8 @@ + + adap->id |= pcf_algo.id; + adap->algo = &pcf_algo; +- ++ adap->class = I2C_CLASS_ALL; ++ + adap->timeout = 100; /* default values, should */ + adap->retries = 3; /* be replaced by defines */ + +diff -ura xx-linux-2.6-6-rc3-mm2/drivers/i2c/busses/i2c-elektor.c linux-2.6-6-rc3-mm2/drivers/i2c/busses/i2c-elektor.c +--- xx-linux-2.6-6-rc3-mm2/drivers/i2c/busses/i2c-elektor.c 2004-05-09 11:03:02.000000000 +0200 ++++ linux-2.6-6-rc3-mm2/drivers/i2c/busses/i2c-elektor.c 2004-05-09 17:57:16.000000000 +0200 +@@ -171,6 +171,7 @@ + .owner = THIS_MODULE, + .id = I2C_HW_P_ELEK, + .algo_data = &pcf_isa_data, ++ .class = I2C_CLASS_ALL, + .name = "PCF8584 ISA adapter", + }; + +diff -ura xx-linux-2.6-6-rc3-mm2/drivers/media/dvb/bt8xx/dvb-bt8xx.c linux-2.6-6-rc3-mm2/drivers/media/dvb/bt8xx/dvb-bt8xx.c +--- xx-linux-2.6-6-rc3-mm2/drivers/media/dvb/bt8xx/dvb-bt8xx.c 2004-05-09 11:05:31.000000000 +0200 ++++ linux-2.6-6-rc3-mm2/drivers/media/dvb/bt8xx/dvb-bt8xx.c 2004-05-09 17:38:16.000000000 +0200 +@@ -261,6 +261,11 @@ + .name = "dvb_bt8xx", + .id = I2C_DRIVERID_DVB_BT878A, + .flags = I2C_DF_NOTIFY, ++ /* ugly, but necessary: bt8x8 based budget dvb cards are handled by bttv on the ++ lowest level and we fake a i2c client to get to know all bt8x8 based ++ cards when they have been registered by bttv. ++ we do a check for adap->id in order to find the right cards */ ++ .class = I2C_CLASS_ALL, + .attach_adapter = dvb_bt8xx_attach, + .detach_adapter = dvb_bt8xx_detach, + }; +diff -ura xx-linux-2.6-6-rc3-mm2/drivers/media/video/ir-kbd-i2c.c linux-2.6-6-rc3-mm2/drivers/media/video/ir-kbd-i2c.c +--- xx-linux-2.6-6-rc3-mm2/drivers/media/video/ir-kbd-i2c.c 2004-05-09 11:05:31.000000000 +0200 ++++ linux-2.6-6-rc3-mm2/drivers/media/video/ir-kbd-i2c.c 2004-05-09 17:39:18.000000000 +0200 +@@ -247,6 +247,7 @@ + .name = "ir remote kbd driver", + .id = I2C_DRIVERID_EXP3, /* FIXME */ + .flags = I2C_DF_NOTIFY, ++ .class = I2C_CLASS_TV_ANALOG | I2C_CLASS_TV_DIGITAL; + .attach_adapter = ir_probe, + .detach_client = ir_detach, + }; +diff -ura xx-linux-2.6-6-rc3-mm2/drivers/media/video/zoran_card.c linux-2.6-6-rc3-mm2/drivers/media/video/zoran_card.c +--- xx-linux-2.6-6-rc3-mm2/drivers/media/video/zoran_card.c 2004-05-09 11:03:03.000000000 +0200 ++++ linux-2.6-6-rc3-mm2/drivers/media/video/zoran_card.c 2004-05-09 17:40:38.000000000 +0200 +@@ -740,6 +740,7 @@ + I2C_DEVNAME("zr36057"), + .id = I2C_HW_B_ZR36067, + .algo = NULL, ++ .class = I2C_CLASS_TV_ANALOG, + .client_register = zoran_i2c_client_register, + .client_unregister = zoran_i2c_client_unregister, + }; +diff -ura xx-linux-2.6-6-rc3-mm2/drivers/video/aty/radeon_i2c.c linux-2.6-6-rc3-mm2/drivers/video/aty/radeon_i2c.c +--- xx-linux-2.6-6-rc3-mm2/drivers/video/aty/radeon_i2c.c 2004-05-09 11:03:09.000000000 +0200 ++++ linux-2.6-6-rc3-mm2/drivers/video/aty/radeon_i2c.c 2004-05-09 17:55:49.000000000 +0200 +@@ -78,6 +78,7 @@ + chan->adapter.id = I2C_ALGO_ATI; + chan->adapter.algo_data = &chan->algo; + chan->adapter.dev.parent = &chan->rinfo->pdev->dev; ++ chan->adapter.class = I2C_CLASS_NONE; + chan->algo.setsda = radeon_gpio_setsda; + chan->algo.setscl = radeon_gpio_setscl; + chan->algo.getsda = radeon_gpio_getsda; +diff -ura xx-linux-2.6-6-rc3-mm2/drivers/video/matrox/i2c-matroxfb.c linux-2.6-6-rc3-mm2/drivers/video/matrox/i2c-matroxfb.c +--- xx-linux-2.6-6-rc3-mm2/drivers/video/matrox/i2c-matroxfb.c 2004-05-09 11:03:09.000000000 +0200 ++++ linux-2.6-6-rc3-mm2/drivers/video/matrox/i2c-matroxfb.c 2004-05-09 17:50:36.000000000 +0200 +@@ -104,13 +104,14 @@ + }; + + static int i2c_bus_reg(struct i2c_bit_adapter* b, struct matrox_fb_info* minfo, +- unsigned int data, unsigned int clock, const char* name) { ++ unsigned int data, unsigned int clock, const char* name, unsigned int class) { + int err; + + b->minfo = minfo; + b->mask.data = data; + b->mask.clock = clock; + b->adapter = matrox_i2c_adapter_template; ++ b->class = class; + snprintf(b->adapter.name, I2C_NAME_SIZE, name, + minfo->fbcon.node); + i2c_set_adapdata(&b->adapter, b); +@@ -160,22 +161,22 @@ + switch (ACCESS_FBINFO(chip)) { + case MGA_2064: + case MGA_2164: +- err = i2c_bus_reg(&m2info->ddc1, minfo, DDC1B_DATA, DDC1B_CLK, "DDC:fb%u #0"); ++ err = i2c_bus_reg(&m2info->ddc1, minfo, DDC1B_DATA, DDC1B_CLK, "DDC:fb%u #0", I2C_CLASS_DDC); + break; + default: +- err = i2c_bus_reg(&m2info->ddc1, minfo, DDC1_DATA, DDC1_CLK, "DDC:fb%u #0"); ++ err = i2c_bus_reg(&m2info->ddc1, minfo, DDC1_DATA, DDC1_CLK, "DDC:fb%u #0", I2C_CLASS_DDC); + break; + } + if (err) + goto fail_ddc1; + if (ACCESS_FBINFO(devflags.dualhead)) { +- err = i2c_bus_reg(&m2info->ddc2, minfo, DDC2_DATA, DDC2_CLK, "DDC:fb%u #1"); ++ err = i2c_bus_reg(&m2info->ddc2, minfo, DDC2_DATA, DDC2_CLK, "DDC:fb%u #1", I2C_CLASS_DDC); + if (err == -ENODEV) { + printk(KERN_INFO "i2c-matroxfb: VGA->TV plug detected, DDC unavailable.\n"); + } else if (err) + printk(KERN_INFO "i2c-matroxfb: Could not register secondary output i2c bus. Continuing anyway.\n"); + /* Register maven bus even on G450/G550 */ +- err = i2c_bus_reg(&m2info->maven, minfo, MAT_DATA, MAT_CLK, "MAVEN:fb%u"); ++ err = i2c_bus_reg(&m2info->maven, minfo, MAT_DATA, MAT_CLK, "MAVEN:fb%u", I2C_CLASS_TV_ANALOG); + if (err) + printk(KERN_INFO "i2c-matroxfb: Could not register Maven i2c bus. Continuing anyway.\n"); + } +diff -ura xx-linux-2.6-6-rc3-mm2/drivers/video/matrox/matroxfb_maven.c linux-2.6-6-rc3-mm2/drivers/video/matrox/matroxfb_maven.c +--- xx-linux-2.6-6-rc3-mm2/drivers/video/matrox/matroxfb_maven.c 2004-05-09 11:03:09.000000000 +0200 ++++ linux-2.6-6-rc3-mm2/drivers/video/matrox/matroxfb_maven.c 2004-05-09 17:46:07.000000000 +0200 +@@ -1297,6 +1297,7 @@ + .name = "maven", + .id = I2C_DRIVERID_MGATVO, + .flags = I2C_DF_NOTIFY, ++ .class = I2C_CLASS_TV_ANALOG, + .attach_adapter = maven_attach_adapter, + .detach_client = maven_detach_client, + .command = maven_command, diff --git a/N1/7.hdr b/N1/7.hdr new file mode 100644 index 0000000..802611a --- /dev/null +++ b/N1/7.hdr @@ -0,0 +1,5 @@ +Content-Type: text/plain; + name="06-class-all.diff" +Content-Transfer-Encoding: 7bit +Content-Disposition: inline; + filename="06-class-all.diff" diff --git a/N1/7.txt b/N1/7.txt new file mode 100644 index 0000000..9ce6e57 --- /dev/null +++ b/N1/7.txt @@ -0,0 +1,69 @@ +diff -ura xx-linux-2.6-6-rc3-mm2/drivers/i2c/busses/i2c-ibm_iic.c linux-2.6-6-rc3-mm2/drivers/i2c/busses/i2c-ibm_iic.c +--- xx-linux-2.6-6-rc3-mm2/drivers/i2c/busses/i2c-ibm_iic.c 2004-05-09 11:03:03.000000000 +0200 ++++ linux-2.6-6-rc3-mm2/drivers/i2c/busses/i2c-ibm_iic.c 2004-05-09 18:19:44.000000000 +0200 +@@ -607,6 +607,7 @@ + i2c_set_adapdata(adap, dev); + adap->id = I2C_HW_OCP | iic_algo.id; + adap->algo = &iic_algo; ++ adap->class = I2C_CLASS_ALL; + adap->client_register = NULL; + adap->client_unregister = NULL; + adap->timeout = 1; +diff -ura xx-linux-2.6-6-rc3-mm2/drivers/i2c/busses/i2c-iop3xx.c linux-2.6-6-rc3-mm2/drivers/i2c/busses/i2c-iop3xx.c +--- xx-linux-2.6-6-rc3-mm2/drivers/i2c/busses/i2c-iop3xx.c 2004-05-09 11:03:02.000000000 +0200 ++++ linux-2.6-6-rc3-mm2/drivers/i2c/busses/i2c-iop3xx.c 2004-05-09 18:17:57.000000000 +0200 +@@ -507,18 +507,31 @@ + .name = ADAPTER_NAME_ROOT "0", + .id = I2C_HW_IOP321, + .algo_data = &algo_iop3xx_data0, ++ .class = I2C_CLASS_ALL, + }; + static struct i2c_adapter iop3xx_ops1 = { + .owner = THIS_MODULE, + .name = ADAPTER_NAME_ROOT "1", + .id = I2C_HW_IOP321, + .algo_data = &algo_iop3xx_data1, ++ .class = I2C_CLASS_ALL, + }; + + static int __init i2c_iop3xx_init (void) + { +- return i2c_iop3xx_add_bus(&iop3xx_ops0) || +- i2c_iop3xx_add_bus(&iop3xx_ops1); ++ int ret; ++ ++ ret = i2c_iop3xx_add_bus(&iop3xx_ops0); ++ if (ret) ++ return ret; ++ ++ ret = i2c_iop3xx_add_bus(&iop3xx_ops1); ++ if (ret) { ++ i2c_iop3xx_del_bus(&iop3xx_ops0); ++ return ret; ++ } ++ ++ return 0; + } + + static void __exit i2c_iop3xx_exit (void) +diff -ura xx-linux-2.6-6-rc3-mm2/drivers/i2c/busses/i2c-ite.c linux-2.6-6-rc3-mm2/drivers/i2c/busses/i2c-ite.c +--- xx-linux-2.6-6-rc3-mm2/drivers/i2c/busses/i2c-ite.c 2004-05-09 11:03:02.000000000 +0200 ++++ linux-2.6-6-rc3-mm2/drivers/i2c/busses/i2c-ite.c 2004-05-09 18:13:22.000000000 +0200 +@@ -192,6 +192,7 @@ + .owner = THIS_MODULE, + .id = I2C_HW_I_IIC, + .algo_data = &iic_ite_data, ++ .class = I2C_CLASS_ALL, + .dev = { + .name = "ITE IIC adapter", + }, +diff -ura xx-linux-2.6-6-rc3-mm2/drivers/i2c/busses/scx200_i2c.c linux-2.6-6-rc3-mm2/drivers/i2c/busses/scx200_i2c.c +--- xx-linux-2.6-6-rc3-mm2/drivers/i2c/busses/scx200_i2c.c 2004-05-09 11:03:02.000000000 +0200 ++++ linux-2.6-6-rc3-mm2/drivers/i2c/busses/scx200_i2c.c 2004-05-09 18:13:55.000000000 +0200 +@@ -84,6 +84,7 @@ + static struct i2c_adapter scx200_i2c_ops = { + .owner = THIS_MODULE, + .algo_data = &scx200_i2c_data, ++ .class = I2C_CLASS_ALL, + .name = "NatSemi SCx200 I2C", + }; diff --git a/N1/8.hdr b/N1/8.hdr new file mode 100644 index 0000000..e7bc168 --- /dev/null +++ b/N1/8.hdr @@ -0,0 +1,5 @@ +Content-Type: text/plain; + name="07-i2c-busses.diff" +Content-Transfer-Encoding: 7bit +Content-Disposition: inline; + filename="07-i2c-busses.diff" diff --git a/N1/8.txt b/N1/8.txt new file mode 100644 index 0000000..8eaba44 --- /dev/null +++ b/N1/8.txt @@ -0,0 +1,103 @@ +diff -ura xx-linux-2.6-6-rc3-mm2/drivers/i2c/busses/i2c-frodo.c linux-2.6-6-rc3-mm2/drivers/i2c/busses/i2c-frodo.c +--- xx-linux-2.6-6-rc3-mm2/drivers/i2c/busses/i2c-frodo.c 2004-05-09 11:03:02.000000000 +0200 ++++ linux-2.6-6-rc3-mm2/drivers/i2c/busses/i2c-frodo.c 2004-05-09 19:56:30.000000000 +0200 +@@ -62,6 +62,7 @@ + .owner = THIS_MODULE, + .id = I2C_HW_B_FRODO, + .algo_data = &bit_frodo_data, ++ .class = I2C_CLASS_ALL, + .dev = { + .name = "Frodo adapter driver", + }, +diff -ura xx-linux-2.6-6-rc3-mm2/drivers/i2c/busses/i2c-hydra.c linux-2.6-6-rc3-mm2/drivers/i2c/busses/i2c-hydra.c +--- xx-linux-2.6-6-rc3-mm2/drivers/i2c/busses/i2c-hydra.c 2004-05-09 11:03:03.000000000 +0200 ++++ linux-2.6-6-rc3-mm2/drivers/i2c/busses/i2c-hydra.c 2004-05-09 20:04:50.000000000 +0200 +@@ -107,6 +107,7 @@ + .owner = THIS_MODULE, + .name = "Hydra i2c", + .id = I2C_HW_B_HYDRA, ++ .class = I2C_CLASS_HWMON, + .algo_data = &hydra_bit_data, + }; + +diff -ura xx-linux-2.6-6-rc3-mm2/drivers/i2c/busses/i2c-i810.c linux-2.6-6-rc3-mm2/drivers/i2c/busses/i2c-i810.c +--- xx-linux-2.6-6-rc3-mm2/drivers/i2c/busses/i2c-i810.c 2004-05-09 11:03:02.000000000 +0200 ++++ linux-2.6-6-rc3-mm2/drivers/i2c/busses/i2c-i810.c 2004-05-09 19:58:12.000000000 +0200 +@@ -173,6 +173,7 @@ + static struct i2c_adapter i810_i2c_adapter = { + .owner = THIS_MODULE, + .name = "I810/I815 I2C Adapter", ++ .class = I2C_CLASS_ALL, /* fixme, what's the correct class? */ + .algo_data = &i810_i2c_bit_data, + }; + +@@ -189,6 +190,7 @@ + static struct i2c_adapter i810_ddc_adapter = { + .owner = THIS_MODULE, + .name = "I810/I815 DDC Adapter", ++ .class = I2C_CLASS_DDC, + .algo_data = &i810_ddc_bit_data, + }; + +diff -ura xx-linux-2.6-6-rc3-mm2/drivers/i2c/busses/i2c-ixp4xx.c linux-2.6-6-rc3-mm2/drivers/i2c/busses/i2c-ixp4xx.c +--- xx-linux-2.6-6-rc3-mm2/drivers/i2c/busses/i2c-ixp4xx.c 2004-05-09 11:06:43.000000000 +0200 ++++ linux-2.6-6-rc3-mm2/drivers/i2c/busses/i2c-ixp4xx.c 2004-05-09 20:04:01.000000000 +0200 +@@ -133,8 +133,9 @@ + drv_data->algo_data.mdelay = 10; + drv_data->algo_data.timeout = 100; + +- drv_data->adapter.id = I2C_HW_B_IXP4XX, +- drv_data->adapter.algo_data = &drv_data->algo_data, ++ drv_data->adapter.id = I2C_HW_B_IXP4XX; ++ drv_data->adapter.algo_data = &drv_data->algo_data; ++ drv_data->adapter.class = I2C_CLASS_ALL; + + drv_data->adapter.dev.parent = &plat_dev->dev; + +diff -ura xx-linux-2.6-6-rc3-mm2/drivers/i2c/busses/i2c-prosavage.c linux-2.6-6-rc3-mm2/drivers/i2c/busses/i2c-prosavage.c +--- xx-linux-2.6-6-rc3-mm2/drivers/i2c/busses/i2c-prosavage.c 2004-05-09 11:03:02.000000000 +0200 ++++ linux-2.6-6-rc3-mm2/drivers/i2c/busses/i2c-prosavage.c 2004-05-09 20:00:12.000000000 +0200 +@@ -181,12 +181,13 @@ + /* + * adapter initialisation + */ +-static int i2c_register_bus(struct pci_dev *dev, struct s_i2c_bus *p, u8 *mmvga, u32 i2c_reg) ++static int i2c_register_bus(struct pci_dev *dev, struct s_i2c_bus *p, u8 *mmvga, u32 i2c_reg, unsigned int class) + { + int ret; + p->adap.owner = THIS_MODULE; + p->adap.id = I2C_HW_B_S3VIA; + p->adap.algo_data = &p->algo; ++ p->adap.class = class; + p->adap.dev.parent = &dev->dev; + p->algo.setsda = bit_s3via_setsda; + p->algo.setscl = bit_s3via_setscl; +@@ -281,7 +282,7 @@ + snprintf(bus->adap.name, sizeof(bus->adap.name), + "ProSavage I2C bus at %02x:%02x.%x", + dev->bus->number, PCI_SLOT(dev->devfn), PCI_FUNC(dev->devfn)); +- ret = i2c_register_bus(dev, bus, chip->mmio + 0x8000, CR_SERIAL1); ++ ret = i2c_register_bus(dev, bus, chip->mmio + 0x8000, CR_SERIAL1, I2C_CLASS_ALL); + if (ret) { + goto err_adap; + } +@@ -292,7 +293,7 @@ + snprintf(bus->adap.name, sizeof(bus->adap.name), + "ProSavage DDC bus at %02x:%02x.%x", + dev->bus->number, PCI_SLOT(dev->devfn), PCI_FUNC(dev->devfn)); +- ret = i2c_register_bus(dev, bus, chip->mmio + 0x8000, CR_SERIAL2); ++ ret = i2c_register_bus(dev, bus, chip->mmio + 0x8000, CR_SERIAL2, I2C_CLASS_DDC); + if (ret) { + goto err_adap; + } +diff -ura xx-linux-2.6-6-rc3-mm2/drivers/i2c/busses/i2c-savage4.c linux-2.6-6-rc3-mm2/drivers/i2c/busses/i2c-savage4.c +--- xx-linux-2.6-6-rc3-mm2/drivers/i2c/busses/i2c-savage4.c 2004-05-09 11:03:02.000000000 +0200 ++++ linux-2.6-6-rc3-mm2/drivers/i2c/busses/i2c-savage4.c 2004-05-09 20:01:31.000000000 +0200 +@@ -149,6 +149,7 @@ + .owner = THIS_MODULE, + .name = "I2C Savage4 adapter", + .algo_data = &sav_i2c_bit_data, ++ .class = I2C_CLASS_ALL, /* fixme: correct class entry? */ + }; + + static struct pci_device_id savage4_ids[] __devinitdata = { diff --git a/N1/9.hdr b/N1/9.hdr new file mode 100644 index 0000000..cfd3c25 --- /dev/null +++ b/N1/9.hdr @@ -0,0 +1,5 @@ +Content-Type: text/plain; + name="08-i2c-core.diff" +Content-Transfer-Encoding: 7bit +Content-Disposition: inline; + filename="08-i2c-core.diff" diff --git a/N1/9.txt b/N1/9.txt new file mode 100644 index 0000000..d1b7b16 --- /dev/null +++ b/N1/9.txt @@ -0,0 +1,28 @@ +diff -ura xx-linux-2.6-6-rc3-mm2/drivers/i2c/i2c-core.c linux-2.6-6-rc3-mm2/drivers/i2c/i2c-core.c +--- xx-linux-2.6-6-rc3-mm2/drivers/i2c/i2c-core.c 2004-05-09 11:03:03.000000000 +0200 ++++ linux-2.6-6-rc3-mm2/drivers/i2c/i2c-core.c 2004-05-09 21:18:35.000000000 +0200 +@@ -148,8 +148,11 @@ + list_for_each(item,&drivers) { + driver = list_entry(item, struct i2c_driver, list); + if (driver->flags & I2C_DF_NOTIFY) +- /* We ignore the return code; if it fails, too bad */ +- driver->attach_adapter(adap); ++ if (adap->class & driver->class) ++ /* We ignore the return code; if it fails, too bad */ ++ driver->attach_adapter(adap); ++ else ++ printk("i2c-core: skipping driver '%s' on adapter '%s' (class mismatch)\n",driver->name, adap->name); + } + up(&core_lists); + +@@ -247,7 +250,10 @@ + if (driver->flags & I2C_DF_NOTIFY) { + list_for_each(item,&adapters) { + adapter = list_entry(item, struct i2c_adapter, list); +- driver->attach_adapter(adapter); ++ if (adapter->class & driver->class) ++ driver->attach_adapter(adapter); ++ else ++ printk("i2c-core: skipping driver '%s' on adapter '%s' (class mismatch)\n",driver->name, adap->name); + } + } diff --git a/a/content_digest b/N1/content_digest index e12413d..9f0ceae 100644 --- a/a/content_digest +++ b/N1/content_digest @@ -1,13 +1,13 @@ "ref\041500BED.8090607@linuxtv.org\0" "ref\020040921115442.M18286@linux-fr.org\0" - "From\0hunold@linuxtv.org (Michael Hunold)\0" - "Subject\0Adding .class field to struct i2c_client (was Re: [PATCH][2.6] Add\0" - "Date\0Thu, 19 May 2005 06:25:16 +0000\0" + "From\0Michael Hunold <hunold@linuxtv.org>\0" + "Subject\0Adding .class field to struct i2c_client (was Re: [PATCH][2.6] Add command function to struct i2c_adapter\0" + "Date\0Tue, 21 Sep 2004 19:41:31 +0200\0" "To\0Jean Delvare <khali@linux-fr.org>\0" "Cc\0sensors@stimpy.netroedge.com" Linux Kernel Mailing List <linux-kernel@vger.kernel.org> " Greg KH <greg@kroah.com>\0" - "\00:1\0" + "\01:1\0" "b\0" "Hi,\n" "\n" @@ -38,7 +38,7 @@ "Patches 1-3 are straight forward. For patches 4-7 I once created the \n" "following list:\n" "\n" - "=>4\n" + "==>4\n" "#drivers/ieee1394/pcilynx.c => I2C_CLASS_NONE\n" "#drivers/macintosh/therm_adt746x.c => I2C_CLASS_HWMON\n" "#drivers/macintosh/therm_pm72.c => I2C_CLASS_HWMON\n" @@ -50,7 +50,7 @@ "#sound/oss/dmasound/dac3550a.c => I2C_CLASS_SOUND\n" "#sound/oss/dmasound/tas_common.c => I2C_CLASS_SOUND\n" "\n" - "=>5\n" + "==>5\n" "#drivers/i2c/algos/i2c-algo-pcf.c => I2C_CLASS_ALL\n" "#drivers/i2c/busses/i2c-elektor.c => I2C_CLASS_ALL\n" "#drivers/video/aty/radeon_i2c.c => I2C_CLASS_NONE\n" @@ -62,14 +62,14 @@ "I2C_CLASS_TV_DIGITAL\n" "#drivers/media/dvb/bt8xx/dvb-bt8xx.c => I2C_CLASS_ALL\n" "\n" - "=>6\n" + "==>6\n" "#drivers/i2c/busses/i2c-ibm_iic.c: => I2C_CLASS_ALL\n" "#drivers/i2c/busses/i2c-iop3xx.c:=> I2C_CLASS_ALL\n" "#drivers/i2c/busses/scx200_i2c.c => I2C_CLASS_ALL\n" "#drivers/i2c/busses/i2c-ite.c => I2C_CLASS_ALL\n" "(drivers/i2c/algos/i2c-algo-ite.c:)\n" "\n" - "=>7\n" + "==>7\n" "#drivers/i2c/busses/i2c-frodo.c => I2C_CLASS_ALL\n" "#drivers/i2c/busses/i2c-i810.c => I2C_CLASS_ALL + I2C_CLASS_DDC\n" "#drivers/i2c/busses/i2c-prosavage.c => I2C_CLASS_ALL + I2C_CLASS_DDC\n" @@ -80,9 +80,10 @@ "> Thanks.\n" "\n" "CU\n" - "Michael.\n" - "\n" - "-------------- next part --------------\n" + Michael. + "\01:2\0" + "fn\001-drivers-media-video.diff\0" + "b\0" "diff -ura xx-linux-2.6-6-rc3-mm2/drivers/media/video/adv7170.c linux-2.6-6-rc3-mm2/drivers/media/video/adv7170.c\n" "--- xx-linux-2.6-6-rc3-mm2/drivers/media/video/adv7170.c\t2004-05-09 11:03:04.000000000 +0200\n" "+++ linux-2.6-6-rc3-mm2/drivers/media/video/adv7170.c\t2004-05-09 11:28:12.000000000 +0200\n" @@ -240,8 +241,10 @@ "+ \t.class = I2C_CLASS_TV_ANALOG,\n" " \n" " \t.attach_adapter = vpx3220_attach_adapter,\n" - " \t.detach_client = vpx3220_detach_client,\n" - "-------------- next part --------------\n" + " \t.detach_client = vpx3220_detach_client," + "\01:3\0" + "fn\002-drivers-media-video-2.diff\0" + "b\0" "diff -ura xx-linux-2.6-6-rc3-mm2/drivers/media/video/bt832.c linux-2.6-6-rc3-mm2/drivers/media/video/bt832.c\n" "--- xx-linux-2.6-6-rc3-mm2/drivers/media/video/bt832.c\t2004-05-09 11:11:10.000000000 +0200\n" "+++ linux-2.6-6-rc3-mm2/drivers/media/video/bt832.c\t2004-05-09 14:49:58.000000000 +0200\n" @@ -403,7 +406,7 @@ "-\tif (adap->class & I2C_CLASS_TV_ANALOG)\n" "-\t\treturn i2c_probe(adap, &addr_data, tda7432_attach);\n" "-#else\n" - "-\tif (adap->id = (I2C_ALGO_BIT | I2C_HW_B_BT848))\n" + "-\tif (adap->id == (I2C_ALGO_BIT | I2C_HW_B_BT848))\n" "-\t\treturn i2c_probe(adap, &addr_data, tda7432_attach);\n" "-#endif\n" "-\treturn 0;\n" @@ -440,7 +443,7 @@ "-\tif (adap->class & I2C_CLASS_TV_ANALOG)\n" "-\t\treturn i2c_probe(adap, &addr_data, tda9875_attach);\n" "-#else\n" - "-\tif (adap->id = (I2C_ALGO_BIT | I2C_HW_B_BT848))\n" + "-\tif (adap->id == (I2C_ALGO_BIT | I2C_HW_B_BT848))\n" "-\t\treturn i2c_probe(adap, &addr_data, tda9875_attach);\n" "-#endif\n" "-\treturn 0;\n" @@ -585,7 +588,7 @@ " .command = chip_command,\n" "@@ -1659,8 +1649,7 @@\n" " \tfor (desc = chiplist; desc->name != NULL; desc++)\n" - " \t\tprintk(\"%s%s\", (desc = chiplist) ? \"\" : \",\",desc->name);\n" + " \t\tprintk(\"%s%s\", (desc == chiplist) ? \"\" : \",\",desc->name);\n" " \tprintk(\"\\n\");\n" "-\ti2c_add_driver(&driver);\n" "-\treturn 0;\n" @@ -627,7 +630,7 @@ "-\n" " \t/* unregister ?? */\n" " \tfor (i = 0; i < DEV_MAX; i++) {\n" - " \t\tif (devices[i].dev = client) {\n" + " \t\tif (devices[i].dev == client) {\n" "@@ -334,8 +318,7 @@\n" " \t\n" " \tfor (i = 0; i < DEV_MAX; i++)\n" @@ -637,8 +640,10 @@ "+\treturn i2c_add_driver(&driver);\n" " }\n" " \n" - " static void tvmixer_cleanup_module(void)\n" - "-------------- next part --------------\n" + static void tvmixer_cleanup_module(void) + "\01:4\0" + "fn\003-drivers-i2c-chips.diff\0" + "b\0" "diff -ura xx-linux-2.6-6-rc3-mm2/drivers/i2c/chips/adm1021.c linux-2.6-6-rc3-mm2/drivers/i2c/chips/adm1021.c\n" "--- xx-linux-2.6-6-rc3-mm2/drivers/i2c/chips/adm1021.c\t2004-05-09 11:11:10.000000000 +0200\n" "+++ linux-2.6-6-rc3-mm2/drivers/i2c/chips/adm1021.c\t2004-05-09 16:17:00.000000000 +0200\n" @@ -955,8 +960,10 @@ "+\t.class\t\t= I2C_CLASS_ALL,\n" " \t.attach_adapter\t= i2cdev_attach_adapter,\n" " \t.detach_adapter\t= i2cdev_detach_adapter,\n" - " \t.detach_client\t= i2cdev_detach_client,\n" - "-------------- next part --------------\n" + " \t.detach_client\t= i2cdev_detach_client," + "\01:5\0" + "fn\004-misc.diff\0" + "b\0" "diff -ura xx-linux-2.6-6-rc3-mm2/drivers/acorn/char/i2c.c linux-2.6-6-rc3-mm2/drivers/acorn/char/i2c.c\n" "--- xx-linux-2.6-6-rc3-mm2/drivers/acorn/char/i2c.c\t2004-05-09 11:03:40.000000000 +0200\n" "+++ linux-2.6-6-rc3-mm2/drivers/acorn/char/i2c.c\t2004-05-09 16:31:58.000000000 +0200\n" @@ -1079,8 +1086,10 @@ "+\t.class = I2C_CLASS_SOUND,\n" " \t.attach_adapter = &keywest_attach_adapter,\n" " \t.detach_client = &keywest_detach_client,\n" - " };\n" - "-------------- next part --------------\n" + }; + "\01:6\0" + "fn\005-unclear.diff\0" + "b\0" "diff -ura xx-linux-2.6-6-rc3-mm2/drivers/i2c/algos/i2c-algo-pcf.c linux-2.6-6-rc3-mm2/drivers/i2c/algos/i2c-algo-pcf.c\n" "--- xx-linux-2.6-6-rc3-mm2/drivers/i2c/algos/i2c-algo-pcf.c\t2004-05-09 11:03:03.000000000 +0200\n" "+++ linux-2.6-6-rc3-mm2/drivers/i2c/algos/i2c-algo-pcf.c\t2004-05-09 18:00:47.000000000 +0200\n" @@ -1189,7 +1198,7 @@ " \tif (ACCESS_FBINFO(devflags.dualhead)) {\n" "-\t\terr = i2c_bus_reg(&m2info->ddc2, minfo, DDC2_DATA, DDC2_CLK, \"DDC:fb%u #1\");\n" "+\t\terr = i2c_bus_reg(&m2info->ddc2, minfo, DDC2_DATA, DDC2_CLK, \"DDC:fb%u #1\", I2C_CLASS_DDC);\n" - " \t\tif (err = -ENODEV) {\n" + " \t\tif (err == -ENODEV) {\n" " \t\t\tprintk(KERN_INFO \"i2c-matroxfb: VGA->TV plug detected, DDC unavailable.\\n\");\n" " \t\t} else if (err)\n" " \t\t\tprintk(KERN_INFO \"i2c-matroxfb: Could not register secondary output i2c bus. Continuing anyway.\\n\");\n" @@ -1209,8 +1218,10 @@ "+\t.class\t\t= I2C_CLASS_TV_ANALOG,\n" " \t.attach_adapter\t= maven_attach_adapter,\n" " \t.detach_client\t= maven_detach_client,\n" - " \t.command\t= maven_command,\n" - "-------------- next part --------------\n" + " \t.command\t= maven_command," + "\01:7\0" + "fn\006-class-all.diff\0" + "b\0" "diff -ura xx-linux-2.6-6-rc3-mm2/drivers/i2c/busses/i2c-ibm_iic.c linux-2.6-6-rc3-mm2/drivers/i2c/busses/i2c-ibm_iic.c\n" "--- xx-linux-2.6-6-rc3-mm2/drivers/i2c/busses/i2c-ibm_iic.c\t2004-05-09 11:03:03.000000000 +0200\n" "+++ linux-2.6-6-rc3-mm2/drivers/i2c/busses/i2c-ibm_iic.c\t2004-05-09 18:19:44.000000000 +0200\n" @@ -1279,9 +1290,10 @@ " \t.algo_data\t = &scx200_i2c_data,\n" "+\t.class\t\t = I2C_CLASS_ALL,\n" " \t.name\t= \"NatSemi SCx200 I2C\",\n" - " };\n" - " \n" - "-------------- next part --------------\n" + }; + "\01:8\0" + "fn\007-i2c-busses.diff\0" + "b\0" "diff -ura xx-linux-2.6-6-rc3-mm2/drivers/i2c/busses/i2c-frodo.c linux-2.6-6-rc3-mm2/drivers/i2c/busses/i2c-frodo.c\n" "--- xx-linux-2.6-6-rc3-mm2/drivers/i2c/busses/i2c-frodo.c\t2004-05-09 11:03:02.000000000 +0200\n" "+++ linux-2.6-6-rc3-mm2/drivers/i2c/busses/i2c-frodo.c\t2004-05-09 19:56:30.000000000 +0200\n" @@ -1384,8 +1396,10 @@ "+\t.class\t\t= I2C_CLASS_ALL, /* fixme: correct class entry? */\n" " };\n" " \n" - " static struct pci_device_id savage4_ids[] __devinitdata = {\n" - "-------------- next part --------------\n" + static struct pci_device_id savage4_ids[] __devinitdata = { + "\01:9\0" + "fn\008-i2c-core.diff\0" + "b\0" "diff -ura xx-linux-2.6-6-rc3-mm2/drivers/i2c/i2c-core.c linux-2.6-6-rc3-mm2/drivers/i2c/i2c-core.c\n" "--- xx-linux-2.6-6-rc3-mm2/drivers/i2c/i2c-core.c\t2004-05-09 11:03:03.000000000 +0200\n" "+++ linux-2.6-6-rc3-mm2/drivers/i2c/i2c-core.c\t2004-05-09 21:18:35.000000000 +0200\n" @@ -1415,4 +1429,4 @@ " \t\t}\n" " \t}" -2ddf444c041c14568f4c2b0ea9cd9bb70cfb764b9b5b961c4866f60f77252e66 +6fd1b51d1dc3da27f3e5ace5ff30ff966597dea6767267236b0746b51cc9ada2
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.