Comment 73 for bug 197959

Revision history for this message
Tim Gardner (timg-tpi) wrote :

SRU Justification:

Impact: b43 fails to function in a variety of scenarios

Fix Description:

1) b43: Workaround invalid bluetooth settings
This adds a workaround for invalid bluetooth SPROM settings on ASUS PCI cards. This will stop the microcode from poking with the BT GPIO line. This fixes data transmission on this device, as the BT GPIO line is used for something TX related on this device (probably the power amplifier or the radio). This patch was applied to mainline kernels with commit 1855ba7812dbd294fcfc083dc7d3b14d3b1f38db and was authored by Michael Buesch <email address hidden>.

2) ssb: Fix IRQ vectors enable for early cards.
After the release of 2.6.24, an error was found in the setup for IRQ vectors in the ssb driver. This error was fixed in the mainline kernels with commit b63009b456c8d9abe684bdf8d4bd8f27eb040019, which was authored by Larry Finger. This bug prevents any data transmission by the affected cards.

3) ssb: Fix TMS low bitmask reject code.
The Ubuntu code base for Hardy Heron includes the patch from mainline that enables the usage of BCM4311 rev 2 devices. Unfortunately, a portion of a separate patch, commit c272ef4403c271799a7f09a4ab7a236c86643843 by Larry Finger, was not incorporated; however, it is needed for these devices to function properly.

4) ssb: Fix all-ones boardflags
In the SSB SPROM a field set to all ones means the value is not defined in the SPROM. In case of the boardflags, we need to set them to zero to avoid confusing drivers. For certain cards, leaving the flags all set to 1 will prevent the card from transmitting, as has been seen for the PCI version of a BCM4301. This patch was included in mainline kernels with commit 4503183aa32e6886400d82282292934fa64a81b0.

Patch:
http://kernel.ubuntu.com/git?p=ubuntu/ubuntu-hardy.git;a=commit;h=4cf07487b2ecf1a6e1185d94ef3eb1eed8d23a7b
http://kernel.ubuntu.com/git?p=ubuntu/ubuntu-hardy.git;a=commit;h=465c3bad182b2a44e9eb0d99a0df7b839e919a52
http://kernel.ubuntu.com/git?p=ubuntu/ubuntu-hardy.git;a=commit;h=d04340b2063813a0e4aaf32725f845a424abf870
http://kernel.ubuntu.com/git?p=ubuntu/ubuntu-hardy.git;a=commit;h=d8f69fd28ba852dd49e40d5959b8c587a3812926

TEST CASE: See Bug Description