Messages in this thread | | | Date | Mon, 29 Nov 2021 13:52:30 +0100 | From | Wolfram Sang <> | Subject | Re: [PATCH 2/4] i2c: stm32f7: recover the bus on access timeout |
| |
Hi Alain,
> > > + stm32f7_i2c_wait_free_bus(i2c_dev); > > > > This does only a controller reset, not a bus recovery with 9 toggling > > pulses, or? > > indeed. I might better rework this and at the same time introduce the > bus recovery mechanism via the bus recovery callback in this driver. > Please don't merge this patch and I will rework that.
Wait a sec. Resetting a controller at the end of a failed transfer might make sense if the controller is otherwise in an confused state.
Full bus recovery (9 pulses) should be done at the beginning of a transfer when SDA is low, though.
So, I'd actually suggest to apply this patch and add full bus recovery based on SDA low at the beginning of a transfer seperately.
What do you think?
All the best,
Wolfram
[unhandled content-type:application/pgp-signature] | |