Commit 36a113db authored by Greg Kroah-Hartman's avatar Greg Kroah-Hartman Committed by Christoph Hellwig

[PATCH] i2c: remove a lot of dupliated macros from i2c-sensor.h and use the current values in i2c.h

parent a10ce1d4
...@@ -39,12 +39,12 @@ ...@@ -39,12 +39,12 @@
#define ADM1021_ALARM_RTEMP_NA 0x04 #define ADM1021_ALARM_RTEMP_NA 0x04
/* Addresses to scan */ /* Addresses to scan */
static unsigned short normal_i2c[] = { SENSORS_I2C_END }; static unsigned short normal_i2c[] = { I2C_CLIENT_END };
static unsigned short normal_i2c_range[] = { 0x18, 0x1a, 0x29, 0x2b, static unsigned short normal_i2c_range[] = { 0x18, 0x1a, 0x29, 0x2b,
0x4c, 0x4e, SENSORS_I2C_END 0x4c, 0x4e, I2C_CLIENT_END
}; };
static unsigned int normal_isa[] = { SENSORS_ISA_END }; static unsigned int normal_isa[] = { I2C_CLIENT_ISA_END };
static unsigned int normal_isa_range[] = { SENSORS_ISA_END }; static unsigned int normal_isa_range[] = { I2C_CLIENT_ISA_END };
/* Insmod parameters */ /* Insmod parameters */
SENSORS_INSMOD_8(adm1021, adm1023, max1617, max1617a, thmc10, lm84, gl523sm, mc1066); SENSORS_INSMOD_8(adm1021, adm1023, max1617, max1617a, thmc10, lm84, gl523sm, mc1066);
......
...@@ -40,10 +40,10 @@ ...@@ -40,10 +40,10 @@
/* Addresses to scan */ /* Addresses to scan */
static unsigned short normal_i2c[] = { SENSORS_I2C_END }; static unsigned short normal_i2c[] = { I2C_CLIENT_END };
static unsigned short normal_i2c_range[] = { 0x20, 0x2f, SENSORS_I2C_END }; static unsigned short normal_i2c_range[] = { 0x20, 0x2f, I2C_CLIENT_END };
static unsigned int normal_isa[] = { 0x0290, SENSORS_ISA_END }; static unsigned int normal_isa[] = { 0x0290, I2C_CLIENT_ISA_END };
static unsigned int normal_isa_range[] = { SENSORS_ISA_END }; static unsigned int normal_isa_range[] = { I2C_CLIENT_ISA_END };
/* Insmod parameters */ /* Insmod parameters */
SENSORS_INSMOD_4(it87, it8705, it8712, sis950); SENSORS_INSMOD_4(it87, it8705, it8712, sis950);
......
...@@ -28,10 +28,10 @@ ...@@ -28,10 +28,10 @@
/* Addresses to scan */ /* Addresses to scan */
static unsigned short normal_i2c[] = { SENSORS_I2C_END }; static unsigned short normal_i2c[] = { I2C_CLIENT_END };
static unsigned short normal_i2c_range[] = { 0x48, 0x4f, SENSORS_I2C_END }; static unsigned short normal_i2c_range[] = { 0x48, 0x4f, I2C_CLIENT_END };
static unsigned int normal_isa[] = { SENSORS_ISA_END }; static unsigned int normal_isa[] = { I2C_CLIENT_ISA_END };
static unsigned int normal_isa_range[] = { SENSORS_ISA_END }; static unsigned int normal_isa_range[] = { I2C_CLIENT_ISA_END };
/* Insmod parameters */ /* Insmod parameters */
SENSORS_INSMOD_1(lm75); SENSORS_INSMOD_1(lm75);
......
...@@ -51,10 +51,10 @@ MODULE_PARM_DESC(force_addr, ...@@ -51,10 +51,10 @@ MODULE_PARM_DESC(force_addr,
/* Addresses to scan. /* Addresses to scan.
Note that we can't determine the ISA address until we have initialized Note that we can't determine the ISA address until we have initialized
our module */ our module */
static unsigned short normal_i2c[] = { SENSORS_I2C_END }; static unsigned short normal_i2c[] = { I2C_CLIENT_END };
static unsigned short normal_i2c_range[] = { SENSORS_I2C_END }; static unsigned short normal_i2c_range[] = { I2C_CLIENT_END };
static unsigned int normal_isa[] = { 0x0000, SENSORS_ISA_END }; static unsigned int normal_isa[] = { 0x0000, I2C_CLIENT_ISA_END };
static unsigned int normal_isa_range[] = { SENSORS_ISA_END }; static unsigned int normal_isa_range[] = { I2C_CLIENT_ISA_END };
/* Insmod parameters */ /* Insmod parameters */
SENSORS_INSMOD_1(via686a); SENSORS_INSMOD_1(via686a);
......
...@@ -46,14 +46,14 @@ ...@@ -46,14 +46,14 @@
#define W83781D_RT 1 #define W83781D_RT 1
/* Addresses to scan */ /* Addresses to scan */
static unsigned short normal_i2c[] = { SENSORS_I2C_END }; static unsigned short normal_i2c[] = { I2C_CLIENT_END };
static unsigned short normal_i2c_range[] = { 0x20, 0x2f, SENSORS_I2C_END }; static unsigned short normal_i2c_range[] = { 0x20, 0x2f, I2C_CLIENT_END };
static unsigned int normal_isa[] = { 0x0290, SENSORS_ISA_END }; static unsigned int normal_isa[] = { 0x0290, I2C_CLIENT_ISA_END };
static unsigned int normal_isa_range[] = { SENSORS_ISA_END }; static unsigned int normal_isa_range[] = { I2C_CLIENT_ISA_END };
/* Insmod parameters */ /* Insmod parameters */
SENSORS_INSMOD_6(w83781d, w83782d, w83783s, w83627hf, as99127f, w83697hf); SENSORS_INSMOD_6(w83781d, w83782d, w83783s, w83627hf, as99127f, w83697hf);
SENSORS_MODULE_PARM(force_subclients, "List of subclient addresses: " I2C_CLIENT_MODULE_PARM(force_subclients, "List of subclient addresses: "
"{bus, clientaddr, subclientaddr1, subclientaddr2}"); "{bus, clientaddr, subclientaddr1, subclientaddr2}");
static int init = 1; static int init = 1;
......
...@@ -42,7 +42,7 @@ int i2c_detect(struct i2c_adapter *adapter, ...@@ -42,7 +42,7 @@ int i2c_detect(struct i2c_adapter *adapter,
struct i2c_force_data *this_force; struct i2c_force_data *this_force;
int is_isa = i2c_is_isa_adapter(adapter); int is_isa = i2c_is_isa_adapter(adapter);
int adapter_id = int adapter_id =
is_isa ? SENSORS_ISA_BUS : i2c_adapter_id(adapter); is_isa ? ANY_I2C_ISA_BUS : i2c_adapter_id(adapter);
/* Forget it if we can't probe using SMBUS_QUICK */ /* Forget it if we can't probe using SMBUS_QUICK */
if ((!is_isa) && if ((!is_isa) &&
...@@ -59,9 +59,9 @@ int i2c_detect(struct i2c_adapter *adapter, ...@@ -59,9 +59,9 @@ int i2c_detect(struct i2c_adapter *adapter,
detection at all */ detection at all */
found = 0; found = 0;
for (i = 0; !found && (this_force = address_data->forces + i, this_force->force); i++) { for (i = 0; !found && (this_force = address_data->forces + i, this_force->force); i++) {
for (j = 0; !found && (this_force->force[j] != SENSORS_I2C_END); j += 2) { for (j = 0; !found && (this_force->force[j] != I2C_CLIENT_END); j += 2) {
if ( ((adapter_id == this_force->force[j]) || if ( ((adapter_id == this_force->force[j]) ||
((this_force->force[j] == SENSORS_ANY_I2C_BUS) && !is_isa)) && ((this_force->force[j] == ANY_I2C_BUS) && !is_isa)) &&
(addr == this_force->force[j + 1]) ) { (addr == this_force->force[j + 1]) ) {
dev_dbg(&adapter->dev, "found force parameter for adapter %d, addr %04x\n", adapter_id, addr); dev_dbg(&adapter->dev, "found force parameter for adapter %d, addr %04x\n", adapter_id, addr);
if ((err = found_proc(adapter, addr, this_force->kind))) if ((err = found_proc(adapter, addr, this_force->kind)))
...@@ -75,18 +75,18 @@ int i2c_detect(struct i2c_adapter *adapter, ...@@ -75,18 +75,18 @@ int i2c_detect(struct i2c_adapter *adapter,
/* If this address is in one of the ignores, we can forget about it /* If this address is in one of the ignores, we can forget about it
right now */ right now */
for (i = 0; !found && (address_data->ignore[i] != SENSORS_I2C_END); i += 2) { for (i = 0; !found && (address_data->ignore[i] != I2C_CLIENT_END); i += 2) {
if ( ((adapter_id == address_data->ignore[i]) || if ( ((adapter_id == address_data->ignore[i]) ||
((address_data->ignore[i] == SENSORS_ANY_I2C_BUS) && ((address_data->ignore[i] == ANY_I2C_BUS) &&
!is_isa)) && !is_isa)) &&
(addr == address_data->ignore[i + 1])) { (addr == address_data->ignore[i + 1])) {
dev_dbg(&adapter->dev, "found ignore parameter for adapter %d, addr %04x\n", adapter_id, addr); dev_dbg(&adapter->dev, "found ignore parameter for adapter %d, addr %04x\n", adapter_id, addr);
found = 1; found = 1;
} }
} }
for (i = 0; !found && (address_data->ignore_range[i] != SENSORS_I2C_END); i += 3) { for (i = 0; !found && (address_data->ignore_range[i] != I2C_CLIENT_END); i += 3) {
if ( ((adapter_id == address_data->ignore_range[i]) || if ( ((adapter_id == address_data->ignore_range[i]) ||
((address_data-> ignore_range[i] == SENSORS_ANY_I2C_BUS) & ((address_data-> ignore_range[i] == ANY_I2C_BUS) &
!is_isa)) && !is_isa)) &&
(addr >= address_data->ignore_range[i + 1]) && (addr >= address_data->ignore_range[i + 1]) &&
(addr <= address_data->ignore_range[i + 2])) { (addr <= address_data->ignore_range[i + 2])) {
...@@ -100,13 +100,13 @@ int i2c_detect(struct i2c_adapter *adapter, ...@@ -100,13 +100,13 @@ int i2c_detect(struct i2c_adapter *adapter,
/* Now, we will do a detection, but only if it is in the normal or /* Now, we will do a detection, but only if it is in the normal or
probe entries */ probe entries */
if (is_isa) { if (is_isa) {
for (i = 0; !found && (address_data->normal_isa[i] != SENSORS_ISA_END); i += 1) { for (i = 0; !found && (address_data->normal_isa[i] != I2C_CLIENT_ISA_END); i += 1) {
if (addr == address_data->normal_isa[i]) { if (addr == address_data->normal_isa[i]) {
dev_dbg(&adapter->dev, "found normal isa entry for adapter %d, addr %04x\n", adapter_id, addr); dev_dbg(&adapter->dev, "found normal isa entry for adapter %d, addr %04x\n", adapter_id, addr);
found = 1; found = 1;
} }
} }
for (i = 0; !found && (address_data->normal_isa_range[i] != SENSORS_ISA_END); i += 3) { for (i = 0; !found && (address_data->normal_isa_range[i] != I2C_CLIENT_ISA_END); i += 3) {
if ((addr >= address_data->normal_isa_range[i]) && if ((addr >= address_data->normal_isa_range[i]) &&
(addr <= address_data->normal_isa_range[i + 1]) && (addr <= address_data->normal_isa_range[i + 1]) &&
((addr - address_data->normal_isa_range[i]) % address_data->normal_isa_range[i + 2] == 0)) { ((addr - address_data->normal_isa_range[i]) % address_data->normal_isa_range[i + 2] == 0)) {
...@@ -115,13 +115,13 @@ int i2c_detect(struct i2c_adapter *adapter, ...@@ -115,13 +115,13 @@ int i2c_detect(struct i2c_adapter *adapter,
} }
} }
} else { } else {
for (i = 0; !found && (address_data->normal_i2c[i] != SENSORS_I2C_END); i += 1) { for (i = 0; !found && (address_data->normal_i2c[i] != I2C_CLIENT_END); i += 1) {
if (addr == address_data->normal_i2c[i]) { if (addr == address_data->normal_i2c[i]) {
found = 1; found = 1;
dev_dbg(&adapter->dev, "found normal i2c entry for adapter %d, addr %02x", adapter_id, addr); dev_dbg(&adapter->dev, "found normal i2c entry for adapter %d, addr %02x", adapter_id, addr);
} }
} }
for (i = 0; !found && (address_data->normal_i2c_range[i] != SENSORS_I2C_END); i += 2) { for (i = 0; !found && (address_data->normal_i2c_range[i] != I2C_CLIENT_END); i += 2) {
if ((addr >= address_data->normal_i2c_range[i]) && if ((addr >= address_data->normal_i2c_range[i]) &&
(addr <= address_data->normal_i2c_range[i + 1])) { (addr <= address_data->normal_i2c_range[i + 1])) {
dev_dbg(&adapter->dev, "found normal i2c_range entry for adapter %d, addr %04x\n", adapter_id, addr); dev_dbg(&adapter->dev, "found normal i2c_range entry for adapter %d, addr %04x\n", adapter_id, addr);
...@@ -131,19 +131,19 @@ int i2c_detect(struct i2c_adapter *adapter, ...@@ -131,19 +131,19 @@ int i2c_detect(struct i2c_adapter *adapter,
} }
for (i = 0; for (i = 0;
!found && (address_data->probe[i] != SENSORS_I2C_END); !found && (address_data->probe[i] != I2C_CLIENT_END);
i += 2) { i += 2) {
if (((adapter_id == address_data->probe[i]) || if (((adapter_id == address_data->probe[i]) ||
((address_data-> ((address_data->
probe[i] == SENSORS_ANY_I2C_BUS) & !is_isa)) probe[i] == ANY_I2C_BUS) & !is_isa))
&& (addr == address_data->probe[i + 1])) { && (addr == address_data->probe[i + 1])) {
dev_dbg(&adapter->dev, "found probe parameter for adapter %d, addr %04x\n", adapter_id, addr); dev_dbg(&adapter->dev, "found probe parameter for adapter %d, addr %04x\n", adapter_id, addr);
found = 1; found = 1;
} }
} }
for (i = 0; !found && (address_data->probe_range[i] != SENSORS_I2C_END); i += 3) { for (i = 0; !found && (address_data->probe_range[i] != I2C_CLIENT_END); i += 3) {
if ( ((adapter_id == address_data->probe_range[i]) || if ( ((adapter_id == address_data->probe_range[i]) ||
((address_data->probe_range[i] == SENSORS_ANY_I2C_BUS) & !is_isa)) && ((address_data->probe_range[i] == ANY_I2C_BUS) & !is_isa)) &&
(addr >= address_data->probe_range[i + 1]) && (addr >= address_data->probe_range[i + 1]) &&
(addr <= address_data->probe_range[i + 2])) { (addr <= address_data->probe_range[i + 2])) {
found = 1; found = 1;
......
This diff is collapsed.
...@@ -291,9 +291,11 @@ struct i2c_client_address_data { ...@@ -291,9 +291,11 @@ struct i2c_client_address_data {
/* Internal numbers to terminate lists */ /* Internal numbers to terminate lists */
#define I2C_CLIENT_END 0xfffe #define I2C_CLIENT_END 0xfffe
#define I2C_CLIENT_ISA_END 0xfffefffe
/* The numbers to use to set I2C bus address */ /* The numbers to use to set I2C bus address */
#define ANY_I2C_BUS 0xffff #define ANY_I2C_BUS 0xffff
#define ANY_I2C_ISA_BUS 9191
/* The length of the option lists */ /* The length of the option lists */
#define I2C_CLIENT_MAX_OPTS 48 #define I2C_CLIENT_MAX_OPTS 48
...@@ -556,11 +558,15 @@ union i2c_smbus_data { ...@@ -556,11 +558,15 @@ union i2c_smbus_data {
I2C_CLIENT_MODULE_PARM(force, \ I2C_CLIENT_MODULE_PARM(force, \
"List of adapter,address pairs to boldly assume " \ "List of adapter,address pairs to boldly assume " \
"to be present"); \ "to be present"); \
static struct i2c_client_address_data addr_data = \ static struct i2c_client_address_data addr_data = { \
{normal_i2c, normal_i2c_range, \ .normal_i2c = normal_i2c, \
probe, probe_range, \ .normal_i2c_range = normal_i2c_range, \
ignore, ignore_range, \ .probe = probe, \
force} .probe_range = probe_range, \
.ignore = ignore, \
.ignore_range = ignore_range, \
.force = force, \
}
/* Detect whether we are on the isa bus. If this returns true, all i2c /* Detect whether we are on the isa bus. If this returns true, all i2c
access will fail! */ access will fail! */
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment