9eacb9d7fc
This commit combines all the changes I've made on my staging tree into a single commit fixing many issues with our patch for MT7620. First of all, checkpatch.pl revealed numerous code style issues with the patch, so fix all the white-space and commets. Also use usleep_range instead of legacy timing and relax timing for VCO calibration just like the vendor driver does. Several line programming registers were commented out in the patch. Originally this came from the features present but disabled by default in the vendor's driver (RTMP_TEMPERATURE_CALIBRATION and ADJUST_POWER_CONSUMPTION_SUPPORT). Remove the dead code for now, it can easily be re-added if we actually intend to support those features. Move values from mt7620_freqconfig type into the existing rf_channel struct, this shouldn't be a new typedef and it is possible to use the existing struct because rf_channel got 4 32-bit fields, so two of the 8-bit values from mt7620_freqconfig can easily be stored in the same 32-bit field. Map values such that Rdiv -> rf1 N -> rf2 K -> rf3[0:7] D -> rf3[8:15] Ksd -> rf4 This makes the channel switching logic already look a bit more like what we are used to in rt2x00... Probably many of the read-modify-write calls could still be replaced by macros intended for that. iq calibration seems to be identical to RT5592, so just enable it. Test shows that this improves things quite a lot, datarates went up by a couple of megabits when running iperf, signal quality seems jumpy in the first few seconds once a station connencts, the stabelizes on a value significantly better than what it was before. Add description to the patch and reference the original OpenWrt commit by which it was added. The patch now passes checkpatch.pl and can thus be discussed with the upstream authors of the rt2x00 driver. Funded-by: https://www.kickstarter.com/projects/1327597961/better-support-for-mt7620a-n-in-openwrt-lede/ Signed-off-by: Daniel Golle <daniel@makrotopia.org> |
||
---|---|---|
.. | ||
acx-mac80211 | ||
ar7-atm | ||
ath10k-ct | ||
avila-wdt | ||
brcm2708-gpu-fw | ||
broadcom-wl | ||
button-hotplug | ||
gpio-button-hotplug | ||
gpio-nct5104d | ||
hwmon-gsc | ||
i2c-gpio-custom | ||
kmod-sched-cake | ||
lantiq | ||
leds-apu2 | ||
linux | ||
mac80211 | ||
mt76 | ||
mwlwifi | ||
om-watchdog | ||
rotary-gpio-custom | ||
rtc-rv5c386a | ||
spi-gpio-custom | ||
trelay | ||
w1-gpio-custom | ||
wrt55agv2-spidevs |