linux-wireless.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Jonas Jelonek <jelonek.jonas@gmail.com>
To: Johannes Berg <johannes@sipsolutions.net>
Cc: linux-wireless@vger.kernel.org, Felix Fietkau <nbd@nbd.name>
Subject: Re: [RFC v2 5/6] mac80211_hwsim: add TPC per packet support
Date: Fri, 3 Mar 2023 08:42:06 +0100	[thread overview]
Message-ID: <08F35885-A18C-49C5-B5F5-9FC8F4BBD401@gmail.com> (raw)
In-Reply-To: <386f10e09c17b871df1c86ebc0c2af52938c6fb6.camel@sipsolutions.net>


> On 28. Feb 2023, at 18:41, Johannes Berg <johannes@sipsolutions.net> wrote:
> 
> On Thu, 2023-01-26 at 15:26 +0100, Jonas Jelonek wrote:
>>> 
>>> However, I think that for new parameters, there's really no good
>>> reason
>>> to provide module parameters, since the test scripting etc. can
>>> dynamically create wiphys with the necessary capabilities. Even the
>>> hostap/hwsim tests can and do already do that :)
>> 
>> From what I’ve seen there is no dynamic parameter for RCTBL yet but I
>> can combine
>> this with my additional TPC parameter. Then this can be set via
>> netlink.
> 
> Fair enough, but yeah, I think we should move to that.
> 
>>> We already have netlink support for setting per-station TX power
>>> which I guess this should then listen to? See
>>> NL80211_ATTR_STA_TX_POWER_SETTING
>>> and NL80211_ATTR_STA_TX_POWER etc. I think it's not supported in
>>> mac80211, but probably could easily be after your patches?
>> 
>> I guess that can be part of some follow-up patches after these patches
>> here are upstream.
>> I would agree that this should somehow listen to the mentioned
>> attributes then.
> 
> OK.
> 
>> We want to do joint RC and TPC in minstrel, and to allow fine-grained
>> TPC as it is already possible with RC. Minstrel will also be adjusted in
>> one of the next steps.
>> This RFC basically should “prepare” mac80211 to be used for fine-
>> grained TPC. I think, driver support and Minstrel support should be the
>> next steps after the structures are fixed.
>> But I include hwsim here to have at least a test-case. Hope you get
>> what I mean :)
> 
> Yep, seems good.
> 
> I'm slightly worried we'll add this and never get to do the minstrel
> part, but hey.

This is also part of our research so we are going to either implement TPC in
minstrel or export this to user space. Our research also includes looking at
doing RC + TPC in user space with more advanced algorithms.

> Also, most modern devices no longer even use minstrel, so is it even
> worth doing at all from that perspective? What's in it for the users
> who've been using their devices for years (since newer devices in the
> past few years haven't used it, I think) without it?
> 
> johannes

Our goal and hope is that, we explore that and then can show some benefits of
more advanced RC and TPC algorithm, so vendors like Atheros and Mediatek
may again expose the MRR capabilities to the mac80211 layer with future
chips. Afaik, the last Mediatek chips supporting mrr rate setting are mt76xx, which
I guess are still pretty common, so we are doing our work on still relevant hardware.

After having a short look at the driver code, it seems like more recent chips (in
particular Mediatek) at least kept support for controlling the TX power per packet.
I am not sure if it could be a good idea to split that up, not having TX power in the
RC table but somehow separate. Then you would be able to do TPC without RC.

Jonas


  parent reply	other threads:[~2023-03-03  7:42 UTC|newest]

Thread overview: 24+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-09-20 10:40 [RFC v2 0/6] mac80211: add TPC support in control path Jonas Jelonek
2022-09-20 10:40 ` [RFC v2 1/6] mac80211: modify tx-power level annotation Jonas Jelonek
2022-09-21 14:54   ` Jeff Johnson
2023-01-12 10:24   ` Johannes Berg
2022-09-20 10:40 ` [RFC v2 2/6] mac80211: add tx-power annotation in control path Jonas Jelonek
2023-01-12 10:31   ` Johannes Berg
2022-09-20 10:40 ` [RFC v2 3/6] mac80211: add hardware flags for TPC support Jonas Jelonek
2022-09-20 10:40 ` [RFC v2 4/6] mac80211: add utility function for tx_rate - rate_info conversion Jonas Jelonek
2023-01-12 10:26   ` Johannes Berg
2023-01-19 11:31     ` Jonas Jelonek
2023-01-19 11:35       ` Johannes Berg
2023-01-19 14:34         ` Jonas Jelonek
2022-09-20 10:40 ` [RFC v2 5/6] mac80211_hwsim: add TPC per packet support Jonas Jelonek
2022-09-26  7:47   ` [mac80211_hwsim] 14f322748f: WARNING:at_include/net/mac80211.h:#mac80211_hwsim_monitor_rx[mac80211_hwsim] kernel test robot
2023-01-12 10:31   ` [RFC v2 5/6] mac80211_hwsim: add TPC per packet support Johannes Berg
2023-01-19 14:32     ` Jonas Jelonek
2023-01-19 15:09       ` Johannes Berg
2023-01-26 16:52         ` Jonas Jelonek
     [not found]         ` <195E1629-BC72-4968-8E61-860C80F58D8B@gmail.com>
     [not found]           ` <386f10e09c17b871df1c86ebc0c2af52938c6fb6.camel@sipsolutions.net>
2023-03-03  7:42             ` Jonas Jelonek [this message]
2023-01-26 16:53     ` Jonas Jelonek
2023-02-28 17:44       ` Johannes Berg
2023-03-03  7:46         ` Jonas Jelonek
2022-09-20 10:40 ` [RFC v2 6/6] mac80211: minstrel_ht - add debugfs entry per sta for fixed tx-power Jonas Jelonek
2023-01-12 10:32   ` Johannes Berg

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=08F35885-A18C-49C5-B5F5-9FC8F4BBD401@gmail.com \
    --to=jelonek.jonas@gmail.com \
    --cc=johannes@sipsolutions.net \
    --cc=linux-wireless@vger.kernel.org \
    --cc=nbd@nbd.name \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).