2021-12-09 14:42:18

by Roberto Riggio

[permalink] [raw]
Subject: Frame injection on ath9k

Hi,

a while ago I wrote some patches for the frame injection section of
ath9k (the tx.c file). Now I wanted to refresh those patches for the
latest version of the driver but I saw that the code changed quite a
bit. Could somebody be so kind to provide me with some pointers about
where the frame injection at arbitrary rates from a radiotap header is
implemented now?

Thanks very much.

R.


2021-12-10 08:27:44

by Sven Eckelmann

[permalink] [raw]
Subject: Re: Frame injection on ath9k

On Thursday, 9 December 2021 15:41:03 CET Roberto Riggio wrote:
> Could somebody be so kind to provide me with some pointers about
> where the frame injection at arbitrary rates from a radiotap header is
> implemented now?

Not in ath9k - it is in net/mac80211/tx.c. The function
ieee80211_parse_tx_radiotap will inspect the radiotap header and set the flag
IEEE80211_TX_CTRL_RATE_INJECT if it was able to retrieve some rates from it.

And ieee80211_tx_h_rate_ctrl will just not try to calculate new rates when
they were already injected by the radiotap header (see
IEEE80211_TX_CTRL_RATE_INJECT).

Kind regards,
Sven


Attachments:
signature.asc (833.00 B)
This is a digitally signed message part.

2021-12-13 16:49:52

by Roberto Riggio

[permalink] [raw]
Subject: Re: Frame injection on ath9k

Thanks Sven for the follow-up. Do you know if besides on the ath9k
driver the frame injection is supported also on the ath10k driver?

R.

On Fri, 10 Dec 2021 at 09:27, Sven Eckelmann <[email protected]> wrote:
>
> On Thursday, 9 December 2021 15:41:03 CET Roberto Riggio wrote:
> > Could somebody be so kind to provide me with some pointers about
> > where the frame injection at arbitrary rates from a radiotap header is
> > implemented now?
>
> Not in ath9k - it is in net/mac80211/tx.c. The function
> ieee80211_parse_tx_radiotap will inspect the radiotap header and set the flag
> IEEE80211_TX_CTRL_RATE_INJECT if it was able to retrieve some rates from it.
>
> And ieee80211_tx_h_rate_ctrl will just not try to calculate new rates when
> they were already injected by the radiotap header (see
> IEEE80211_TX_CTRL_RATE_INJECT).
>
> Kind regards,
> Sven

2021-12-13 17:05:41

by Sven Eckelmann

[permalink] [raw]
Subject: Re: Frame injection on ath9k

On Monday, 13 December 2021 17:49:38 CET Roberto Riggio wrote:
> Thanks Sven for the follow-up. Do you know if besides on the ath9k
> driver the frame injection is supported also on the ath10k driver?

Yes, but not with rate selection.

There is support for this in ath10k-ct but I am not sure if this only
supported for specific ath10k-ct firmware variant - or if you just need to
have recent ath10k-ct firmware. The relevant feature is called
ATH10K_FW_FEATURE_HAS_TX_RC_CT and the relevant code is in ath10k-ct since
2018.

Kind regards,
Sven


Attachments:
signature.asc (833.00 B)
This is a digitally signed message part.

2021-12-13 17:25:35

by Ben Greear

[permalink] [raw]
Subject: Re: Frame injection on ath9k

On 12/13/21 9:05 AM, Sven Eckelmann wrote:
> On Monday, 13 December 2021 17:49:38 CET Roberto Riggio wrote:
>> Thanks Sven for the follow-up. Do you know if besides on the ath9k
>> driver the frame injection is supported also on the ath10k driver?
>
> Yes, but not with rate selection.
>
> There is support for this in ath10k-ct but I am not sure if this only
> supported for specific ath10k-ct firmware variant - or if you just need to
> have recent ath10k-ct firmware. The relevant feature is called
> ATH10K_FW_FEATURE_HAS_TX_RC_CT and the relevant code is in ath10k-ct since
> 2018.

Any relatively recent (last few years) ath10k-ct firmware should support this
for wave-2. wave-1 ath10k-ct has some slightly more limitted support for the same
feature. I think all variants would support this, but we test internally with the -htt-mgt
version that pushes all the management frames over the data packet transport, so I suggest
using that.

Thanks,
Ben

>
> Kind regards,
> Sven
>


--
Ben Greear <[email protected]>
Candela Technologies Inc http://www.candelatech.com