diff options
author | Michael Buesch <mb@bu3sch.de> | 2008-01-26 13:54:52 +0100 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@suse.de> | 2008-02-08 11:46:29 -0800 |
commit | 5df1d0f87854e9bcd6b32ad0d2e1f8676dbe9ea6 (patch) | |
tree | f1194102c35a4a884755e48e823d5a12029fe05b | |
parent | 9a87ea3ee51fb81e7a33b820a8bb59d23c7be9ef (diff) | |
download | lwn-5df1d0f87854e9bcd6b32ad0d2e1f8676dbe9ea6.tar.gz lwn-5df1d0f87854e9bcd6b32ad0d2e1f8676dbe9ea6.zip |
b43: Reject new firmware early
(not in mainline, as it is not applicable.)
We must reject new incompatible firmware early to avoid
running into strange transmission failures.
The current development tree supports newer firmware revisions.
These revisions cause strange failures on the stable 2.6.24 kernel.
Add a check to avoid confusing users a lot.
Signed-off-by: Michael Buesch <mb@bu3sch.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
-rw-r--r-- | drivers/net/wireless/b43/main.c | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/drivers/net/wireless/b43/main.c b/drivers/net/wireless/b43/main.c index d5389f3e89df..69795fd84789 100644 --- a/drivers/net/wireless/b43/main.c +++ b/drivers/net/wireless/b43/main.c @@ -1800,6 +1800,18 @@ static int b43_upload_microcode(struct b43_wldev *dev) err = -EOPNOTSUPP; goto out; } + if (fwrev > 351) { + b43err(dev->wl, "YOUR FIRMWARE IS TOO NEW. Please downgrade your " + "firmware.\n"); + b43err(dev->wl, "Use this firmware tarball: " + "http://downloads.openwrt.org/sources/broadcom-wl-4.80.53.0.tar.bz2\n"); + b43err(dev->wl, "Use this b43-fwcutter tarball: " + "http://bu3sch.de/b43/fwcutter/b43-fwcutter-009.tar.bz2\n"); + b43err(dev->wl, "Read, understand and _do_ what this message says, please.\n"); + b43_write32(dev, B43_MMIO_MACCTL, 0); + err = -EOPNOTSUPP; + goto out; + } b43dbg(dev->wl, "Loading firmware version %u.%u " "(20%.2i-%.2i-%.2i %.2i:%.2i:%.2i)\n", fwrev, fwpatch, |