From: Michael Hennerich <michael.hennerich@analog.com>
Date: Mon, 25 Jun 2018 13:49:51 +0000 (+0300)
Subject: net: ieee802154: adf7242: Fix erroneous RX enable
X-Git-Tag: v4.18-rc6~28^2~53^2~1
X-Git-Url: https://www.infradead.org/git/?a=commitdiff_plain;h=36d26d6b6208399070a9d7993534fef9fc26b1ba;p=users%2Fdwmw2%2Flinux.git

net: ieee802154: adf7242: Fix erroneous RX enable

Only enable RX mode if the netdev is opened.

Signed-off-by: Michael Hennerich <michael.hennerich@analog.com>
Signed-off-by: Alexandru Ardelean <alexandru.ardelean@analog.com>
Signed-off-by: Stefan Schmidt <stefan@datenfreihafen.org>
---

diff --git a/drivers/net/ieee802154/adf7242.c b/drivers/net/ieee802154/adf7242.c
index 64f1b1e77bc0f..c3da43191f70d 100644
--- a/drivers/net/ieee802154/adf7242.c
+++ b/drivers/net/ieee802154/adf7242.c
@@ -719,7 +719,10 @@ static int adf7242_channel(struct ieee802154_hw *hw, u8 page, u8 channel)
 	adf7242_write_reg(lp, REG_CH_FREQ1, freq >> 8);
 	adf7242_write_reg(lp, REG_CH_FREQ2, freq >> 16);
 
-	return adf7242_cmd(lp, CMD_RC_RX);
+	if (test_bit(FLAG_START, &lp->flags))
+		return adf7242_cmd_rx(lp);
+	else
+		return adf7242_cmd(lp, CMD_RC_PHY_RDY);
 }
 
 static int adf7242_set_hw_addr_filt(struct ieee802154_hw *hw,