public inbox for linux-wireless@vger.kernel.org
 help / color / mirror / Atom feed
* Frame injection on ath9k
@ 2021-12-09 14:41 Roberto Riggio
  2021-12-10  8:27 ` Sven Eckelmann
  0 siblings, 1 reply; 5+ messages in thread
From: Roberto Riggio @ 2021-12-09 14:41 UTC (permalink / raw)
  To: linux-wireless

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.

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: Frame injection on ath9k
  2021-12-09 14:41 Frame injection on ath9k Roberto Riggio
@ 2021-12-10  8:27 ` Sven Eckelmann
  2021-12-13 16:49   ` Roberto Riggio
  0 siblings, 1 reply; 5+ messages in thread
From: Sven Eckelmann @ 2021-12-10  8:27 UTC (permalink / raw)
  To: linux-wireless, Roberto Riggio

[-- Attachment #1: Type: text/plain, Size: 622 bytes --]

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

[-- Attachment #2: This is a digitally signed message part. --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: Frame injection on ath9k
  2021-12-10  8:27 ` Sven Eckelmann
@ 2021-12-13 16:49   ` Roberto Riggio
  2021-12-13 17:05     ` Sven Eckelmann
  0 siblings, 1 reply; 5+ messages in thread
From: Roberto Riggio @ 2021-12-13 16:49 UTC (permalink / raw)
  To: Sven Eckelmann; +Cc: linux-wireless

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 <sven@narfation.org> 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

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: Frame injection on ath9k
  2021-12-13 16:49   ` Roberto Riggio
@ 2021-12-13 17:05     ` Sven Eckelmann
  2021-12-13 17:25       ` Ben Greear
  0 siblings, 1 reply; 5+ messages in thread
From: Sven Eckelmann @ 2021-12-13 17:05 UTC (permalink / raw)
  To: Roberto Riggio; +Cc: linux-wireless, greearb, sw

[-- Attachment #1: Type: text/plain, Size: 550 bytes --]

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

[-- Attachment #2: This is a digitally signed message part. --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: Frame injection on ath9k
  2021-12-13 17:05     ` Sven Eckelmann
@ 2021-12-13 17:25       ` Ben Greear
  0 siblings, 0 replies; 5+ messages in thread
From: Ben Greear @ 2021-12-13 17:25 UTC (permalink / raw)
  To: Sven Eckelmann, Roberto Riggio; +Cc: linux-wireless, sw

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 <greearb@candelatech.com>
Candela Technologies Inc  http://www.candelatech.com


^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2021-12-13 17:25 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2021-12-09 14:41 Frame injection on ath9k Roberto Riggio
2021-12-10  8:27 ` Sven Eckelmann
2021-12-13 16:49   ` Roberto Riggio
2021-12-13 17:05     ` Sven Eckelmann
2021-12-13 17:25       ` Ben Greear

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox