Skip to content

ath10k/ath10k-ct: support multicast and management rate control #1644

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 1 commit into from
Feb 11, 2019

Conversation

ecsv
Copy link
Contributor

@ecsv ecsv commented Feb 8, 2019

Drivers with software rate control can directly use the selected multicast rate for multicast/broadcast frames and the minimal basic rate for management frames. But drivers with offloaded rate control algorithms must be informed about such upper layer decisions to configure the hardware/firmware.

A new BSS_CHANGED_MCAST_RATE is introduced in mac80211 to automatically inform all drivers. ath10k can detect this event and forward it via WMI to the driver. The already existing BSS_CHANGED_BASIC_RATES can be used to select the management rate.

Without the WMI commands, a low rate (not necessarily one from the basic rates) is used for bcast/mcast/management frames. This means that the /etc/config/wireless settings basic_rate and mcast_rate would have no effect on the rates selected by this driver for the mentioned frames.


The ath10k-ct and mac80211 packages in OpenWrt master already support the broadcast/multicast interface (because they are using ath10k from 4.19 as their base). The management frame changes where part of 4.20 and are not yet part of OpenWrt master. But I have forwarded backports of these changes as OpenWrt PR:

Drivers with software rate control can directly use the selected multicast
rate for multicast/broadcast frames and the minimal basic rate for
management frames. But drivers with offloaded rate control algorithms must
be informed about such upper layer decisions to configure the
hardware/firmware.

A new BSS_CHANGED_MCAST_RATE is introduced in mac80211 to automatically
inform all drivers. ath10k can detect this event and forward it via WMI to
the driver. The already existing BSS_CHANGED_BASIC_RATES can be used to
select the management rate.

Without the WMI commands, a low rate (not necessarily one from the basic
rates) is used for bcast/mcast/management frames. This means that the
/etc/config/wireless settings basic_rate and mcast_rate would have no
effect on the rates selected by this driver for the mentioned frames.
@rotanid rotanid added 0. type: enhancement The changeset is an enhancement 4. has: upstream-patches This changeset backports upstream patches labels Feb 9, 2019
@mweinelt mweinelt merged commit a399b60 into freifunk-gluon:master Feb 11, 2019
@mweinelt
Copy link
Contributor

Thank you.

@ecsv ecsv deleted the ath10k-mcast-rates branch February 11, 2019 07:37
@blocktrron
Copy link
Member

blocktrron commented Feb 13, 2020

@ecsv This might come late - but I've just discovered, that management rate doesn't seem to be set for at least IPQ4019. It still sends out beacons at 1Mbit/s when configuring a 6Mbit/s basic rate.

Can you reproduce this or am i just holding it wrong?

Seems like the IPQ4019 firmware is the one holding it wrong here - The 2.4GHz Netgear R7800 does honor the mgmt_rate.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
0. type: enhancement The changeset is an enhancement 4. has: upstream-patches This changeset backports upstream patches
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants