1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
|
.\" $OpenBSD: iic.4,v 1.26 2006/01/01 23:33:47 deraadt Exp $
.\"
.\" Copyright (c) 2004 Alexander Yurchenko <grange@openbsd.org>
.\"
.\" Permission to use, copy, modify, and distribute this software for any
.\" purpose with or without fee is hereby granted, provided that the above
.\" copyright notice and this permission notice appear in all copies.
.\"
.\" THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
.\" WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
.\" MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
.\" ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
.\" WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
.\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
.\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
.\"
.Dd May 15, 2004
.Dt IIC 4
.Os
.Sh NAME
.Nm iic
.Nd Inter IC (I2C) bus
.Sh SYNOPSIS
.Cd "iic* at gscsio?"
.Sh DESCRIPTION
.Tn I2C
is a two-wire bus developed by Philips used for connecting
integrated circuits.
It is commonly used for connecting devices such as EEPROMs,
temperature sensors, fan controllers, real-time clocks, tuners,
and other types of integrated circuits.
.Pp
The
.Nm
driver provides a uniform programming interface layer between
.Tn I2C
master controllers and various
.Tn I2C
slave devices.
Each
.Tn I2C
master controller attaches an
.Nm
framework; several slave devices can then be attached to the
.Nm
bus.
.Pp
All
.Tn I2C
slave devices are uniquely identified by the address on the bus.
The master accesses a particular slave device using its address.
Device addresses should be specified in the kernel configuration file
with the
.Cd addr
locator.
.Pp
System Management Bus (SMBus) protocol is also supported by emulating
it with the
.Tn I2C
commands.
.Sh SUPPORTED MASTERS
.Bl -tag -width 10n -offset ind -compact
.It Xr alipm 4
Acer Labs M7101 Power Management
.It Xr amdiic 4
AMD-8111 SMBus controller
.It Xr gscsio 4
National Semiconductor Geode SC1100 Super I/O
.It Xr ichiic 4
Intel ICH SMBus controllers
.It Xr ki2c 4
Apple Kauai i2c controller
.It Xr pi2c 4
Apple via-pmu i2c controller
.It Xr fcu 4
Apple FCU fan controller
.It Xr piixpm 4
Intel PIIX and compatible SMBus controllers
.It Xr viapm 4
VIA VT8233/8235/8237 Bus Control and Power Management
.El
.Sh SUPPORTED SLAVES
.Bl -tag -width 10n -offset ind -compact
.It Xr adc 4
Analog Devices AD7416/AD7417/7418 temperature sensor
.It Xr admcts 4
Analog Devices ADM1026 temperature and voltage sensor
.It Xr admlc 4
Analog Devices ADM1024 temperature and voltage sensor
.It Xr admtemp 4
Analog Devices ADM1021 temperature sensor
.It Xr admtm 4
Analog Devices ADM1025 temperature and voltage sensor
.It Xr admtmp 4
Analog Devices ADM1030 temperature sensor
.It Xr admtt 4
Analog Devices ADM1031 temperature sensor
.It Xr adt 4
Analog Devices ADT7460 environmental sensor
.It Xr asbtm 4
Asus ASB100 temperature sensor
.It Xr fcu 4
Apple fcu fan controller
.It Xr lmenv 4
National Semiconductor LM87 temperature sensor
.It Xr lmtemp 4
National Semiconductor LM75/LM77 temperature sensor
.It Xr maxds 4
Maxim DS1631 temperature sensor
.It Xr maxtmp 4
Maxim MAX6642/MAX6690 temperature sensor
.It Xr pcagpio 4
Philips PCA955[467] GPIO
.It Xr tsl 4
TAOS TSL2560/61 light-to-digital converter
.El
.Sh SEE ALSO
.Xr intro 4 ,
.Xr iic 9
.Sh HISTORY
The
.Tn I2C
framework first appeared in
.Nx 2.0 .
.Ox
support was added in
.Ox 3.6 .
.Sh AUTHORS
The
.Tn I2C
framework was written by
Steve C. Woodford and Jason R. Thorpe for
.Nx
and then ported to
.Ox
by
.An Alexander Yurchenko Aq grange@openbsd.org .
|