From: Felix Fietkau <nbd@openwrt.org>
To: Johannes Stezenbach <js@sig21.net>
Cc: "Tuomas Räsänen" <tuomasjjrasanen@tjjr.fi>,
"Jakub Kiciński" <moorray3@wp.pl>,
linux-wireless@vger.kernel.org, tuomasjjrasanen@opinsys.fi,
"Linus Walleij" <linus.walleij@linaro.org>
Subject: Re: About adding support for MT76x2U to Linux kernel
Date: Mon, 7 Mar 2016 13:54:25 +0100 [thread overview]
Message-ID: <56DD7A01.6080209@openwrt.org> (raw)
In-Reply-To: <20160307124103.GA22175@sig21.net>
On 2016-03-07 13:41, Johannes Stezenbach wrote:
> On Mon, Mar 07, 2016 at 12:51:43PM +0100, Felix Fietkau wrote:
>> On 2016-03-07 12:14, Johannes Stezenbach wrote:
>> > FWIW, the mt7610u vendor driver
>> > doesn't support AP mode, while the mt7612u vendor driver does,
>> > but I didn't understand how their timing of sending buffered
>> > frames works.
>> Where can I find the most recent version of that vendor driver?
>> I can take a quick look at it.
>
> http://www.mediatek.com/en/downloads1/downloads/
> or more specifically
> http://www.mediatek.com/en/downloads1/downloads/mt7612u/
>
>> > Another concern is the handling of the TX status since there
>> > is also no TX_STAT interrupt. I remember from rt2800usb
>> > it was always problematic to ensure no FIFO items were lost,
>> > which is a problem for rt2800usb since it doesn't report
>> > TX status before it got it from the hardware.
>> > The mt7601u driver takes the approach to report IEEE80211_TX_STAT_ACK
>> > immediately after urb completion, and send the real
>> > status later from a delayed workqueue in mt7601u_tx_stat().
>> > Could someone enlighten me if this approach is sane
>> > wrt to minstrel rate control?
>> When I started writing mt76 I did lots of experiments with trying to map
>> TX_STAT_FIFO data to individual frames and pretty much gave up, because
>> the status register was just too unreliable. Even in cases where it was
>> reliable, mapping the status info to frames is expensive on slower
>> embedded hardware, so I pretty much gave up on that approach and
>> extended the rate control API to support submitting tx status
>> information without the corresponding skb.
>>
>> This turned out to work quite well, and I think it might be worth using
>> to some extent even on drivers with proper skb tx status reporting,
>> since it has better cache footprint and has to run less code.
>>
>> I think the best approach is to try to map tx status info from
>> TX_STAT_FIFO in cases where IEEE80211_TX_CTL_REQ_TX_STATUS is set, and
>> just use ieee80211_tx_status_noskb for all other frames. I did something
>> like that on my work-in-progress mt7603 code.
>
> OK, I thought minstrels send some probe frames with high
> rates to check if they go through and thus relies
> on exact TX status for these? (IEEE80211_TX_CTL_RATE_CTRL_PROBE)
The driver does need to provide the exact rates that were tried, but
minstrel does not care about the skb itself. mt76 infers the probed rate
from the status last tx rate + the number of retries (based on the
hardcoded hardware rate fallback table).
- Felix
next prev parent reply other threads:[~2016-03-07 12:54 UTC|newest]
Thread overview: 15+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-08-14 8:15 About adding support for MT76x2U to Linux kernel Tuomas Räsänen
2015-08-14 12:32 ` Jakub Kiciński
2015-12-16 18:53 ` Felix Fietkau
2015-12-16 21:24 ` Johannes Stezenbach
2015-12-17 20:28 ` Johannes Stezenbach
2015-12-17 8:55 ` Linus Walleij
2016-03-02 7:32 ` Tuomas Räsänen
2016-03-07 11:14 ` Johannes Stezenbach
2016-03-07 11:51 ` Felix Fietkau
2016-03-07 12:41 ` Johannes Stezenbach
2016-03-07 12:54 ` Felix Fietkau [this message]
2016-03-07 21:22 ` Felix Fietkau
2016-03-08 12:49 ` Johannes Stezenbach
2016-03-08 12:58 ` Felix Fietkau
2016-03-08 13:22 ` Johannes Stezenbach
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=56DD7A01.6080209@openwrt.org \
--to=nbd@openwrt.org \
--cc=js@sig21.net \
--cc=linus.walleij@linaro.org \
--cc=linux-wireless@vger.kernel.org \
--cc=moorray3@wp.pl \
--cc=tuomasjjrasanen@opinsys.fi \
--cc=tuomasjjrasanen@tjjr.fi \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.