FreeBSD manual
download PDF document: iic_gpiomux.4.pdf
IIC_GPIOMUX(4) FreeBSD Kernel Interfaces Manual IIC_GPIOMUX(4)
NAME
iic_gpiomux - driver for I2C mux hardware controlled via GPIO
SYNOPSIS
To compile this driver into the kernel, place the following line in your
kernel configuration file:
device iic_gpiomux
Alternatively, to load the driver as a module at boot time, place the
following line in loader.conf(5):
iic_gpiomux_load="YES"
DESCRIPTION
The iic_gpiomux driver supports any type of I2C bus multiplexer (mux)
hardware that is controlled by manipulating the state of one or more GPIO
pins. It automatically connects an upstream I2C bus to one of the
downstream buses as needed when slave devices on the downstream buses
initiate I/O. More information on the automatic switching behavior is
available in iicmux(4).
FDT CONFIGURATION
On an fdt(4) based system, an iic_gpiomux device node may be defined as a
child node of any arbitrary bus in the FDT data. The i2c-parent property
indicates the connection to the upstream I2C bus. The children of the
iic_gpiomux node are additional i2c buses, which will have their own i2c
slave devices described in their child nodes.
The iic_gpiomux driver conforms to the standard i2c/i2c-mux-gpio.txt
bindings document.
SEE ALSO
iicbus(4), iicmux(4)
HISTORY
The iic_gpiomux driver first appeared in FreeBSD 13.0.
FreeBSD 14.0-RELEASE-p11 January 1, 2020 FreeBSD 14.0-RELEASE-p11