Hi folks,
I've been doing some cleanups in the broadcome brcmfmac driver, trying to
understand how it works.
I think this makes the driver a *lot* more readable.
Of note:
* Gets rid of the arbitrary and completely 1:1 mapping of
struct brcmf_{core,chip}_priv/struct brcmf_{core,chip} structures
which add unreadability whilst offering no real seperation.
* The patch titled HACK - stabilise the value of ->sbwad in use
highlights an issue that is either bizarre undocumented behaviour or a
genuine bug - without datasheets, I dont know. Essentially the value of sbwad
is taken as the base address in several functions, even though it is subject
to change should other IO occur that moves the window offset
Obviously this is a first cut at this and needs substantial cleanup itself,
however I wanted to get some idea of wether I should continue working on this.
I only have a 43430 SDIO WiFi / BT chip to test on, but other chips *should*
be unaffected by these changes.
-Ian