freebsd-dev/sys/dev/iicbus
Ian Lepore 930b312319 Add iic_recover_bus(), a helper function that can be used by any i2c driver
which is able to manipulate the clock and data lines directly.

When an i2c bus is hung by a slave device stuck in the middle of a
transaction that didn't complete properly, this function manipulates the
clock and data lines in a sequence known to reliably reset slave devices.
The most common cause of a hung i2c bus is a system reboot in the middle of
an i2c transfer (so it doesnt' happen often, but now there is a way other
than power cycling to recover from it).
2017-06-29 01:50:58 +00:00
..
twsi Always ignore the START and STOP bits whenever the control register is 2017-06-20 18:38:51 +00:00
ad7417.c
ad7418.c
adm1030.c
adt746x.c Use OF_prop_free instead of direct call to free(9) 2016-05-14 20:06:38 +00:00
ds133x.c sys/dev: minor spelling fixes. 2016-05-03 03:41:25 +00:00
ds1307.c Fix ds1307 probing 2016-09-24 05:27:12 +00:00
ds1307reg.h
ds1374.c
ds1631.c
ds1672.c
ds1775.c
ds3231.c
ds3231reg.h Fix the deciKelvin to Celsius conversion in kernel. 2016-05-22 13:58:32 +00:00
icee.c
if_ic.c sys/dev: Replace zero with NULL for pointers. 2017-02-20 03:43:12 +00:00
iic_recover_bus.c Add iic_recover_bus(), a helper function that can be used by any i2c driver 2017-06-29 01:50:58 +00:00
iic_recover_bus.h Add iic_recover_bus(), a helper function that can be used by any i2c driver 2017-06-29 01:50:58 +00:00
iic.c iic_rdwr_data->nmsgs is uint32_t, so limit the allowable number of messages to prevent memory exhaustion and short allocations on 32-bit systems. Since iicrdwr is intended to be a workalike of a Linux i2c-dev call, use the same limit of 42 that Linux uses. 2016-05-20 03:03:04 +00:00
iic.h iic_rdwr_data->nmsgs is uint32_t, so limit the allowable number of messages to prevent memory exhaustion and short allocations on 32-bit systems. Since iicrdwr is intended to be a workalike of a Linux i2c-dev call, use the same limit of 42 that Linux uses. 2016-05-20 03:03:04 +00:00
iicbb_if.m Remove a couple of extra blank lines. 2016-05-22 04:09:05 +00:00
iicbb.c
iicbus_if.m
iicbus.c add iic interface to ig4 driver, move isl and cyapa to iicbus 2016-10-30 12:15:33 +00:00
iicbus.h
iicoc.c
iicoc.h
iiconf.c If an i2c transfer ends due to error, issue a stop on the bus even if the 2017-06-29 00:29:15 +00:00
iiconf.h sys/dev: minor spelling fixes. 2016-05-03 03:41:25 +00:00
iicsmb.c iicsmb: SMB_MAXBLOCKSIZE can be used again 2016-11-11 15:11:54 +00:00
lm75.c Fix the deciKelvin to Celsius conversion in kernel. 2016-05-22 13:58:32 +00:00
max6690.c
ofw_iicbus.c Make ofw_iicbus attach to twsi I2C controllers. 2017-06-20 18:25:27 +00:00
pcf8563.c
pcf8563reg.h
s35390a.c
sy8106a.c Add driver for Silergy Corp. SY8106A buck regulator. 2016-09-05 13:39:54 +00:00