[riot-commits] [RIOT-OS/RIOT] 46b139: drivers/at86rf2xx: improve precondition checks on ...

Martine Lenders authmillenon at gmail.com
Sat Nov 5 10:34:52 CET 2016


  Branch: refs/heads/2016.10-branch
  Home:   https://github.com/RIOT-OS/RIOT
  Commit: 46b139698ab1654b9c41710c6a74e495c02afbfd
      https://github.com/RIOT-OS/RIOT/commit/46b139698ab1654b9c41710c6a74e495c02afbfd
  Author: Thomas Eichinger <thomas.eichinger1 at gmail.com>
  Date:   2016-11-04 (Fri, 04 Nov 2016)

  Changed paths:
    M drivers/at86rf2xx/at86rf2xx_getset.c

  Log Message:
  -----------
  drivers/at86rf2xx: improve precondition checks on state transition

The rational behind this change is the following:
If the transceiver is in any *_BUSY state when `at86rf2xx_set_state()`
gets called this would bypass the `(state == old_state)` check and
unneeded state transitions could be triggered.


  Commit: 711859df3552b2e34544e7b9c7b1cafa8fc6861e
      https://github.com/RIOT-OS/RIOT/commit/711859df3552b2e34544e7b9c7b1cafa8fc6861e
  Author: Thomas Eichinger <thomas.eichinger1 at gmail.com>
  Date:   2016-11-04 (Fri, 04 Nov 2016)

  Changed paths:
    M drivers/at86rf2xx/at86rf2xx_getset.c

  Log Message:
  -----------
  drivers/at86rf2xx: prevent a possible race condition after state change

It was pointed out that after a state change to RX_AACK_ON reading back
the state to confirm the transition can fail due to an imidiate change
into BUSY_RX_AACK between the successful change on the transceiver and
querying the state.
For this we exclude the readback of the state for transitions to
RX_AACK_ON.


  Commit: 66dfb8d4be6c60c3e7e6951091240d96913fc8d9
      https://github.com/RIOT-OS/RIOT/commit/66dfb8d4be6c60c3e7e6951091240d96913fc8d9
  Author: Martine Lenders <authmillenon at gmail.com>
  Date:   2016-11-05 (Sat, 05 Nov 2016)

  Changed paths:
    M drivers/at86rf2xx/at86rf2xx_getset.c

  Log Message:
  -----------
  Merge pull request #6062 from thomaseichinger/pr/rf2xx_better_state_check

backport: drivers/at86rf2xx: improve precondition checks on state transition


Compare: https://github.com/RIOT-OS/RIOT/compare/0bdecede2c30...66dfb8d4be6c


More information about the commits mailing list