linux-wireless.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Nicolas Boichat <drinkcat@chromium.org>
To: Wen Gong <wgong@codeaurora.org>
Cc: ath10k@lists.infradead.org,
	"open list:NETWORKING DRIVERS (WIRELESS)" 
	<linux-wireless@vger.kernel.org>
Subject: Re: [PATCH 2/7] ath10k: change max RX bundle size from 8 to 32 for sdio
Date: Tue, 27 Aug 2019 15:42:50 +0800	[thread overview]
Message-ID: <CANMq1KBRMnVqw5rcnVcJs1UjYJxh+RqAEKSAjboojoMgJQpSDw@mail.gmail.com> (raw)
In-Reply-To: <1566302108-18219-3-git-send-email-wgong@codeaurora.org>

On Tue, Aug 20, 2019 at 7:55 PM Wen Gong <wgong@codeaurora.org> wrote:
>
> The max bundle size support by firmware is 32, change it from 8 to 32
> will help performance. This results in significant performance
> improvement on RX path.
>
> Tested with QCA6174 SDIO with firmware
> WLAN.RMH.4.4.1-00007-QCARMSWP-1.
>
> Signed-off-by: Wen Gong <wgong@codeaurora.org>
> ---
>  drivers/net/wireless/ath/ath10k/htc.h  | 2 +-
>  drivers/net/wireless/ath/ath10k/sdio.c | 5 +++--
>  drivers/net/wireless/ath/ath10k/sdio.h | 4 ++--
>  3 files changed, 6 insertions(+), 5 deletions(-)
>
> diff --git a/drivers/net/wireless/ath/ath10k/htc.h b/drivers/net/wireless/ath/ath10k/htc.h
> index f55d3ca..8c79b9e 100644
> --- a/drivers/net/wireless/ath/ath10k/htc.h
> +++ b/drivers/net/wireless/ath/ath10k/htc.h
> @@ -39,7 +39,7 @@
>   * 4-byte aligned.
>   */
>
> -#define HTC_HOST_MAX_MSG_PER_RX_BUNDLE        8
> +#define HTC_HOST_MAX_MSG_PER_RX_BUNDLE        32
>
>  enum ath10k_htc_tx_flags {
>         ATH10K_HTC_FLAG_NEED_CREDIT_UPDATE = 0x01,
> diff --git a/drivers/net/wireless/ath/ath10k/sdio.c b/drivers/net/wireless/ath/ath10k/sdio.c
> index d9395f0..baa6051 100644
> --- a/drivers/net/wireless/ath/ath10k/sdio.c
> +++ b/drivers/net/wireless/ath/ath10k/sdio.c
> @@ -24,8 +24,8 @@
>  #include "trace.h"
>  #include "sdio.h"
>
> -#define ATH10K_SDIO_DMA_BUF_SIZE       (32 * 1024)
> -#define ATH10K_SDIO_VSG_BUF_SIZE       (32 * 1024)
> +#define ATH10K_SDIO_DMA_BUF_SIZE       (64 * 1024)
> +#define ATH10K_SDIO_VSG_BUF_SIZE       (64 * 1024)
>
>  /* inlined helper functions */
>
> @@ -501,6 +501,7 @@ static int ath10k_sdio_mbox_alloc_bundle(struct ath10k *ar,
>         int ret, i;
>
>         *bndl_cnt = FIELD_GET(ATH10K_HTC_FLAG_BUNDLE_MASK, htc_hdr->flags);
> +       *bndl_cnt += (FIELD_GET(GENMASK(3, 2), htc_hdr->flags) << 4);

GENMASK(3, 2): Please define this macro somewhere.

Also, I'd merge the 2 lines in 1.

>
>         if (*bndl_cnt > HTC_HOST_MAX_MSG_PER_RX_BUNDLE) {
>                 ath10k_warn(ar,
> diff --git a/drivers/net/wireless/ath/ath10k/sdio.h b/drivers/net/wireless/ath/ath10k/sdio.h
> index 4896eca..3ca76c7 100644
> --- a/drivers/net/wireless/ath/ath10k/sdio.h
> +++ b/drivers/net/wireless/ath/ath10k/sdio.h
> @@ -89,10 +89,10 @@
>   * to the maximum value (HTC_HOST_MAX_MSG_PER_RX_BUNDLE).
>   *
>   * in this case the driver must allocate
> - * (HTC_HOST_MAX_MSG_PER_RX_BUNDLE * HTC_HOST_MAX_MSG_PER_RX_BUNDLE) skb's.
> + * (HTC_HOST_MAX_MSG_PER_RX_BUNDLE * 2) skb's.
>   */
>  #define ATH10K_SDIO_MAX_RX_MSGS \
> -       (HTC_HOST_MAX_MSG_PER_RX_BUNDLE * HTC_HOST_MAX_MSG_PER_RX_BUNDLE)
> +       (HTC_HOST_MAX_MSG_PER_RX_BUNDLE * 2)
>
>  #define ATH10K_FIFO_TIMEOUT_AND_CHIP_CONTROL   0x00000868u
>  #define ATH10K_FIFO_TIMEOUT_AND_CHIP_CONTROL_DISABLE_SLEEP_OFF 0xFFFEFFFF
> --
> 1.9.1
>

  parent reply	other threads:[~2019-08-27  7:43 UTC|newest]

Thread overview: 35+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-08-20 11:55 [PATCH 0/7] ath10k: improve throughout of tcp/udp TX/RX of sdio Wen Gong
2019-08-20 11:55 ` [PATCH 1/7] ath10k: enable RX bundle receive for sdio Wen Gong
2019-08-27  7:40   ` Nicolas Boichat
2019-08-27  8:02     ` Wen Gong
2019-08-27  8:08       ` Nicolas Boichat
2019-08-28  4:25         ` Wen Gong
2019-08-20 11:55 ` [PATCH 2/7] ath10k: change max RX bundle size from 8 to 32 " Wen Gong
2019-08-20 12:23   ` Toke Høiland-Jørgensen
2019-08-21  6:01     ` Wen Gong
2019-08-21 10:02       ` Toke Høiland-Jørgensen
2019-08-27  7:42   ` Nicolas Boichat [this message]
2019-08-28  2:31     ` Wen Gong
2019-09-03 16:09   ` Dave Taht
2019-09-04  4:43     ` Wen Gong
2019-09-04 13:34       ` Dave Taht
2019-09-05 10:12         ` Wen Gong
2019-08-20 11:55 ` [PATCH 3/7] ath10k: add workqueue for RX path of sdio Wen Gong
2019-09-04  2:31   ` Wen Gong
2019-08-20 11:55 ` [PATCH 4/7] ath10k: disable TX complete indication of htt for sdio Wen Gong
2019-08-20 12:23   ` Toke Høiland-Jørgensen
2019-08-21  6:20     ` Wen Gong
2019-08-21 10:10       ` Toke Høiland-Jørgensen
2019-08-21 10:20         ` Wen Gong
2019-08-22 12:12           ` Toke Høiland-Jørgensen
2019-08-23  2:46             ` Wen Gong
2019-08-23  8:39               ` Toke Høiland-Jørgensen
2019-08-27  7:56   ` Nicolas Boichat
2019-08-28  4:24     ` Wen Gong
2019-09-04  2:33   ` Wen Gong
2019-08-20 11:55 ` [PATCH 5/7] ath10k: add htt TX bundle " Wen Gong
2019-09-04  2:34   ` Wen Gong
2019-08-20 11:55 ` [PATCH 6/7] ath10k: enable alt data of TX path " Wen Gong
2019-09-04  2:36   ` Wen Gong
2019-08-20 11:55 ` [PATCH 7/7] ath10k: enable napi on RX " Wen Gong
2019-09-04  2:37   ` Wen Gong

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=CANMq1KBRMnVqw5rcnVcJs1UjYJxh+RqAEKSAjboojoMgJQpSDw@mail.gmail.com \
    --to=drinkcat@chromium.org \
    --cc=ath10k@lists.infradead.org \
    --cc=linux-wireless@vger.kernel.org \
    --cc=wgong@codeaurora.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).