I have a custom i.MX28 board with a SDIO wifi chip attached. Using iperf I noticed a much lower data throughput on Linux mainline 4.7 (5Mbit/sec) compared to the legacy vendor Kernel 2.6.35 (20Mbit/sec).
I think, the difference is that legacy Linux implements a polling mode, you can find it by the reference ENGR0015175 which is missing in the mainline kernel.
I know that mainline Linux is not officially supported, however the vendor kernel did not receive any updates for several years!
Please be so kind and add this missing feature to mainline Linux .