29.5.6.1 Normal Clock Stretching

Following an acknowledged read request, the client hardware will hold the SCL line low by clearing the CKP bit. This allows the client time to update SSPxBUF with data to transfer to the host. If the SEN bit is set, the client hardware will always stretch the clock after the ACK sequence. Once the client is ready, CKP is set by software and communication resumes.

Important:
  1. The BF bit has no effect on whether or not the clock will be stretched. This is different than previous versions of the module that would not stretch the clock and clear CKP, if SSPxBUF was read before the ninth falling edge of SCL.
  2. Previous versions of the module did not stretch the clock for a transmission if SSPxBUF was loaded before the ninth falling edge of SCL. It is now always cleared for read requests.