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