i2c: Drop I2C_CLASS_ALL
authorJean Delvare <khali@linux-fr.org>
Wed, 7 Jan 2009 13:29:16 +0000 (14:29 +0100)
committerJean Delvare <khali@linux-fr.org>
Wed, 7 Jan 2009 13:29:16 +0000 (14:29 +0100)
I2C_CLASS_ALL is almost never what bus driver authors really want.
These i2c classes are really only about which devices must be probed,
not what devices can be present. As device drivers get converted to the
new i2c device driver model, only a few device types will keep relying
on probing.

Signed-off-by: Jean Delvare <khali@linux-fr.org>
Acked-by: Sonic Zhang <sonic.zhang@analog.com>
drivers/i2c/busses/i2c-bfin-twi.c
drivers/i2c/busses/i2c-sh7760.c
include/linux/i2c.h

index 3c855ff2992f0ad513500c9820b6e0a03eaa0719..3fd2c417c1e03faafcef50f8aee5b785ba93a477 100644 (file)
@@ -656,7 +656,7 @@ static int i2c_bfin_twi_probe(struct platform_device *pdev)
        strlcpy(p_adap->name, pdev->name, sizeof(p_adap->name));
        p_adap->algo = &bfin_twi_algorithm;
        p_adap->algo_data = iface;
-       p_adap->class = I2C_CLASS_ALL;
+       p_adap->class = I2C_CLASS_HWMON | I2C_CLASS_SPD;
        p_adap->dev.parent = &pdev->dev;
 
        rc = peripheral_request_list(pin_req[pdev->id], "i2c-bfin-twi");
index 5e0e254976de47735a2e797721133e6bf82554c8..baa28b73ae423492412192bdf7b1b203bdf89905 100644 (file)
@@ -475,7 +475,7 @@ static int __devinit sh7760_i2c_probe(struct platform_device *pdev)
 
        id->adap.nr = pdev->id;
        id->adap.algo = &sh7760_i2c_algo;
-       id->adap.class = I2C_CLASS_ALL;
+       id->adap.class = I2C_CLASS_HWMON | I2C_CLASS_SPD;
        id->adap.retries = 3;
        id->adap.algo_data = id;
        id->adap.dev.parent = &pdev->dev;
index 33a5992d493651383e00832b13b69f396d77bfff..0184de4050b8cc8297a227b533e2814f4f8c48c7 100644 (file)
@@ -397,7 +397,6 @@ static inline void i2c_set_adapdata(struct i2c_adapter *dev, void *data)
 #define I2C_CLASS_CAM_DIGITAL  (1<<5)  /* most webcams */
 #define I2C_CLASS_SOUND                (1<<6)  /* sound devices */
 #define I2C_CLASS_SPD          (1<<7)  /* SPD EEPROMs and similar */
-#define I2C_CLASS_ALL          (UINT_MAX) /* all of the above */
 
 /* i2c_client_address_data is the struct for holding default client
  * addresses for a driver and for the parameters supplied on the