b43/SSB: SPROM revision problem
Rafał Miłecki
zajec5 at gmail.com
Fri Oct 22 07:23:45 EDT 2010
I've problem with initializing N radio (2055) on my Broadcom card.
In case of my card simple workaround [1] for radio initialization is
needed. If I do not use workaround radio simply does not start. I
dumped MMIO operations of "wl" and it uses workaround for my card as
well.
The problem is that workaround condition is SPROM-based. It looks like this:
if (sprom->revision < 4)
workaround = (some_specific_card);
else
workaround = ((sprom->boardflags_hi & B43_BFH_NOPA) == 0);
So now goes the tricky part. My SSB has following SPROM:
[ 6208.080097] ssb: SPROM offset is 0x1000
[ 6208.089815] ssb: SPROM revision 5 detected.
However in drivers/ssb/pci.c there are some translations, including
one for my card. My SPROM revision gets translated to 4. The result
is:
sprom->revision: 4
sprom->boardflags_hi: 0x1
With that revision and boardflags workaround is not used and my radio
does not init. There are two possibilities:
1) Specs are wrong
2) We do SPROM translation incorrectly
Any hints about that?
[1] http://bcm-v4.sipsolutions.net/802.11/Radio/2055/Init#Post_Init
--
Rafał
More information about the b43-dev
mailing list