btashton commented on pull request #2674: URL: https://github.com/apache/incubator-nuttx/pull/2674#issuecomment-759633718
> > > NOSTOP is implied in the first message if the NOSTART flag is set on the second one. Drivers are inconsistent about it they set that flag on the first message or leave it 0 but this is what our interface contract says. > > If by NOSTOP you mean repeated start then no, NOSTART just means that the following message(s) are a continuation. There is no need to reconfigure and no need to send a repeated start. It's just a bunch of bytes read or written one after the other. What I am saying is this: ``` * msg[n].flags msg[n+1].flags Behavior * ------------ --------------- ----------------------------------------- * 0 0 Two normal, separate messages with STOP * on msg[n] then START on msg[n+1] * 0* I2C_M_NOSTART Continuation of the same transfer (must * be the same direction). See NOTE below. * NO_STOP 0 No STOP on msg[n]; repeated START on * msg[n+1]. * * * NOTE: NO_STOP is implied in this case and may or not be explicitly * included in the msg[n] flags */ ``` Drivers are not consistent about NO_STOP in the first message (which is fine), but it is implied as is called out in that note and we need to respect that. ---------------------------------------------------------------- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org