Hi, On Thu, 13 Jan 2022 at 06:16, Miquel Raynal <miquel.raynal@xxxxxxxxxxx> wrote: > > Hi Alexander, > > alex.aring@xxxxxxxxx wrote on Wed, 12 Jan 2022 17:26:14 -0500: > > > Hi, > > > > On Wed, 12 Jan 2022 at 12:33, Miquel Raynal <miquel.raynal@xxxxxxxxxxx> wrote: > > > > > > The core now knows how to set the symbol duration in a few cases, when > > > drivers correctly advertise the protocols used on each channel. For > > > these drivers, there is no more need to bother with symbol duration, so > > > just drop the duplicated code. > > > > > > Signed-off-by: Miquel Raynal <miquel.raynal@xxxxxxxxxxx> > > > --- > > > drivers/net/ieee802154/ca8210.c | 1 - > > > drivers/net/ieee802154/mcr20a.c | 2 -- > > > 2 files changed, 3 deletions(-) > > > > > > diff --git a/drivers/net/ieee802154/ca8210.c b/drivers/net/ieee802154/ca8210.c > > > index 82b2a173bdbd..d3a9e4fe05f4 100644 > > > --- a/drivers/net/ieee802154/ca8210.c > > > +++ b/drivers/net/ieee802154/ca8210.c > > > @@ -2977,7 +2977,6 @@ static void ca8210_hw_setup(struct ieee802154_hw *ca8210_hw) > > > ca8210_hw->phy->cca.mode = NL802154_CCA_ENERGY_CARRIER; > > > ca8210_hw->phy->cca.opt = NL802154_CCA_OPT_ENERGY_CARRIER_AND; > > > ca8210_hw->phy->cca_ed_level = -9800; > > > - ca8210_hw->phy->symbol_duration = 16 * 1000; > > > ca8210_hw->phy->lifs_period = 40; > > > ca8210_hw->phy->sifs_period = 12; > > > ca8210_hw->flags = > > > diff --git a/drivers/net/ieee802154/mcr20a.c b/drivers/net/ieee802154/mcr20a.c > > > index 8aa87e9bf92e..da2ab19cb5ee 100644 > > > --- a/drivers/net/ieee802154/mcr20a.c > > > +++ b/drivers/net/ieee802154/mcr20a.c > > > @@ -975,7 +975,6 @@ static void mcr20a_hw_setup(struct mcr20a_local *lp) > > > > > > dev_dbg(printdev(lp), "%s\n", __func__); > > > > > > - phy->symbol_duration = 16 * 1000; > > > phy->lifs_period = 40; > > > phy->sifs_period = 12; > > > > > > @@ -1010,7 +1009,6 @@ static void mcr20a_hw_setup(struct mcr20a_local *lp) > > > phy->current_page = 0; > > > /* MCR20A default reset value */ > > > phy->current_channel = 20; > > > - phy->symbol_duration = 16 * 1000; > > > phy->supported.tx_powers = mcr20a_powers; > > > phy->supported.tx_powers_size = ARRAY_SIZE(mcr20a_powers); > > > phy->cca_ed_level = phy->supported.cca_ed_levels[75]; > > > > What's about the atrf86230 driver? > > I couldn't find reliable information about what this meant: > > /* SUB:0 and BPSK:0 -> BPSK-20 */ > /* SUB:1 and BPSK:0 -> BPSK-40 */ > /* SUB:0 and BPSK:1 -> OQPSK-100/200/400 */ > /* SUB:1 and BPSK:1 -> OQPSK-250/500/1000 */ > > None of these comments match the spec so I don't know what to put > there. If you know what these protocols are, I will immediately > provide this information into the driver and ensure the core handles > these durations properly before dropping the symbol_durations settings > from the code. I think those are from the transceiver datasheets (which are free to access). Can you not simply merge them or is there a conflict? - Alex