FreeBSD/src e3c42ad (r354973) — sys/dev/iicbus iiconf.c
Rewrite iicdev_writeto() to use a single buffer and a single iic_msg, rather than effectively doing scatter/gather IO with a pair of iic_msgs that direct the controller to do a single transfer with no bus STOP/START between the two buffers. It turns out we have multiple i2c hardware drivers that don't honor the NOSTOP and NOSTART flags; sometimes they just try to do the transfers anyway, creating confusing failures or leading to corrupted data.
Delta | File | |
---|---|---|
+37 | -15 | sys/dev/iicbus/iiconf.c |
+37 | -15 | 1 files |