Search Linux Wireless

Re: [RFC 0/4] mac80211: add TPC support in control path

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



> On 29. Aug 2022, at 17:06, Jonas Jelonek <jelonek.jonas@xxxxxxxxx> wrote:
> 
> We planned to get these changes upstream at first to have the foundation for TPC
> in the mac80211, and then develop driver implementations and TPC algorithm on 
> top of this once all is reviewed, approved and upstream. 
> The ath9k tpc support is currently not upstream-ready but can be in a next version.
> For testing the actual TPC support I modified minstrel’s debugfs to be able to set 
> fixed tx-power per STA.
> 
> I think we can develop this series further to come up with fully working driver
> implementation and a TPC algorithm if you think that would be better. 
> Else we could also provide at least a debugfs patch to be able to set fixed
> tx-power per STA.
> 
> Greetings
> Jonas
> 
>> On 29. Aug 2022, at 16:46, Johannes Berg <johannes@xxxxxxxxxxxxxxxx> wrote:
>> 
>> On Mon, 2022-08-29 at 16:41 +0200, Jonas Jelonek wrote:
>>> 
>>> I tested the tx-power annotation with an implementation of TPC in ath9k
>>> (not included in this RFC) and small changes in minstrel_ht for debugfs
>>> access. Tx-power status report in ath9k required the proposed utility
>>> function in mac80211.
>>> 
>> 
>> Huh wait, now that I got to the end of the series ... this doesn't
>> actually *do* anything, so what's the point? Shouldn't it come with some
>> implementation of the control?
>> 
>> johannes
> 

I am working on the hwsim support right now, tpc support in hwsim’s control path is implemented.
However I encountered a problem in the status path. Hwsim seems to hand over to mac80211
tx-status asynchronously via ieee80211_tx_status_irqsafe only. There, the skb is added to
ieee80211_local->skb_queue and then dequeued in ‘ieee80211_tasklet_handler’ to be passed
to ‘ieee80211_tx_status’. For tx rates this is sufficient, but there is no space left in 
ieee80211_tx_info->status to pass the tx-power per packet.
Please correct me if I missed something in the code.

My idea to solve this may be: to use the SKB extension (struct skb_ext *extensions) to pass the 
tx-power information (and maybe more) for each SKB. Could this be an appropriate approach or 
do I miss something here? Maybe someone who is much more aware of the mac80211 layer 
design does have a better idea for this?

Greetings
Jonas



[Index of Archives]     [Linux Host AP]     [ATH6KL]     [Linux Wireless Personal Area Network]     [Linux Bluetooth]     [Wireless Regulations]     [Linux Netdev]     [Kernel Newbies]     [Linux Kernel]     [IDE]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite Hiking]     [MIPS Linux]     [ARM Linux]     [Linux RAID]

  Powered by Linux