From: Stanislaw Gruszka <sgruszka@redhat.com>
To: Markus Theil <markus.theil@tu-ilmenau.de>
Cc: nbd@nbd.name, linux-wireless@vger.kernel.org,
lorenzo.bianconi@redhat.com
Subject: Re: [PATCH v7 2/5] mt76: mt76x02: split beaconing
Date: Thu, 21 Nov 2019 13:31:04 +0100 [thread overview]
Message-ID: <20191121123102.GA13833@redhat.com> (raw)
In-Reply-To: <20191120222826.14871-3-markus.theil@tu-ilmenau.de>
On Wed, Nov 20, 2019 at 11:28:23PM +0100, Markus Theil wrote:
> Sending beacons to the hardware always happens in batches. In order to
> speed up beacon processing on usb devices, this patch splits out common
> code an calls it only once (mt76x02_mac_set_beacon_prepare,
> mt76x02_mac_set_beacon_finish). Making this split breaks beacon
> enabling/disabling per vif. This is fixed by adding a call to set the
> bypass mask, if beaconing should be disabled for a vif. Otherwise the
> beacon is send after the next beacon interval.
>
> The code is also adapted for the mmio part of the driver, but should not
> have any performance implication there.
<snip>
> + */
> + if (mt76_is_usb(&dev->mt76)) {
> + struct mt76x02_txwi *txwi;
> +
> + mt76_insert_hdr_pad(skb);
> + txwi = (struct mt76x02_txwi *)(skb->data - sizeof(*txwi));
> + mt76x02_mac_write_txwi(dev, txwi, skb, NULL, NULL, skb->len);
> + skb_push(skb, sizeof(*txwi));
> + } else {
> + struct mt76x02_txwi txwi;
>
> - mt76_wr_copy(dev, offset, &txwi, sizeof(txwi));
> - offset += sizeof(txwi);
> + mt76_wr_copy(dev, offset, &txwi, sizeof(txwi));
> + offset += sizeof(txwi);
> + }
You merged another patch into this one. Please keep them separated.
> +void mt76x02_mac_set_beacon_finish(struct mt76x02_dev *dev)
> +{
> + mt76_rmw_field(dev, MT_MAC_BSSID_DW1, MT_MAC_BSSID_DW1_MBEACON_N,
> + hweight8(dev->beacon_data_mask) - 1);
> + mt76_wr(dev, MT_BCN_BYPASS_MASK, 0xff00 | ~dev->beacon_data_mask);
> +}
Well, this code still does not look quite right. At least it is not
compatible what the BCN_BYPASS_MASK description said in the manual.
I think the code need serious testing on multi-bss (USB support up
to 2 AP bssids) and with broadcast/multicast with some PS stations
on the network.
In particular adding second bssid and remove first one should
be checked.
Stanislaw
next prev parent reply other threads:[~2019-11-21 12:31 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-11-20 22:28 [PATCH v7 0/5] mt76: channel switch support for USB devices Markus Theil
2019-11-20 22:28 ` [PATCH v7 1/5] mt76: mt76x02: ommit beacon slot clearing Markus Theil
2019-11-20 22:28 ` [PATCH v7 2/5] mt76: mt76x02: split beaconing Markus Theil
2019-11-21 12:31 ` Stanislaw Gruszka [this message]
2019-11-20 22:28 ` [PATCH v7 3/5] mt76: mt76x02: remove a copy call for usb speedup Markus Theil
2019-11-20 22:28 ` [PATCH v7 4/5] mt76: speed up usb bulk copy Markus Theil
2019-11-20 22:28 ` [PATCH v7 5/5] mt76: mt76x02: add channel switch support for usb interfaces Markus Theil
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=20191121123102.GA13833@redhat.com \
--to=sgruszka@redhat.com \
--cc=linux-wireless@vger.kernel.org \
--cc=lorenzo.bianconi@redhat.com \
--cc=markus.theil@tu-ilmenau.de \
--cc=nbd@nbd.name \
/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.