I have not had the time to generalize these patches. I do note that alternate ideas for this problem landed in Linux 3.5 which are impossible to backport into Linux 3.3, so I have shelved the idea of working on generalization.
These patches were specific to the ar71xx hardware and unneeded on most other devices.
These patches were specific to the ar71xx hardware and unneeded on most other devices.