After removal of the legacy EEPROM driver and I2C_CLASS_DDC support in
olpc_dcon there's no i2c client driver left supporting I2C_CLASS_DDC.
Class-based device auto-detection is a legacy mechanism and shouldn't
be used in new code. So we can remove this class completely now.

Preferably this series should be applied via the i2c tree.

Acked-by: Helge Deller <del...@gmx.de>
Signed-off-by: Heiner Kallweit <hkallwe...@gmail.com>

---
 drivers/video/fbdev/intelfb/intelfb_i2c.c |   15 +++++----------
 1 file changed, 5 insertions(+), 10 deletions(-)

diff --git a/drivers/video/fbdev/intelfb/intelfb_i2c.c 
b/drivers/video/fbdev/intelfb/intelfb_i2c.c
index 3300bd31d..f24c7cb4c 100644
--- a/drivers/video/fbdev/intelfb/intelfb_i2c.c
+++ b/drivers/video/fbdev/intelfb/intelfb_i2c.c
@@ -99,8 +99,7 @@ static int intelfb_gpio_getsda(void *data)
 
 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;
 
@@ -108,7 +107,6 @@ static int intelfb_setup_i2c_bus(struct intelfb_info *dinfo,
        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;
@@ -144,8 +142,7 @@ void intelfb_create_i2c_busses(struct intelfb_info *dinfo)
        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
@@ -159,10 +156,8 @@ void intelfb_create_i2c_busses(struct intelfb_info *dinfo)
        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:
@@ -176,7 +171,7 @@ void intelfb_create_i2c_busses(struct intelfb_info *dinfo)
                /* 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++;

Reply via email to