]> www.infradead.org Git - users/dwmw2/linux.git/commitdiff
net: ieee802154: ca8210: Fix lifs/sifs periods
authorMiquel Raynal <miquel.raynal@bootlin.com>
Tue, 1 Feb 2022 18:06:26 +0000 (19:06 +0100)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 23 Feb 2022 11:01:02 +0000 (12:01 +0100)
commit bdc120a2bcd834e571ce4115aaddf71ab34495de upstream.

These periods are expressed in time units (microseconds) while 40 and 12
are the number of symbol durations these periods will last. We need to
multiply them both with the symbol_duration in order to get these
values in microseconds.

Fixes: ded845a781a5 ("ieee802154: Add CA8210 IEEE 802.15.4 device driver")
Signed-off-by: Miquel Raynal <miquel.raynal@bootlin.com>
Link: https://lore.kernel.org/r/20220201180629.93410-2-miquel.raynal@bootlin.com
Signed-off-by: Stefan Schmidt <stefan@datenfreihafen.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/net/ieee802154/ca8210.c

index fea8b681f567cd0d7f846e1b0abcd6a035721483..fd9f33c833fa367afd5a5a69e8c165f37ab3d70f 100644 (file)
@@ -2977,8 +2977,8 @@ static void ca8210_hw_setup(struct ieee802154_hw *ca8210_hw)
        ca8210_hw->phy->cca.opt = NL802154_CCA_OPT_ENERGY_CARRIER_AND;
        ca8210_hw->phy->cca_ed_level = -9800;
        ca8210_hw->phy->symbol_duration = 16;
-       ca8210_hw->phy->lifs_period = 40;
-       ca8210_hw->phy->sifs_period = 12;
+       ca8210_hw->phy->lifs_period = 40 * ca8210_hw->phy->symbol_duration;
+       ca8210_hw->phy->sifs_period = 12 * ca8210_hw->phy->symbol_duration;
        ca8210_hw->flags =
                IEEE802154_HW_AFILT |
                IEEE802154_HW_OMIT_CKSUM |