80126e53e9
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 |
||
---|---|---|
.. | ||
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_recover_bus.c | ||
iic_recover_bus.h | ||
iic.c | ||
iic.h | ||
iicbb_if.m | ||
iicbb.c | ||
iicbus_if.m | ||
iicbus.c | ||
iicbus.h | ||
iicoc_fdt.c | ||
iicoc_pci.c | ||
iicoc.c | ||
iicoc.h | ||
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 |