From c91f0734f236a1faee6825a288f68a631ef1bc46 Mon Sep 17 00:00:00 2001
From: Martine Lenders <m.lenders@fu-berlin.de>
Date: Thu, 30 Nov 2017 17:37:27 +0100
Subject: [PATCH] at86rf2xx: revert regression introduced in #7276

---
 drivers/at86rf2xx/at86rf2xx_getset.c | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/drivers/at86rf2xx/at86rf2xx_getset.c b/drivers/at86rf2xx/at86rf2xx_getset.c
index cb3e14f0b2..c26fa6e261 100644
--- a/drivers/at86rf2xx/at86rf2xx_getset.c
+++ b/drivers/at86rf2xx/at86rf2xx_getset.c
@@ -435,7 +435,10 @@ uint8_t at86rf2xx_set_state(at86rf2xx_t *dev, uint8_t state)
     }
     else if (state != old_state) {
         /* we need to go via PLL_ON if we are moving between RX_AACK_ON <-> TX_ARET_ON */
-        if ((old_state | state) == (AT86RF2XX_STATE_RX_AACK_ON | AT86RF2XX_STATE_TX_ARET_ON)) {
+        if ((old_state == AT86RF2XX_STATE_RX_AACK_ON &&
+             state == AT86RF2XX_STATE_TX_ARET_ON) ||
+            (old_state == AT86RF2XX_STATE_TX_ARET_ON &&
+             state == AT86RF2XX_STATE_RX_AACK_ON)) {
             _set_state(dev, AT86RF2XX_STATE_PLL_ON, AT86RF2XX_STATE_PLL_ON);
         }
         /* check if we need to wake up from sleep mode */
-- 
GitLab