Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 7156
b: refs/heads/master
c: 5071860
h: refs/heads/master
v: v3
  • Loading branch information
Jean Delvare authored and Greg Kroah-Hartman committed Sep 5, 2005
1 parent 6cc72d6 commit ba29670
Show file tree
Hide file tree
Showing 37 changed files with 37 additions and 86 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: 4926c0d4de77c5396a274ee7941ed7fc02afed26
refs/heads/master: 5071860aba7fc69279ab822638ed2c2e4549f9fd
7 changes: 4 additions & 3 deletions trunk/Documentation/i2c/porting-clients
Original file line number Diff line number Diff line change
Expand Up @@ -29,8 +29,8 @@ Technical changes:
Please respect this inclusion order. Some extra headers may be
required for a given driver (e.g. "lm75.h").

* [Addresses] SENSORS_I2C_END becomes I2C_CLIENT_END, SENSORS_ISA_END
becomes I2C_CLIENT_ISA_END.
* [Addresses] SENSORS_I2C_END becomes I2C_CLIENT_END, ISA addresses
are no more handled by the i2c core.

* [Client data] Get rid of sysctl_id. Try using standard names for
register values (for example, temp_os becomes temp_max). You're
Expand Down Expand Up @@ -72,7 +72,8 @@ Technical changes:
name string, which will be filled with a lowercase, short string
(typically the driver name, e.g. "lm75").
In i2c-only drivers, drop the i2c_is_isa_adapter check, it's
useless.
useless. Same for isa-only drivers, as the test would always be
true. Only hybrid drivers (which are quite rare) still need it.
The errorN labels are reduced to the number needed. If that number
is 2 (i2c-only drivers), it is advised that the labels are named
exit and exit_free. For i2c+isa drivers, labels should be named
Expand Down
35 changes: 15 additions & 20 deletions trunk/Documentation/i2c/writing-clients
Original file line number Diff line number Diff line change
Expand Up @@ -195,45 +195,40 @@ Probing classes (sensors)
-------------------------

If you write a `sensors' driver, you use a slightly different interface.
As well as I2C addresses, we have to cope with ISA addresses. Also, we
use a enum of chip types. Don't forget to include `sensors.h'.
Also, we use a enum of chip types. Don't forget to include `sensors.h'.

The following lists are used internally. They are all lists of integers.

normal_i2c: filled in by the module writer. Terminated by SENSORS_I2C_END.
normal_i2c: filled in by the module writer. Terminated by I2C_CLIENT_END.
A list of I2C addresses which should normally be examined.
normal_isa: filled in by the module writer. Terminated by SENSORS_ISA_END.
A list of ISA addresses which should normally be examined.
probe: insmod parameter. Initialize this list with SENSORS_I2C_END values.
A list of pairs. The first value is a bus number (SENSORS_ISA_BUS for
the ISA bus, -1 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 SENSORS_I2C_END values.
A list of pairs. The first value is a bus number (SENSORS_ISA_BUS for
the ISA bus, -1 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.
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.

Also used is a list of pointers to sensors_force_data structures:
force_data: insmod parameters. A list, ending with an element of which
the force field is NULL.
Each element contains the type of chip and a list of pairs.
The first value is a bus number (SENSORS_ISA_BUS for the ISA bus,
-1 for any I2C bus), the second is the address.
The first value is a bus number (ANY_I2C_BUS for any I2C bus), the
second is the address.
These are automatically translated to insmod variables of the form
force_foo.

So we have a generic insmod variabled `force', and chip-specific variables
`force_CHIPNAME'.

Fortunately, as a module writer, you just have to define the `normal_i2c'
and `normal_isa' parameters, and define what chip names are used.
The complete declaration could look like this:
parameter, and define what chip names are used. The complete declaration
could look like this:
/* Scan i2c addresses 0x37, and 0x48 to 0x4f */
static unsigned short normal_i2c[] = { 0x37, 0x48, 0x49, 0x4a, 0x4b, 0x4c,
0x4d, 0x4e, 0x4f, I2C_CLIENT_END };
/* Scan ISA address 0x290 */
static unsigned int normal_isa[] = {0x0290,SENSORS_ISA_END};

/* Define chips foo and bar, as well as all module parameters and things */
SENSORS_INSMOD_2(foo,bar);
Expand Down
1 change: 0 additions & 1 deletion trunk/drivers/hwmon/adm1021.c
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,6 @@ static unsigned short normal_i2c[] = { 0x18, 0x19, 0x1a,
0x29, 0x2a, 0x2b,
0x4c, 0x4d, 0x4e,
I2C_CLIENT_END };
static unsigned int normal_isa[] = { I2C_CLIENT_ISA_END };

/* Insmod parameters */
SENSORS_INSMOD_8(adm1021, adm1023, max1617, max1617a, thmc10, lm84, gl523sm, mc1066);
Expand Down
1 change: 0 additions & 1 deletion trunk/drivers/hwmon/adm1025.c
Original file line number Diff line number Diff line change
Expand Up @@ -62,7 +62,6 @@
*/

static unsigned short normal_i2c[] = { 0x2c, 0x2d, 0x2e, I2C_CLIENT_END };
static unsigned int normal_isa[] = { I2C_CLIENT_ISA_END };

/*
* Insmod parameters
Expand Down
1 change: 0 additions & 1 deletion trunk/drivers/hwmon/adm1026.c
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,6 @@

/* Addresses to scan */
static unsigned short normal_i2c[] = { 0x2c, 0x2d, 0x2e, I2C_CLIENT_END };
static unsigned int normal_isa[] = { I2C_CLIENT_ISA_END };

/* Insmod parameters */
SENSORS_INSMOD_1(adm1026);
Expand Down
1 change: 0 additions & 1 deletion trunk/drivers/hwmon/adm1031.c
Original file line number Diff line number Diff line change
Expand Up @@ -61,7 +61,6 @@

/* Addresses to scan */
static unsigned short normal_i2c[] = { 0x2c, 0x2d, 0x2e, I2C_CLIENT_END };
static unsigned int normal_isa[] = { I2C_CLIENT_ISA_END };

/* Insmod parameters */
SENSORS_INSMOD_2(adm1030, adm1031);
Expand Down
2 changes: 0 additions & 2 deletions trunk/drivers/hwmon/adm9240.c
Original file line number Diff line number Diff line change
Expand Up @@ -54,8 +54,6 @@
static unsigned short normal_i2c[] = { 0x2c, 0x2d, 0x2e, 0x2f,
I2C_CLIENT_END };

static unsigned int normal_isa[] = { I2C_CLIENT_ISA_END };

/* Insmod parameters */
SENSORS_INSMOD_3(adm9240, ds1780, lm81);

Expand Down
3 changes: 0 additions & 3 deletions trunk/drivers/hwmon/asb100.c
Original file line number Diff line number Diff line change
Expand Up @@ -56,9 +56,6 @@
/* I2C addresses to scan */
static unsigned short normal_i2c[] = { 0x2d, I2C_CLIENT_END };

/* ISA addresses to scan (none) */
static unsigned int normal_isa[] = { I2C_CLIENT_ISA_END };

/* Insmod parameters */
SENSORS_INSMOD_1(asb100);
I2C_CLIENT_MODULE_PARM(force_subclients, "List of subclient addresses: "
Expand Down
1 change: 0 additions & 1 deletion trunk/drivers/hwmon/atxp1.c
Original file line number Diff line number Diff line change
Expand Up @@ -42,7 +42,6 @@ MODULE_AUTHOR("Sebastian Witt <se.witt@gmx.net>");
#define ATXP1_GPIO1MASK 0x0f

static unsigned short normal_i2c[] = { 0x37, 0x4e, I2C_CLIENT_END };
static unsigned int normal_isa[] = { I2C_CLIENT_ISA_END };

SENSORS_INSMOD_1(atxp1);

Expand Down
1 change: 0 additions & 1 deletion trunk/drivers/hwmon/ds1621.c
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,6 @@
/* Addresses to scan */
static unsigned short normal_i2c[] = { 0x48, 0x49, 0x4a, 0x4b, 0x4c,
0x4d, 0x4e, 0x4f, I2C_CLIENT_END };
static unsigned int normal_isa[] = { I2C_CLIENT_ISA_END };

/* Insmod parameters */
SENSORS_INSMOD_1(ds1621);
Expand Down
1 change: 0 additions & 1 deletion trunk/drivers/hwmon/fscher.c
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,6 @@
*/

static unsigned short normal_i2c[] = { 0x73, I2C_CLIENT_END };
static unsigned int normal_isa[] = { I2C_CLIENT_ISA_END };

/*
* Insmod parameters
Expand Down
1 change: 0 additions & 1 deletion trunk/drivers/hwmon/fscpos.c
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,6 @@
* Addresses to scan
*/
static unsigned short normal_i2c[] = { 0x73, I2C_CLIENT_END };
static unsigned int normal_isa[] = { I2C_CLIENT_ISA_END };

/*
* Insmod parameters
Expand Down
1 change: 0 additions & 1 deletion trunk/drivers/hwmon/gl518sm.c
Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,6 @@

/* Addresses to scan */
static unsigned short normal_i2c[] = { 0x2c, 0x2d, I2C_CLIENT_END };
static unsigned int normal_isa[] = { I2C_CLIENT_ISA_END };

/* Insmod parameters */
SENSORS_INSMOD_2(gl518sm_r00, gl518sm_r80);
Expand Down
1 change: 0 additions & 1 deletion trunk/drivers/hwmon/gl520sm.c
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,6 @@ MODULE_PARM_DESC(extra_sensor_type, "Type of extra sensor (0=autodetect, 1=tempe

/* Addresses to scan */
static unsigned short normal_i2c[] = { 0x2c, 0x2d, I2C_CLIENT_END };
static unsigned int normal_isa[] = { I2C_CLIENT_ISA_END };

/* Insmod parameters */
SENSORS_INSMOD_1(gl520sm);
Expand Down
1 change: 0 additions & 1 deletion trunk/drivers/hwmon/it87.c
Original file line number Diff line number Diff line change
Expand Up @@ -48,7 +48,6 @@
/* Addresses to scan */
static unsigned short normal_i2c[] = { 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d,
0x2e, 0x2f, I2C_CLIENT_END };
static unsigned int normal_isa[] = { I2C_CLIENT_ISA_END };
static unsigned short isa_address = 0x290;

/* Insmod parameters */
Expand Down
1 change: 0 additions & 1 deletion trunk/drivers/hwmon/lm63.c
Original file line number Diff line number Diff line change
Expand Up @@ -53,7 +53,6 @@
*/

static unsigned short normal_i2c[] = { 0x4c, I2C_CLIENT_END };
static unsigned int normal_isa[] = { I2C_CLIENT_ISA_END };

/*
* Insmod parameters
Expand Down
1 change: 0 additions & 1 deletion trunk/drivers/hwmon/lm75.c
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,6 @@
/* Addresses to scan */
static unsigned short normal_i2c[] = { 0x48, 0x49, 0x4a, 0x4b, 0x4c,
0x4d, 0x4e, 0x4f, I2C_CLIENT_END };
static unsigned int normal_isa[] = { I2C_CLIENT_ISA_END };

/* Insmod parameters */
SENSORS_INSMOD_1(lm75);
Expand Down
1 change: 0 additions & 1 deletion trunk/drivers/hwmon/lm77.c
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,6 @@

/* Addresses to scan */
static unsigned short normal_i2c[] = { 0x48, 0x49, 0x4a, 0x4b, I2C_CLIENT_END };
static unsigned int normal_isa[] = { I2C_CLIENT_ISA_END };

/* Insmod parameters */
SENSORS_INSMOD_1(lm77);
Expand Down
1 change: 0 additions & 1 deletion trunk/drivers/hwmon/lm78.c
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,6 @@ static unsigned short normal_i2c[] = { 0x20, 0x21, 0x22, 0x23, 0x24,
0x25, 0x26, 0x27, 0x28, 0x29,
0x2a, 0x2b, 0x2c, 0x2d, 0x2e,
0x2f, I2C_CLIENT_END };
static unsigned int normal_isa[] = { I2C_CLIENT_ISA_END };
static unsigned short isa_address = 0x290;

/* Insmod parameters */
Expand Down
1 change: 0 additions & 1 deletion trunk/drivers/hwmon/lm80.c
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,6 @@
/* Addresses to scan */
static unsigned short normal_i2c[] = { 0x28, 0x29, 0x2a, 0x2b, 0x2c,
0x2d, 0x2e, 0x2f, I2C_CLIENT_END };
static unsigned int normal_isa[] = { I2C_CLIENT_ISA_END };

/* Insmod parameters */
SENSORS_INSMOD_1(lm80);
Expand Down
1 change: 0 additions & 1 deletion trunk/drivers/hwmon/lm83.c
Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,6 @@ static unsigned short normal_i2c[] = { 0x18, 0x19, 0x1a,
0x29, 0x2a, 0x2b,
0x4c, 0x4d, 0x4e,
I2C_CLIENT_END };
static unsigned int normal_isa[] = { I2C_CLIENT_ISA_END };

/*
* Insmod parameters
Expand Down
1 change: 0 additions & 1 deletion trunk/drivers/hwmon/lm85.c
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,6 @@

/* Addresses to scan */
static unsigned short normal_i2c[] = { 0x2c, 0x2d, 0x2e, I2C_CLIENT_END };
static unsigned int normal_isa[] = { I2C_CLIENT_ISA_END };

/* Insmod parameters */
SENSORS_INSMOD_6(lm85b, lm85c, adm1027, adt7463, emc6d100, emc6d102);
Expand Down
1 change: 0 additions & 1 deletion trunk/drivers/hwmon/lm87.c
Original file line number Diff line number Diff line change
Expand Up @@ -68,7 +68,6 @@
*/

static unsigned short normal_i2c[] = { 0x2c, 0x2d, 0x2e, I2C_CLIENT_END };
static unsigned int normal_isa[] = { I2C_CLIENT_ISA_END };

/*
* Insmod parameters
Expand Down
1 change: 0 additions & 1 deletion trunk/drivers/hwmon/lm90.c
Original file line number Diff line number Diff line change
Expand Up @@ -91,7 +91,6 @@
*/

static unsigned short normal_i2c[] = { 0x4c, 0x4d, I2C_CLIENT_END };
static unsigned int normal_isa[] = { I2C_CLIENT_ISA_END };

/*
* Insmod parameters
Expand Down
1 change: 0 additions & 1 deletion trunk/drivers/hwmon/lm92.c
Original file line number Diff line number Diff line change
Expand Up @@ -52,7 +52,6 @@
resulting in 4 possible addresses. */
static unsigned short normal_i2c[] = { 0x48, 0x49, 0x4a, 0x4b,
I2C_CLIENT_END };
static unsigned int normal_isa[] = { I2C_CLIENT_ISA_END };

/* Insmod parameters */
SENSORS_INSMOD_1(lm92);
Expand Down
1 change: 0 additions & 1 deletion trunk/drivers/hwmon/max1619.c
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,6 @@ static unsigned short normal_i2c[] = { 0x18, 0x19, 0x1a,
0x29, 0x2a, 0x2b,
0x4c, 0x4d, 0x4e,
I2C_CLIENT_END };
static unsigned int normal_isa[] = { I2C_CLIENT_ISA_END };

/*
* Insmod parameters
Expand Down
1 change: 0 additions & 1 deletion trunk/drivers/hwmon/w83781d.c
Original file line number Diff line number Diff line change
Expand Up @@ -50,7 +50,6 @@
static unsigned short normal_i2c[] = { 0x20, 0x21, 0x22, 0x23, 0x24, 0x25,
0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b,
0x2c, 0x2d, 0x2e, 0x2f, I2C_CLIENT_END };
static unsigned int normal_isa[] = { I2C_CLIENT_ISA_END };
static unsigned short isa_address = 0x290;

/* Insmod parameters */
Expand Down
1 change: 0 additions & 1 deletion trunk/drivers/hwmon/w83l785ts.c
Original file line number Diff line number Diff line change
Expand Up @@ -49,7 +49,6 @@
*/

static unsigned short normal_i2c[] = { 0x2e, I2C_CLIENT_END };
static unsigned int normal_isa[] = { I2C_CLIENT_ISA_END };

/*
* Insmod parameters
Expand Down
1 change: 0 additions & 1 deletion trunk/drivers/i2c/chips/ds1337.c
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,6 @@
* Functions declaration
*/
static unsigned short normal_i2c[] = { 0x68, I2C_CLIENT_END };
static unsigned int normal_isa[] = { I2C_CLIENT_ISA_END };

SENSORS_INSMOD_1(ds1337);

Expand Down
1 change: 0 additions & 1 deletion trunk/drivers/i2c/chips/eeprom.c
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,6 @@
/* Addresses to scan */
static unsigned short normal_i2c[] = { 0x50, 0x51, 0x52, 0x53, 0x54,
0x55, 0x56, 0x57, I2C_CLIENT_END };
static unsigned int normal_isa[] = { I2C_CLIENT_ISA_END };

/* Insmod parameters */
SENSORS_INSMOD_1(eeprom);
Expand Down
1 change: 0 additions & 1 deletion trunk/drivers/i2c/chips/max6875.c
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,6 @@

/* Do not scan - the MAX6875 access method will write to some EEPROM chips */
static unsigned short normal_i2c[] = {I2C_CLIENT_END};
static unsigned int normal_isa[] = {I2C_CLIENT_ISA_END};

/* Insmod parameters */
SENSORS_INSMOD_1(max6875);
Expand Down
1 change: 0 additions & 1 deletion trunk/drivers/i2c/chips/pca9539.c
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,6 @@

/* Addresses to scan */
static unsigned short normal_i2c[] = {0x74, 0x75, 0x76, 0x77, I2C_CLIENT_END};
static unsigned int normal_isa[] = {I2C_CLIENT_ISA_END};

/* Insmod parameters */
SENSORS_INSMOD_1(pca9539);
Expand Down
1 change: 0 additions & 1 deletion trunk/drivers/i2c/chips/pcf8574.c
Original file line number Diff line number Diff line change
Expand Up @@ -45,7 +45,6 @@
static unsigned short normal_i2c[] = { 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27,
0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f,
I2C_CLIENT_END };
static unsigned int normal_isa[] = { I2C_CLIENT_ISA_END };

/* Insmod parameters */
SENSORS_INSMOD_2(pcf8574, pcf8574a);
Expand Down
1 change: 0 additions & 1 deletion trunk/drivers/i2c/chips/pcf8591.c
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,6 @@
/* Addresses to scan */
static unsigned short normal_i2c[] = { 0x48, 0x49, 0x4a, 0x4b, 0x4c,
0x4d, 0x4e, 0x4f, I2C_CLIENT_END };
static unsigned int normal_isa[] = { I2C_CLIENT_ISA_END };

/* Insmod parameters */
SENSORS_INSMOD_1(pcf8591);
Expand Down
Loading

0 comments on commit ba29670

Please sign in to comment.