at86rf230: remove unnecessary tx state change

All supported transceivers can do a valid state change from TRX_OFF to
AACK_ON. This patch removes the state change chain from TRX_OFF ->
TX_ON -> AACK_ON instead we doing a directly state change from TRX_OFF
to AACK_ON.

Signed-off-by: Alexander Aring <alex.aring@gmail.com>
Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
This commit is contained in:
Alexander Aring 2015-04-30 17:45:01 +02:00 committed by Marcel Holtmann
parent 3b951ca7d2
commit 2f8cdd9509

View file

@ -780,16 +780,6 @@ at86rf230_tx_on(void *context)
at86rf230_tx_complete, true); at86rf230_tx_complete, true);
} }
static void
at86rf230_tx_trac_error(void *context)
{
struct at86rf230_state_change *ctx = context;
struct at86rf230_local *lp = ctx->lp;
at86rf230_async_state_change(lp, ctx, STATE_TX_ON,
at86rf230_tx_on, true);
}
static void static void
at86rf230_tx_trac_check(void *context) at86rf230_tx_trac_check(void *context)
{ {
@ -799,12 +789,12 @@ at86rf230_tx_trac_check(void *context)
const u8 trac = (buf[1] & 0xe0) >> 5; const u8 trac = (buf[1] & 0xe0) >> 5;
/* If trac status is different than zero we need to do a state change /* If trac status is different than zero we need to do a state change
* to STATE_FORCE_TRX_OFF then STATE_TX_ON to recover the transceiver * to STATE_FORCE_TRX_OFF then STATE_RX_AACK_ON to recover the
* state to TX_ON. * transceiver.
*/ */
if (trac) if (trac)
at86rf230_async_state_change(lp, ctx, STATE_FORCE_TRX_OFF, at86rf230_async_state_change(lp, ctx, STATE_FORCE_TRX_OFF,
at86rf230_tx_trac_error, true); at86rf230_tx_on, true);
else else
at86rf230_tx_on(context); at86rf230_tx_on(context);
} }