>>>>> "Stefan" == Stefan Roese <sr@xxxxxxx> writes: Hi, >> It is close to 10 years ago since I last had access to any boards with >> the ocores controller, but the logic in ocores_process() indicates that >> the controller would generate another interrupt once the stop condition >> has been sent: >> >> if ((i2c->state == STATE_DONE) || (i2c->state == STATE_ERROR)) { >> /* stop has been sent */ >> oc_setreg(i2c, OCI2C_CMD, OCI2C_CMD_IACK); >> wake_up(&i2c->wait); >> return; >> } >> >> Do you not see this interrupt? > No. It took me quite some time last week, to notice this misbehavior > in this I2C driver. As the client (Goodix I2C touchscreen) always > returned only after more than 1 second from reading one I2C frame. Funky. On what kind of platform / what VHDL source version is this? The driver has now existed for more than 10 years and has had contributions from a number of people, but this is the first time I hear about this missing interrupt. -- Bye, Peter Korsgaard -- To unsubscribe from this list: send the line "unsubscribe linux-i2c" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html