@@ -1010,13 +1010,8 @@ err:
static int
at86rf230_start(struct ieee802154_dev *dev)
{
- struct at86rf230_local *lp = dev->priv;
u8 rc;
- rc = at86rf230_write_subreg(lp, SR_RX_SAFE_MODE, 1);
- if (rc)
- return rc;
-
rc = at86rf230_state(dev, STATE_TX_ON);
if (rc)
return rc;
@@ -1300,6 +1295,10 @@ static int at86rf230_hw_init(struct at86rf230_local *lp)
if (rc)
return rc;
+ rc = at86rf230_write_subreg(lp, SR_RX_SAFE_MODE, 1);
+ if (rc)
+ return rc;
+
rc = at86rf230_write_subreg(lp, SR_IRQ_MASK, IRQ_TRX_END);
if (rc)
return rc;
There is no need to set this bit in start callback which could be called more than once. Signed-off-by: Alexander Aring <alex.aring@gmail.com> --- drivers/net/ieee802154/at86rf230.c | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-)