Enable 5/10 MHz on ath9k_htc

I have an interest in using my ar9721 on channel bandwidth 5/10. I apply patch, that is in openwrt repo - 512-ath9k_channelbw_debugfs.patch . The thing is that after I put patch in target/linux/bcm27xx/patches and compile a system, there are changes in code in build_dir, but there is no file 'chanbw' in /sys/kernel/debug/.../ath9k_htc/ after installing on RPi4, that debugfs should create. So, it means that patch doesn't apply. Looking forward for your replies :slight_smile:

Because the patch is for ath9k, not ath9k_htc. This is for built-in or PCIe radios.I guess you'll have to modify aht9k_htc yourself.

Well, it took some time, but i found patch for ath9k_htc, unfortunately, there are still no changes in system. I have another question: What should be included in make menuconfig? I've chosen kmod's for ath,ath9k and ath9k_htc firmware, but have no confidence that it's the right thing to do.

Could you share that patch? I'm interested too. kmod-ath9k should not be needed, kmod-ath9k-htc will pull needed dependencies by itself unless you add this as additional per-device packages - including the firmware.

Here you are
https://github.com/torvalds/linux/pull/574/commits/9c9820bce1bf773cc9f6c403a8cc7fe53b1b4884
if you can make it work, please, let me know

Thanks, I'll try cherry-picking it in coming days, and see how it goes.

I found out why it didn't work for you. You have to add patches in package/kernel/mac80211/ath9k, not in target or generic kernel patches. Which, BTW, pointed me to try adding EEPROM dump facility to ath9k_htc as well.
Edit: I put the patches here: https://github.com/Leo-PL/openwrt/tree/ath9k-htc-eeprom-5mhz - though, they need slight refactoring as there is a lot of code duplication here. Both of them seem to work - I managed to back up EEPROMs of all my USB adapters, and get link established with 5MHz bandwith.

Thanks for your work! May I ask you to give me the full instruction how to make it work from the very begining(step by step)?
As I can see, there is no directory package/kernel/mac80211/ath9k... Where i have to put my patch?
First step is to it git clone your repo and what i have to do after that? I just need to "make menuconfig" and then "make"? Sorry, if question is kinda silly, but I'm total rookie in openwrt

It's easiest to just clone my branch with that change, and then just follow the building guide: https://openwrt.org/docs/guide-developer/toolchain/beginners-build-guide. You can take config.buildinfo from the release directory in the downloads, and use it as .config, to get the same packages as in the release builds.
BTW, I opened a PR for upstream: https://github.com/openwrt/openwrt/pull/10198

Thank you very much!
As you said I cloned your branch and also put patches in target/"your device"/patches(just to be sure)
It worked in AP mode, but maybe you have tested this in monitor mode?

I only tested AP and STA, but I see no reason for it not working in monitor mode as well.