This driver is barely functional in its current state.

Kevin McKinney(klmckinney1@gmail.com) and Matthias Beyer(mail@beyermatthias.de)
are currently maintaining/cleaning up this driver.  Please copy us on all
patches.  More maintainers are aways welcomed.

BIG:
	- existing API is (/dev/tarang) should be replaced
	  Is it possible to use same API as Intel Wimax stack and
	  have same user level components.
	- Qos and queue model is non-standard and inflexible.
	  Use existing TC Qos?

TODO:
	- support more than one board - eliminate global variables
	- remove developer debug BCM_DEBUG() macros
	  add a limited number of messages through netif_msg()
	- fix non-standard kernel style
	- checkpatch warnings
	- use request firmware
	- fix use of file I/O to load config with better API
	- merge some files together?
	- cleanup/eliminate debug messages



