linux-wireless.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Kalle Valo <kvalo@qca.qualcomm.com>
To: Sujith Manoharan <sujith@msujith.org>
Cc: <ath10k@lists.infradead.org>, <linux-wireless@vger.kernel.org>
Subject: Re: [PATCH] ath10k: Make HTT fill size configurable
Date: Thu, 15 Jan 2015 09:38:44 +0200	[thread overview]
Message-ID: <87bnm01ojf.fsf@kamboji.qca.qualcomm.com> (raw)
In-Reply-To: <21685.35179.110539.780864@gargle.gargle.HOWL> (Sujith Manoharan's message of "Wed, 14 Jan 2015 02:38:59 +0530")

Sujith Manoharan <sujith@msujith.org> writes:

> Kalle Valo wrote:
>> I'm not sure if I really like this path of having interfaces to
>> configure driver internals. I suspect that if we add this, we will have
>> even more later. It's a lot more documenting for us and more work to the
>> users to understand what parameters they should use. Also this means
>> that testing will be more challenging as people will use different
>> values and results won't be comparable.
>> 
>> Isn't there any other way to solve the problem? Like automatically
>> changing the value somehow (no idea how) or some other means?
>
> We are limiting performance by restricting the fill size. A user
> will just use the default, which is still the same and remains
> unchanged. But, having a way to adjust this based on the platform
> seems reasonable to me and I think trying to change this value dynamically
> is overkill.

Did you read at all what I wrote above? For example, what if we later
don't actually use ATH10K_HTT_MAX_NUM_REFILL anymore?

And the fundamental problem is that I still don't know what fill value
you think is the best to use here, and that means neither will the
users. That's why the values need to be within ath10k, not expose driver
internals and use some magic numbers which are not available anywhere.

>> Or if nothing else helps, a crazy idea is to have some sort of platform
>> profile parameter:
>> 
>> 0 = auto
>> 1 = slow
>> 2 = fast
>> 3 = superfast (x86)
>> 
>> And then we would have preset values (not just htt_fill_size) within
>> ath10k and they get chosen based on the profile configured.
>
> I don't think a network driver should limit its performance with
> such profiles. Moreover, x86 can be slow too - at least, my 4 year
> old machine is. :-)

We are not limitting anything more. That's not any different from what
your patch does, just that the parameter name is different and the user
doesn't have direct access to the internal parameter. Let me explain a
bit more how that would work in this HTT fill case:

profile 0 (auto):
profile 1 (slow):
        htt_fill_size = ATH10K_HTT_MAX_NUM_REFILL
        break:
profile 2 (fast):
        htt_fill_size = 77 /* or whatever */
        break;

So in this method the user can still choose optimal settings for a
certain platform, I assume AP148 in this case, and not know about driver
internals. And if there are more parameters we need to change in the
future, we can use the same modparam to change that as well.

-- 
Kalle Valo

  parent reply	other threads:[~2015-01-15  7:38 UTC|newest]

Thread overview: 24+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-01-05  4:39 [PATCH] ath10k: Make HTT fill size configurable Sujith Manoharan
2015-01-07 10:14 ` Michal Kazior
2015-01-07 10:37   ` Sujith Manoharan
2015-01-13 14:44     ` Kalle Valo
2015-01-13 20:56       ` Sujith Manoharan
2015-01-07 10:53   ` Vasanthakumar Thiagarajan
2015-01-13 14:48     ` Kalle Valo
2015-01-13 15:03 ` Kalle Valo
2015-01-13 21:08   ` Sujith Manoharan
2015-01-14  9:22     ` Michal Kazior
2015-01-14  9:50       ` Sujith Manoharan
2015-01-14 10:12         ` Michal Kazior
2015-01-15  0:17           ` Sujith Manoharan
2015-01-15  7:19           ` Kalle Valo
2015-01-15  7:38     ` Kalle Valo [this message]
2015-01-15  7:50       ` Sujith Manoharan
2015-01-15  8:09         ` Kalle Valo
2015-01-15  8:16           ` Sujith Manoharan
2015-01-15  8:21             ` Sujith Manoharan
2015-01-15  8:35               ` Kalle Valo
2015-01-15  8:47                 ` Sujith Manoharan
2015-01-15  8:32             ` Kalle Valo
2015-01-15  8:43               ` Sujith Manoharan
2015-01-15 23:03                 ` Julian Calaby

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=87bnm01ojf.fsf@kamboji.qca.qualcomm.com \
    --to=kvalo@qca.qualcomm.com \
    --cc=ath10k@lists.infradead.org \
    --cc=linux-wireless@vger.kernel.org \
    --cc=sujith@msujith.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;
as well as URLs for NNTP newsgroup(s).