This comment regarding smtpmic seems to have been ignored. jmc said the delay helped. I can understand why it might. It at least tries to force the register write operation to *actually happen*.
The smtiic_wait_state() approach on the other hand, skips doing that register write. Doing the register operation when it is not ready is bad. But skipping it is probably also bad. > I guess smtiic_wait_state() will spin for 1000 * delay(10), > so it mostly wins. > > When it fails, it returns ETIMEDOUT. Converting that to EIO > manually is a bit strange, but shrug it happens everywhere else > in this driver. > > Do any of the other smtiic functions also need this smtiic_wait_state? > > Is smtiic_write_byte() doing this correctly? >
