Re-structure
Split generic stuff and 20MHz implementation.
Re-structure