Lines Matching +full:i2c +full:- +full:mux +full:- +full:idle +full:- +full:disconnect
1 /*-
2 * SPDX-License-Identifier: BSD-2-Clause
47 {"ltc4305", "LTC4305 I2C Mux", 2},
48 {"ltc4306", "LTC4306 I2C Mux", 4},
50 #define CHIP_NONE (-1)
67 #include <dev/iicbus/mux/iicmux.h>
70 struct iicmux_softc mux; member
75 * The datasheet doesn't name the registers, it calls them control register 0-3.
92 * the fdt data has the idle_disconnect property we idle the bus by in ltc430x_bus_select()
98 if (sc->idle_disconnect) in ltc430x_bus_select()
103 busbits = 1u << (7 - busidx); in ltc430x_bus_select()
112 rd->flags | IIC_RECURSIVE)); in ltc430x_bus_select()
119 return (ofw_bus_search_compatible(dev, compat_data)->ocd_data); in ltc430x_find_chiptype()
168 * Check for the idle-disconnect and ctlreg2 options, first in FDT data, in ltc430x_attach()
175 sc->idle_disconnect = OF_hasprop(node, "i2c-mux-idle-disconnect"); in ltc430x_attach()
184 sc->idle_disconnect = val; in ltc430x_attach()
203 /* If configured for idle-disconnect, ensure we start disconnected. */ in ltc430x_attach()
204 if (sc->idle_disconnect) { in ltc430x_attach()