Ath9k rate can‘t control

Hi all:
My openwrt firmware run in AR9344 platform. The driver is ath9k, I can't control rate( MCS0 ~ MCS15).
command:
uci set wireless.radio0.rate='MCS7'
or vi /etc/config/wireless
or iwconfig wlan0 rate 54M
Above order can't change rate.Why?
thanks,

Did you just want 54Mbit? Have you tried just switching from n-mode to g-mode?

Hi wgqoufsn:
no, modify all rate(MCS0 ~ MCS15).

This is not manually controlled.

Hi lleachii:
I see EnGenius AP can controlled rate, but it's original driver(QCA driver).Why?

A Google search reveals quite a bit on ath9k rate control, including

https://patchwork.kernel.org/patch/3592871/ from Feb. 6, 2014, 4:52 a.m. UTC

From: Sujith Manoharan <c_manoha@qca.qualcomm.com>

There is no benefit in retaining the legacy rate control module
in the driver codebase.

It is known to be buggy and has less than optimal performance
in real-world environments compared with minstrel. The only
reason that it was kept when we made the switch to minstrel
as default was that it showed higher throughput numbers in a
clean/ideal environment.

This is no longer the case and minstrel can push ath9k to
the same throughput levels. In TCP, with 3-stream cards, more than
295 Mbps can be obtained in open air, with 2-stream cards,
210 Mbps is easily reached. To test performance issues,
instead of using a broken rate control module, it is better
to use the fixed-rate interface provided by mac80211 anyway.

The ath9k RC has not received any bug fixes in years and is
just bit-rotting away - this patch removes it.

and, from over three years ago

which seems to answer nearly your exact question

NOTE: I used

iwconfig wlan0 rate 54M fixed

but that was of no use.

Use the following command to control the MCS bitrates.

iw dev <devname> set bitrates [ht-mcs-2.4|5 <mcs indexes>]