atusb: don't change csma settings while set channel
authorAlexander Aring <aar@pengutronix.de>
Wed, 6 Jul 2016 21:32:29 +0000 (23:32 +0200)
committerMarcel Holtmann <marcel@holtmann.org>
Fri, 8 Jul 2016 11:23:12 +0000 (13:23 +0200)
This patch fixes the behaviour to not overwrite csma settings when
set channel afterwards.

Cc: Stefan Schmidt <stefan@osg.samsung.com>
Acked-by: Stefan Schmidt <stefan@osg.samsung.com>
Signed-off-by: Alexander Aring <aar@pengutronix.de>
Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
drivers/net/ieee802154/atusb.c

index 52c9051f3b955ab374baee215b098462a1e0b96a..1056ed142411d3c75082fced68c59f1b269d0532 100644 (file)
@@ -366,11 +366,7 @@ static int atusb_channel(struct ieee802154_hw *hw, u8 page, u8 channel)
        struct atusb *atusb = hw->priv;
        int ret;
 
-       /* This implicitly sets the CCA (Clear Channel Assessment) mode to 0,
-        * "Mode 3a, Carrier sense OR energy above threshold".
-        * We should probably make this configurable. @@@
-        */
-       ret = atusb_write_reg(atusb, RG_PHY_CC_CCA, channel);
+       ret = atusb_write_subreg(atusb, SR_CHANNEL, channel);
        if (ret < 0)
                return ret;
        msleep(1);      /* @@@ ugly synchronization */