blob: d84bc8aa1768122c22c253e2f0e2c5cc53e09e73 [file] [log] [blame]
From zajec5@gmail.com Wed Nov 16 15:21:46 2011
From: Rafał Miłecki <zajec5@gmail.com>
Date: Tue, 8 Nov 2011 17:15:03 +0100
Subject: b43: refuse to load unsupported firmware
To: greg@kroah.com
Cc: linux-wireless@vger.kernel.org, b43-dev@lists.infradead.org, roman-vl@meta.ua, Rafał Miłecki <zajec5@gmail.com>
Message-ID: <1320768903-8731-1-git-send-email-zajec5@gmail.com>
[This patch is supposed to be applied in 3.1 (and maybe older) branches only.]
New kernels support newer firmware that users may try to incorrectly use
with older kernels. Display error and explain the problem in such a case
Signed-off-by: Rafał Miłecki <zajec5@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
---
drivers/net/wireless/b43/main.c | 7 +++++++
1 file changed, 7 insertions(+)
--- a/drivers/net/wireless/b43/main.c
+++ b/drivers/net/wireless/b43/main.c
@@ -2401,6 +2401,13 @@ static int b43_upload_microcode(struct b
b43_print_fw_helptext(dev->wl, 1);
err = -EOPNOTSUPP;
goto error;
+ } else if (fwrev >= 598) {
+ b43err(dev->wl, "YOUR FIRMWARE IS TOO NEW. Support for "
+ "firmware 598 and up requires kernel 3.2 or newer. You "
+ "have to install older firmware or upgrade kernel.\n");
+ b43_print_fw_helptext(dev->wl, 1);
+ err = -EOPNOTSUPP;
+ goto error;
}
dev->fw.rev = fwrev;
dev->fw.patch = fwpatch;