IIC(4) | Kernel Interfaces Manual | IIC(4)

# NAME

iic — Inter IC (I2C) bus

# SYNOPSIS

iic* at alipm? # sparc64
iic* at acpismbus? # amd64 i386
iic* at amdpm? # amd64 i386
iic* at armadillo9iic? # evbarm
iic0 at at91twi? # evbarm
iic0 at ausmbus0 # evbmips
iic0 at cuda0 # macppc
iic0 at gpiic? # evbppc
iic* at gpioiic? # amd64 i386
iic* at gtiic? # evbppc
iic* at gxiic? # evbarm
iic* at ichsmb? # amd64 i386
iic0 at iociic0 # acorn26
iic0 at iomdiic? # acorn32
iic0 at iopiic? # evbarm iyonix
iic* at ki2c? # macppc
iic* at nfsmb? # amd64 i386
iic* at ociic? # sandpoint
iic* at piixpm? # amd64 i386
iic0 at slugiic0 # evbarm
iic* at viapcib? # i386

# DESCRIPTION

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.

The iic driver provides a uniform programming interface layer between I2C master controllers and various I2C slave devices. Each I2C master controller attaches an iic framework; several slave devices can then be attached to the iic bus.

All I2C slave devices are uniquely identified by the address on the bus. The master accesses a particular slave device using its address.

System Management Bus (SMBus) protocol is also supported by emulating it with the I2C commands.

# SUPPORTED MASTERS

A wide list of I2C masters are supported, among them are:

alipm(4)
  Acer Labs M7101 SMBus controller
acpismbus(4)
  ACPI SMBus Control Method Interface
amdpm(4)
  AMD768 Power Management Controller and AMD8111 System Management Controller
armadillo9iic(4)
at91twi(4)
ausmbus(4)
cuda(4)
  support for CUDA microcontrollers found in many Power Macintosh and and compatible computers
gpiic(4)
gtiic(4)
gxiic(4)
ichsmb(4)
  Intel ICH SMBus controller
iociic(4)
iomdiic(4)
iopiic(4)
ki2c(4)
gpioiic(4)
  GPIO bit-banging
nfsmb(4)
  NVIDIA nForce 2/3/4 SMBus controller and SMBus driver
ociic(4)
piixpm(4)
  Intel PIIX and compatible Power Management controller
slugiic(4)
viapcib(4)

# SUPPORTED SLAVES

A wide list of slaves are supported, among them:

dbcool(4)
  dbCool(tm) family of environmental monitors and fan controllers
rs5c372rtc(4)
  RICOH RS5C372A and RS5C372B real-time clock
sgsmix(4)
  driver for SGS 7433 Basic Audio Processor found in some Apple machines
spdmem(4)
  Generic Memory Module Serial Presence Detect

# SEE ALSO

dtviic(4), intro(4), i2cscan(8), iic(9)

# HISTORY

The I2C framework first appeared in NetBSD 2.0. OpenBSD support was added in OpenBSD 3.6. This manpage first appeared in NetBSD 6.0, it was ported from OpenBSD.

# AUTHORS

The I2C framework was written by Steve C. Woodford and Jason R. Thorpe for NetBSD and then ported to OpenBSD by Alexander Yurchenko <grange@openbsd.org>.

October 15, 2011 | NetBSD 6.0