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


Reply via email to