Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
L
linux
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
Kirill Smelkov
linux
Commits
36a113db
Commit
36a113db
authored
Apr 23, 2003
by
Greg Kroah-Hartman
Committed by
Christoph Hellwig
Apr 23, 2003
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
[PATCH] i2c: remove a lot of dupliated macros from i2c-sensor.h and use the current values in i2c.h
parent
a10ce1d4
Changes
8
Expand all
Show whitespace changes
Inline
Side-by-side
Showing
8 changed files
with
86 additions
and
119 deletions
+86
-119
drivers/i2c/chips/adm1021.c
drivers/i2c/chips/adm1021.c
+4
-4
drivers/i2c/chips/it87.c
drivers/i2c/chips/it87.c
+4
-4
drivers/i2c/chips/lm75.c
drivers/i2c/chips/lm75.c
+4
-4
drivers/i2c/chips/via686a.c
drivers/i2c/chips/via686a.c
+4
-4
drivers/i2c/chips/w83781d.c
drivers/i2c/chips/w83781d.c
+5
-5
drivers/i2c/i2c-sensor.c
drivers/i2c/i2c-sensor.c
+15
-15
include/linux/i2c-sensor.h
include/linux/i2c-sensor.h
+37
-76
include/linux/i2c.h
include/linux/i2c.h
+13
-7
No files found.
drivers/i2c/chips/adm1021.c
View file @
36a113db
...
...
@@ -39,12 +39,12 @@
#define ADM1021_ALARM_RTEMP_NA 0x04
/* 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
,
0x4c
,
0x4e
,
SENSORS_I2C
_END
0x4c
,
0x4e
,
I2C_CLIENT
_END
};
static
unsigned
int
normal_isa
[]
=
{
SENSORS
_ISA_END
};
static
unsigned
int
normal_isa_range
[]
=
{
SENSORS
_ISA_END
};
static
unsigned
int
normal_isa
[]
=
{
I2C_CLIENT
_ISA_END
};
static
unsigned
int
normal_isa_range
[]
=
{
I2C_CLIENT
_ISA_END
};
/* Insmod parameters */
SENSORS_INSMOD_8
(
adm1021
,
adm1023
,
max1617
,
max1617a
,
thmc10
,
lm84
,
gl523sm
,
mc1066
);
...
...
drivers/i2c/chips/it87.c
View file @
36a113db
...
...
@@ -40,10 +40,10 @@
/* Addresses to scan */
static
unsigned
short
normal_i2c
[]
=
{
SENSORS_I2C
_END
};
static
unsigned
short
normal_i2c_range
[]
=
{
0x20
,
0x2f
,
SENSORS_I2C
_END
};
static
unsigned
int
normal_isa
[]
=
{
0x0290
,
SENSORS
_ISA_END
};
static
unsigned
int
normal_isa_range
[]
=
{
SENSORS
_ISA_END
};
static
unsigned
short
normal_i2c
[]
=
{
I2C_CLIENT
_END
};
static
unsigned
short
normal_i2c_range
[]
=
{
0x20
,
0x2f
,
I2C_CLIENT
_END
};
static
unsigned
int
normal_isa
[]
=
{
0x0290
,
I2C_CLIENT
_ISA_END
};
static
unsigned
int
normal_isa_range
[]
=
{
I2C_CLIENT
_ISA_END
};
/* Insmod parameters */
SENSORS_INSMOD_4
(
it87
,
it8705
,
it8712
,
sis950
);
...
...
drivers/i2c/chips/lm75.c
View file @
36a113db
...
...
@@ -28,10 +28,10 @@
/* Addresses to scan */
static
unsigned
short
normal_i2c
[]
=
{
SENSORS_I2C
_END
};
static
unsigned
short
normal_i2c_range
[]
=
{
0x48
,
0x4f
,
SENSORS_I2C
_END
};
static
unsigned
int
normal_isa
[]
=
{
SENSORS
_ISA_END
};
static
unsigned
int
normal_isa_range
[]
=
{
SENSORS
_ISA_END
};
static
unsigned
short
normal_i2c
[]
=
{
I2C_CLIENT
_END
};
static
unsigned
short
normal_i2c_range
[]
=
{
0x48
,
0x4f
,
I2C_CLIENT
_END
};
static
unsigned
int
normal_isa
[]
=
{
I2C_CLIENT
_ISA_END
};
static
unsigned
int
normal_isa_range
[]
=
{
I2C_CLIENT
_ISA_END
};
/* Insmod parameters */
SENSORS_INSMOD_1
(
lm75
);
...
...
drivers/i2c/chips/via686a.c
View file @
36a113db
...
...
@@ -51,10 +51,10 @@ MODULE_PARM_DESC(force_addr,
/* Addresses to scan.
Note that we can't determine the ISA address until we have initialized
our module */
static
unsigned
short
normal_i2c
[]
=
{
SENSORS_I2C
_END
};
static
unsigned
short
normal_i2c_range
[]
=
{
SENSORS_I2C
_END
};
static
unsigned
int
normal_isa
[]
=
{
0x0000
,
SENSORS
_ISA_END
};
static
unsigned
int
normal_isa_range
[]
=
{
SENSORS
_ISA_END
};
static
unsigned
short
normal_i2c
[]
=
{
I2C_CLIENT
_END
};
static
unsigned
short
normal_i2c_range
[]
=
{
I2C_CLIENT
_END
};
static
unsigned
int
normal_isa
[]
=
{
0x0000
,
I2C_CLIENT
_ISA_END
};
static
unsigned
int
normal_isa_range
[]
=
{
I2C_CLIENT
_ISA_END
};
/* Insmod parameters */
SENSORS_INSMOD_1
(
via686a
);
...
...
drivers/i2c/chips/w83781d.c
View file @
36a113db
...
...
@@ -46,14 +46,14 @@
#define W83781D_RT 1
/* Addresses to scan */
static
unsigned
short
normal_i2c
[]
=
{
SENSORS_I2C
_END
};
static
unsigned
short
normal_i2c_range
[]
=
{
0x20
,
0x2f
,
SENSORS_I2C
_END
};
static
unsigned
int
normal_isa
[]
=
{
0x0290
,
SENSORS
_ISA_END
};
static
unsigned
int
normal_isa_range
[]
=
{
SENSORS
_ISA_END
};
static
unsigned
short
normal_i2c
[]
=
{
I2C_CLIENT
_END
};
static
unsigned
short
normal_i2c_range
[]
=
{
0x20
,
0x2f
,
I2C_CLIENT
_END
};
static
unsigned
int
normal_isa
[]
=
{
0x0290
,
I2C_CLIENT
_ISA_END
};
static
unsigned
int
normal_isa_range
[]
=
{
I2C_CLIENT
_ISA_END
};
/* Insmod parameters */
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}"
);
static
int
init
=
1
;
...
...
drivers/i2c/i2c-sensor.c
View file @
36a113db
...
...
@@ -42,7 +42,7 @@ int i2c_detect(struct i2c_adapter *adapter,
struct
i2c_force_data
*
this_force
;
int
is_isa
=
i2c_is_isa_adapter
(
adapter
);
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 */
if
((
!
is_isa
)
&&
...
...
@@ -59,9 +59,9 @@ int i2c_detect(struct i2c_adapter *adapter,
detection at all */
found
=
0
;
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
])
||
((
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
])
)
{
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
)))
...
...
@@ -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
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
])
||
((
address_data
->
ignore
[
i
]
==
SENSORS_
ANY_I2C_BUS
)
&&
((
address_data
->
ignore
[
i
]
==
ANY_I2C_BUS
)
&&
!
is_isa
))
&&
(
addr
==
address_data
->
ignore
[
i
+
1
]))
{
dev_dbg
(
&
adapter
->
dev
,
"found ignore parameter for adapter %d, addr %04x
\n
"
,
adapter_id
,
addr
);
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
])
||
((
address_data
->
ignore_range
[
i
]
==
SENSORS_
ANY_I2C_BUS
)
&
((
address_data
->
ignore_range
[
i
]
==
ANY_I2C_BUS
)
&
!
is_isa
))
&&
(
addr
>=
address_data
->
ignore_range
[
i
+
1
])
&&
(
addr
<=
address_data
->
ignore_range
[
i
+
2
]))
{
...
...
@@ -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
probe entries */
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
])
{
dev_dbg
(
&
adapter
->
dev
,
"found normal isa entry for adapter %d, addr %04x
\n
"
,
adapter_id
,
addr
);
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
])
&&
(
addr
<=
address_data
->
normal_isa_range
[
i
+
1
])
&&
((
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,
}
}
}
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
])
{
found
=
1
;
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
])
&&
(
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
);
...
...
@@ -131,19 +131,19 @@ int i2c_detect(struct i2c_adapter *adapter,
}
for
(
i
=
0
;
!
found
&&
(
address_data
->
probe
[
i
]
!=
SENSORS_I2C
_END
);
!
found
&&
(
address_data
->
probe
[
i
]
!=
I2C_CLIENT
_END
);
i
+=
2
)
{
if
(((
adapter_id
==
address_data
->
probe
[
i
])
||
((
address_data
->
probe
[
i
]
==
SENSORS_
ANY_I2C_BUS
)
&
!
is_isa
))
probe
[
i
]
==
ANY_I2C_BUS
)
&
!
is_isa
))
&&
(
addr
==
address_data
->
probe
[
i
+
1
]))
{
dev_dbg
(
&
adapter
->
dev
,
"found probe parameter for adapter %d, addr %04x
\n
"
,
adapter_id
,
addr
);
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
])
||
((
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
+
2
]))
{
found
=
1
;
...
...
include/linux/i2c-sensor.h
View file @
36a113db
This diff is collapsed.
Click to expand it.
include/linux/i2c.h
View file @
36a113db
...
...
@@ -291,9 +291,11 @@ struct i2c_client_address_data {
/* Internal numbers to terminate lists */
#define I2C_CLIENT_END 0xfffe
#define I2C_CLIENT_ISA_END 0xfffefffe
/* The numbers to use to set I2C bus address */
#define ANY_I2C_BUS 0xffff
#define ANY_I2C_ISA_BUS 9191
/* The length of the option lists */
#define I2C_CLIENT_MAX_OPTS 48
...
...
@@ -556,11 +558,15 @@ union i2c_smbus_data {
I2C_CLIENT_MODULE_PARM(force, \
"List of adapter,address pairs to boldly assume " \
"to be present"); \
static struct i2c_client_address_data addr_data = \
{normal_i2c, normal_i2c_range, \
probe, probe_range, \
ignore, ignore_range, \
force}
static struct i2c_client_address_data addr_data = { \
.normal_i2c = normal_i2c, \
.normal_i2c_range = normal_i2c_range, \
.probe = probe, \
.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
access will fail! */
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment