public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Mohammed Shafi <shafi.wireless@gmail.com>
To: Fred Matthews <fredmm@hotmail.co.uk>
Cc: linux-kernel@vger.kernel.org, linux-wireless@vger.kernel.org,
	ath9k-devel@venema.h4ckr.net, ath9k-devel@lists.ath9k
Subject: Re: [ath9k-devel] Patching ath9k/mac80211 to change MAC layer features
Date: Tue, 28 Jun 2011 12:30:18 +0530	[thread overview]
Message-ID: <BANLkTimGyAN2MvPsTAYqCo2LcWQO2xjXtA@mail.gmail.com> (raw)
In-Reply-To: <BANLkTinJHNztwaR44qdOpZyWg7ASrVG7vQ@mail.gmail.com>

On Mon, Jun 27, 2011 at 11:07 PM, Fred Matthews <fredmm@hotmail.co.uk> wrote:
> Hi all,
>
> Much appreciated Mohammed Shafi, disabling aggregation works when
> replacing those lines with
>  sc->sc_flags &= ~SC_OP_TXAGGR;
>  sc->sc_flags &= ~SC_OP_RXAGGR;
> only issue is I must always recompile compat-wireless to
> re-enable/disable it again. I tried to port it using debugfs to be
> able to enable and disable at runtime but ath9k kept rebooting.

I am not sure we can enable/disable aggregation via debugfs, these
flags seem are set at initialization and based on this lot of things
happen in tx-path, initializing TID structure, ampdu action, rate
control  etc.

>
> Also I would be very grateful if someone can help regarding my
> attached patch and previous query:
>
> ------------
>  need to patch ath9k so that I can be able to modify/fix the A-MPDU
> aggregation frame length and other parameters such that they can be
> configured at runtime via debugfs. I made a newbie attempt at trying
> to change the aggregate length (attached), but I am unsure of the
> correctness/efficiency  - when applied throughput varies with
> different frame lengths entered but I can't be sure if its actually
> changing the aggregation length (passes the framelen/aggr_limit).
> Hence I would be very grateful if someone can assist in the correct
> way of doing this (possibly directly via mac80211).
>
>
> Also if the ampdu aggregate length is changed I believe the
> number/length of the subframes of the aggregate stays constant (at the
> default which is 32). I try to change this in my patch as well as the
> maximum software retries by just changing the default definition in
> ath9k.h, thus is there a (more) correct/better way of changing these.
> Finally, how can I patch the driver to be able to disable Block-Acks
> via debugfs or otherwise.
> ---------------
>
> Thank you very much
>
>
>
> On Mon, Jun 20, 2011 at 9:15 AM, Mohammed Shafi
> <shafi.wireless@gmail.com> wrote:
>> On Fri, Jun 17, 2011 at 2:09 AM, Fred Matthews <fredmm@hotmail.co.uk> wrote:
>>> Hello all,
>>>
>>>
>>> I have a query regarding patching ath9k/mac80211 to change MAC layer
>>> features and I would be most grateful if someone can assist.
>>>
>>>
>>> I need to patch ath9k so that I can be able to modify/fix the A-MPDU
>>> aggregation frame length and other parameters such that they can be
>>> configured at runtime via debugfs. I made a newbie attempt at trying to
>>> change the aggregate length (attached), but I am unsure of the
>>> correctness/efficiency  - when applied throughput varies with different
>>> frame lengths entered but I can't be sure if its actually changing the
>>> aggregation length (passes the framelen/aggr_limit). Hence I would be very
>>> grateful if someone can assist in the correct way of doing this (possibly
>>> directly via mac80211).
>>>
>>>
>>>
>>> Also if the ampdu aggregate length is changed I believe the number/length of
>>> the subframes of the aggregate stays constant (at the default which is
>>> 32). I try to change this in my patch as well as the maximum software
>>> retries by just changing the default definition in ath9k.h, thus is there a
>>> (more) correct/better way of changing these. Finally, how can I patch the
>>> driver to be able to disable Block-Acks/aggregation via debugfs or
>>> otherwise.
>>
>>
>> to disable aggregation in the driver, please try this
>> diff --git a/drivers/net/wireless/ath/ath9k/init.c
>> b/drivers/net/wireless/ath/ath9k/init.c
>> index d4b166c..e0175d0 100644
>> --- a/drivers/net/wireless/ath/ath9k/init.c
>> +++ b/drivers/net/wireless/ath/ath9k/init.c
>> @@ -524,8 +524,6 @@ static void ath9k_init_misc(struct ath_softc *sc)
>>        sc->config.txpowlimit = ATH_TXPOWER_MAX;
>>
>>        if (sc->sc_ah->caps.hw_caps & ATH9K_HW_CAP_HT) {
>> -               sc->sc_flags |= SC_OP_TXAGGR;
>> -               sc->sc_flags |= SC_OP_RXAGGR;
>>        }
>>
>>        common->tx_chainmask = sc->sc_ah->caps.tx_chainmask;
>>
>> if you want only tx-aggregation to be disabled , please comment out only that.
>> also you can completely disable HT by
>> diff --git a/drivers/net/wireless/ath/ath9k/hw.c
>> b/drivers/net/wireless/ath/ath9k/hw.c
>> index 6de2655..696b4cc 100644
>> --- a/drivers/net/wireless/ath/ath9k/hw.c
>> +++ b/drivers/net/wireless/ath/ath9k/hw.c
>> @@ -1915,10 +1915,7 @@ int ath9k_hw_fill_cap_info(struct ath_hw *ah)
>>
>>        common->crypt_caps |= ATH_CRYPT_CAP_CIPHER_AESCCM;
>>
>> -       if (ah->hw_version.devid != AR2427_DEVID_PCIE)
>> -               pCap->hw_caps |= ATH9K_HW_CAP_HT;
>> -       else
>> -               pCap->hw_caps &= ~ATH9K_HW_CAP_HT;
>> +       pCap->hw_caps &= ~ATH9K_HW_CAP_HT;
>>
>>        if (AR_SREV_9271(ah))
>>                pCap->num_gpio_pins = AR9271_NUM_GPIO;
>>
>>
>>
>>
>>>
>>>
>>>
>>> I highly appreciate, help in any of the above, as well as other advice,
>>> Many thanks
>>>
>>> _______________________________________________
>>> ath9k-devel mailing list
>>> ath9k-devel@lists.ath9k.org
>>> https://lists.ath9k.org/mailman/listinfo/ath9k-devel
>>>
>>>
>>
>>
>>
>> --
>> shafi
>> --
>> To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
>> the body of a message to majordomo@vger.kernel.org
>> More majordomo info at  http://vger.kernel.org/majordomo-info.html
>>
>



-- 
shafi

  reply	other threads:[~2011-06-28  7:00 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <BLU158-w332CD7657F92343D3D2D1C876A0@phx.gbl>
2011-06-19 16:13 ` Patching ath9k/mac80211 to change MAC layer features Fred Matthews
2011-06-20  8:15 ` [ath9k-devel] " Mohammed Shafi
2011-06-27 17:37   ` Fred Matthews
2011-06-28  7:00     ` Mohammed Shafi [this message]
2011-06-28 12:14       ` Daniel Smith

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=BANLkTimGyAN2MvPsTAYqCo2LcWQO2xjXtA@mail.gmail.com \
    --to=shafi.wireless@gmail.com \
    --cc=ath9k-devel@lists.ath9k \
    --cc=ath9k-devel@venema.h4ckr.net \
    --cc=fredmm@hotmail.co.uk \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-wireless@vger.kernel.org \
    /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