[PATCH] hwmon: hwmon vs i2c, second round (03/11)
authorJean Delvare <khali@linux-fr.org>
Sun, 31 Jul 2005 19:36:24 +0000 (21:36 +0200)
committerGreg Kroah-Hartman <gregkh@suse.de>
Mon, 5 Sep 2005 16:14:19 +0000 (09:14 -0700)
We now have two identical structures, i2c_address_data in i2c-sensor.h
and i2c_client_address_data in i2c.h. We can kill one of them, I choose
to keep the one in i2c.h as it makes more sense (this structure is not
specific to sensors.)

Signed-off-by: Jean Delvare <khali@linux-fr.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
drivers/i2c/i2c-sensor-detect.c
include/linux/i2c-sensor.h

index c952926c1482308cceab39eeee5aa97a5b6894d2..70fcf72819883eafb6df1468fa7af4d054459633 100644 (file)
@@ -28,7 +28,7 @@ static unsigned short empty[] = {I2C_CLIENT_END};
 
 /* Won't work for 10-bit addresses! */
 int i2c_detect(struct i2c_adapter *adapter,
-              struct i2c_address_data *address_data,
+              struct i2c_client_address_data *address_data,
               int (*found_proc) (struct i2c_adapter *, int, int))
 {
        int addr, i, found, j, err;
index 4facaa0b905412cd1cf0ad35863e20e307552c57..fc9284af9faef413fbd69f4c0f57901a9e8397d1 100644 (file)
 #ifndef _LINUX_I2C_SENSOR_H
 #define _LINUX_I2C_SENSOR_H
 
-/* A structure containing the detect information.
-   normal_i2c: filled in by the module writer. Terminated by I2C_CLIENT_END.
-     A list of I2C addresses which should normally be examined.
-   probe: insmod parameter. Initialize this list with I2C_CLIENT_END values.
-     A list of pairs. The first value is a bus number (ANY_I2C_BUS for any
-     I2C bus), the second is the address. These addresses are also probed,
-     as if they were in the 'normal' list.
-   ignore: insmod parameter. Initialize this list with I2C_CLIENT_END values.
-     A list of pairs. The first value is a bus number (ANY_I2C_BUS for any
-     I2C bus), the second is the I2C address. These addresses are never
-     probed. This parameter overrules 'normal' and  probe', but not the
-    'force' lists.
-   forces: insmod parameters. A list, ending with a NULL element.
-     Force variables overrule all other variables; they force a detection on
-     that place. If a specific chip is given, the module blindly assumes this
-     chip type is present; if a general force (kind == 0) is given, the module
-     will still try to figure out what type of chip is present. This is useful
-     if for some reasons the detect for SMBus address space filled fails.
-*/
-struct i2c_address_data {
-       unsigned short *normal_i2c;
-       unsigned short *probe;
-       unsigned short *ignore;
-       unsigned short **forces;
-};
+#include <linux/i2c.h>
 
 #define SENSORS_MODULE_PARM_FORCE(name) \
   I2C_CLIENT_MODULE_PARM(force_ ## name, \
@@ -60,7 +36,7 @@ struct i2c_address_data {
                       "List of adapter,address pairs to scan additionally"); \
   I2C_CLIENT_MODULE_PARM(ignore, \
                       "List of adapter,address pairs not to scan"); \
-       static struct i2c_address_data addr_data = {                    \
+       static struct i2c_client_address_data addr_data = {             \
                        .normal_i2c =           normal_i2c,             \
                        .probe =                probe,                  \
                        .ignore =               ignore,                 \
@@ -228,7 +204,7 @@ struct i2c_address_data {
    SMBus addresses, it will only call found_proc if some client is connected
    to the SMBus (unless a 'force' matched). */
 extern int i2c_detect(struct i2c_adapter *adapter,
-                     struct i2c_address_data *address_data,
+                     struct i2c_client_address_data *address_data,
                      int (*found_proc) (struct i2c_adapter *, int, int));
 
 #endif                         /* def _LINUX_I2C_SENSOR_H */