algo_data->setsda(algo_data->data, 1);
        algo_data->setscl(algo_data->data, 1);
 
-       adapter->class |= I2C_CLASS_DDC;
        return edid;
 }
 
 
        strscpy(cfb->ddc_adapter.name, cfb->fb.fix.id,
                sizeof(cfb->ddc_adapter.name));
        cfb->ddc_adapter.owner          = THIS_MODULE;
-       cfb->ddc_adapter.class          = I2C_CLASS_DDC;
        cfb->ddc_adapter.algo_data      = &cfb->ddc_algo;
        cfb->ddc_adapter.dev.parent     = cfb->fb.device;
        cfb->ddc_algo.setsda            = cyber2000fb_ddc_setsda;
 
        strscpy(par->ddc_adapter.name, info->fix.id,
                sizeof(par->ddc_adapter.name));
        par->ddc_adapter.owner          = THIS_MODULE;
-       par->ddc_adapter.class          = I2C_CLASS_DDC;
        par->ddc_adapter.algo_data      = &par->ddc_algo;
        par->ddc_adapter.dev.parent     = info->device;
        par->ddc_algo.setsda            = i740fb_ddc_setsda;
 
 
 static int intelfb_setup_i2c_bus(struct intelfb_info *dinfo,
                                 struct intelfb_i2c_chan *chan,
-                                const u32 reg, const char *name,
-                                int class)
+                                const u32 reg, const char *name)
 {
        int rc;
 
        chan->reg                       = reg;
        snprintf(chan->adapter.name, sizeof(chan->adapter.name),
                 "intelfb %s", name);
-       chan->adapter.class             = class;
        chan->adapter.owner             = THIS_MODULE;
        chan->adapter.algo_data         = &chan->algo;
        chan->adapter.dev.parent        = &chan->dinfo->pdev->dev;
        dinfo->output[i].type = INTELFB_OUTPUT_ANALOG;
 
        /* setup the DDC bus for analog output */
-       intelfb_setup_i2c_bus(dinfo, &dinfo->output[i].ddc_bus, GPIOA,
-                             "CRTDDC_A", I2C_CLASS_DDC);
+       intelfb_setup_i2c_bus(dinfo, &dinfo->output[i].ddc_bus, GPIOA, "CRTDDC_A");
        i++;
 
        /* need to add the output busses for each device
        case INTEL_855GM:
        case INTEL_865G:
                dinfo->output[i].type = INTELFB_OUTPUT_DVO;
-               intelfb_setup_i2c_bus(dinfo, &dinfo->output[i].ddc_bus,
-                                     GPIOD, "DVODDC_D", I2C_CLASS_DDC);
-               intelfb_setup_i2c_bus(dinfo, &dinfo->output[i].i2c_bus,
-                                     GPIOE, "DVOI2C_E", 0);
+               intelfb_setup_i2c_bus(dinfo, &dinfo->output[i].ddc_bus, GPIOD, "DVODDC_D");
+               intelfb_setup_i2c_bus(dinfo, &dinfo->output[i].i2c_bus, GPIOE, "DVOI2C_E");
                i++;
                break;
        case INTEL_915G:
                /* SDVO ports have a single control bus - 2 devices */
                dinfo->output[i].type = INTELFB_OUTPUT_SDVO;
                intelfb_setup_i2c_bus(dinfo, &dinfo->output[i].i2c_bus,
-                                     GPIOE, "SDVOCTRL_E", 0);
+                                     GPIOE, "SDVOCTRL_E");
                /* TODO: initialize the SDVO */
                /* I830SDVOInit(pScrn, i, DVOB); */
                i++;
 
 };
 
 static int i2c_bus_reg(struct i2c_bit_adapter* b, struct matrox_fb_info* minfo, 
-               unsigned int data, unsigned int clock, const char *name,
-               int class)
+               unsigned int data, unsigned int clock, const char *name)
 {
        int err;
 
        snprintf(b->adapter.name, sizeof(b->adapter.name), name,
                minfo->fbcon.node);
        i2c_set_adapdata(&b->adapter, b);
-       b->adapter.class = class;
        b->adapter.algo_data = &b->bac;
        b->adapter.dev.parent = &minfo->pcidev->dev;
        b->bac = matrox_i2c_algo_template;
                case MGA_2164:
                        err = i2c_bus_reg(&m2info->ddc1, minfo,
                                          DDC1B_DATA, DDC1B_CLK,
-                                         "DDC:fb%u #0", I2C_CLASS_DDC);
+                                         "DDC:fb%u #0");
                        break;
                default:
                        err = i2c_bus_reg(&m2info->ddc1, minfo,
                                          DDC1_DATA, DDC1_CLK,
-                                         "DDC:fb%u #0", I2C_CLASS_DDC);
+                                         "DDC:fb%u #0");
                        break;
        }
        if (err)
                goto fail_ddc1;
        if (minfo->devflags.dualhead) {
-               err = i2c_bus_reg(&m2info->ddc2, minfo,
-                                 DDC2_DATA, DDC2_CLK,
-                                 "DDC:fb%u #1", I2C_CLASS_DDC);
+               err = i2c_bus_reg(&m2info->ddc2, minfo, DDC2_DATA, DDC2_CLK, "DDC:fb%u #1");
                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", 0);
+               err = i2c_bus_reg(&m2info->maven, minfo, MAT_DATA, MAT_CLK, "MAVEN:fb%u");
                if (err)
                        printk(KERN_INFO "i2c-matroxfb: Could not register Maven i2c bus. Continuing anyway.\n");
                else {
 
        strscpy(par->ddc_adapter.name, info->fix.id,
                sizeof(par->ddc_adapter.name));
        par->ddc_adapter.owner          = THIS_MODULE;
-       par->ddc_adapter.class          = I2C_CLASS_DDC;
        par->ddc_adapter.algo_data      = &par->ddc_algo;
        par->ddc_adapter.dev.parent     = info->device;
        par->ddc_algo.setsda            = s3fb_ddc_setsda;
 
 
        strscpy(chan->adapter.name, name, sizeof(chan->adapter.name));
        chan->adapter.owner             = THIS_MODULE;
-       chan->adapter.class             = I2C_CLASS_DDC;
        chan->adapter.algo_data         = &chan->algo;
        chan->adapter.dev.parent        = dev;
        chan->algo.setsda               = tdfxfb_ddc_setsda;
 
        strscpy(par->ddc_adapter.name, info->fix.id,
                sizeof(par->ddc_adapter.name));
        par->ddc_adapter.owner          = THIS_MODULE;
-       par->ddc_adapter.class          = I2C_CLASS_DDC;
        par->ddc_adapter.algo_data      = &par->ddc_algo;
        par->ddc_adapter.dev.parent     = info->device;
        if (is_oldclock(par->chip_id)) { /* not sure if this check is OK */
 
        sprintf(adapter->name, "viafb i2c io_port idx 0x%02x",
                adap_cfg->ioport_index);
        adapter->owner = THIS_MODULE;
-       adapter->class = I2C_CLASS_DDC;
        adapter->algo_data = algo;
        if (pdev)
                adapter->dev.parent = &pdev->dev;