Skip to content
Snippets Groups Projects
  1. Oct 06, 2015
  2. Oct 05, 2015
  3. Sep 29, 2015
  4. Sep 24, 2015
  5. Sep 23, 2015
  6. Sep 10, 2015
  7. Sep 04, 2015
  8. Aug 25, 2015
  9. Aug 24, 2015
  10. Aug 19, 2015
  11. Aug 14, 2015
  12. Aug 13, 2015
  13. Aug 11, 2015
  14. Aug 10, 2015
  15. Jul 25, 2015
    • Erin Tomson's avatar
      Fix two bugs that can cause deadlock conditions when i2c bus errors occur. · 0bfeec7f
      Erin Tomson authored
      The first occurs when starting a read transaction from a slave that doesn't respond. The code would wait until the SB (slave on bus) bit is set in the INTFLAGS register, but when a nack occurs that never happens so we're stuck in an infinite loop. The fix is to also look for the MB flag to be set. If it is, issue a stop condition and return.
      
      The second happens when a bus error (ie, an illegal stop condition) occurs while sending data as a master. In that case we are waiting for the MB (master on bus) flag to be set. When a bus error occurs that never happens, so again we end up in an infinite loop. The fix here is to also look for the BUSERR flag to be set. If it is, return an error condition.
      0bfeec7f
  16. Jul 23, 2015
  17. Jul 21, 2015
  18. Jul 18, 2015
Loading