opnsense-src/sys/dev/iicbus
Emmanuel Vadot b74b94d2a1 twsi: Rework how we handle the i2c messages
We use to handle each message separately in i2c_transfer but that cannot
work with message with NOSTOP as it confuses the controller that we disable
the interrupts and start a new message.
Handle every message in the interrupt handler and fire a new start condition
if the previous message have NOSTOP, the controller understand this as a
repeated start.
This fixes booting on Allwinner A10/A20 platform where before the i2c controller
used to write 0 to the PMIC register that control the regulators as it though that
this was the continuation of the write message.

Tested on:   A20 BananaPi, Cubieboard 1 (kevans)
Reported by:	kevans
MFC after:	1 month
2020-01-10 18:52:14 +00:00
..
mux
twsi
ad7417.c
ad7418.c
adm1030.c
ads111x.c
adt746x.c
ds13rtc.c
ds1307.c
ds1307reg.h
ds1631.c
ds1672.c
ds1775.c
ds3231.c
ds3231reg.h
icee.c
if_ic.c
iic.c
iic.h
iic_recover_bus.c
iic_recover_bus.h
iicbb.c
iicbb_if.m
iicbus.c
iicbus.h
iicbus_if.m
iicoc.c
iicoc.h
iicoc_fdt.c
iicoc_pci.c
iiconf.c
iiconf.h
iicsmb.c
isl12xx.c
lm75.c
max6690.c
nxprtc.c
ofw_iicbus.c
rtc8583.c
s35390a.c
sy8106a.c
syr827.c