[PATCH] I2C: Kill i2c_algorithm.id (6/7)
In theory, there should be no more users of I2C_ALGO_* at this point. However, it happens that several drivers were using I2C_ALGO_* for adapter ids, so we need to correct these before we can get rid of all the I2C_ALGO_* definitions. Note that this also fixes a bug in media/video/tvaudio.c: /* don't attach on saa7146 based cards, because dedicated drivers are used */ if ((adap->id & I2C_ALGO_SAA7146)) return 0; This test was plain broken, as it would succeed for many more adapters than just the saa7146: any those id would share at least one bit with the saa7146 id. We are really lucky that the few other adapters we want this driver to work with did not fulfill that condition. Signed-off-by: Jean Delvare <khali@linux-fr.org> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
This commit is contained in:

committed by
Greg Kroah-Hartman

parent
c7a46533ff
commit
1684a98430
@@ -137,7 +137,6 @@ static int prosavage_gpio_getsda(void* data)
|
||||
return (0 != (GET_CR_DATA(chan->ioaddr) & PROSAVAGE_I2C_SDA_IN));
|
||||
}
|
||||
|
||||
#define I2C_ALGO_SAVAGE 0x0f0000
|
||||
static int savage_setup_i2c_bus(struct savagefb_i2c_chan *chan,
|
||||
const char *name)
|
||||
{
|
||||
@@ -147,7 +146,7 @@ static int savage_setup_i2c_bus(struct savagefb_i2c_chan *chan,
|
||||
if (add_bus && chan->par) {
|
||||
strcpy(chan->adapter.name, name);
|
||||
chan->adapter.owner = THIS_MODULE;
|
||||
chan->adapter.id = I2C_ALGO_SAVAGE;
|
||||
chan->adapter.id = I2C_HW_B_SAVAGE;
|
||||
chan->adapter.algo_data = &chan->algo;
|
||||
chan->adapter.dev.parent = &chan->par->pcidev->dev;
|
||||
chan->algo.udelay = 40;
|
||||
|
Reference in New Issue
Block a user