uap8xxx: Import uAP support for Marvell sd8686 chips

Patch imported from:
https://github.com/chrisw957/meta-gumstix/blob/d0dbc51e1643860f9066c5e817db023fb062362c/recipes-kernel/linux/linux-sakoman-3.5/libertas_uap.patch
uap8xxx: General code cleanup

Indentation and style:
- Make uses always tabs.
- Ensure that code looks nice with 8-spaces per tab.
- Removed extra uneeded spaces around "*" for pointers.

Other:
- Removed dead code marked with "#if 0 ... #endif"
uap8xxx: Update driver to new procfs API

Update the usage of the procfs API done by the driver.
uap8xxx: Remove support for old kernels

The driver is to be maintained in-sync with the kernel sources, so there is
no use in keeping the #ifdef'd branches for different kernel versions.
uap8xxx: Clean up code style and comments
uap8xxx: Set names for firmware files as fixed

Define default names of firmware files (mrvl/sd8688_helper.bin and
mrvl/sd8688_ap.bin) and declare them with MODULE_FIRMWARE(). Also,
remove the fw_name and helper_name module parameters. There is
only one set of firmware known to work with the driver, so it is
of little use to keep them around.
uap8xxx: Remove macros for GCC attribute usage

In the kernel source the norm is to use the __attribute__(...) syntax,
so make the driver use it instead of defining auxiliar macros.
uap8xxx: Use functions directly instead of macros

The norm in the kernel source is to use kernel functions and avoid
macros which do not add a significative amount of code simplification.
Moreover, using standard kernel symbol names allows to better keep up
with changes in code out of the driver.
uap8xxx: Inline sparsely used functions

Some small functions are used only a small number of times, so the code is
actually clearer when those are expanded in-line in their call sites.