aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless/b43/main.c
diff options
context:
space:
mode:
authorMichael Buesch <mb@bu3sch.de>2008-02-08 18:18:35 -0500
committerJohn W. Linville <linville@tuxdriver.com>2008-02-15 13:44:18 -0500
commit26bc783f8cf7227718f8b4cbc32f0c3a898b128f (patch)
tree5931dced09999f8786d09aad23bba4faaa2aa56a /drivers/net/wireless/b43/main.c
parent8e118f0ed866afab654a438b85643d4f1472f28b (diff)
b43: Add driver load messages
This adds printk messages with basic information about the driver being loaded. This information includes a summary of the compiled-in features, which simplifies bug-reporting and debugging a lot. Also a firmware ID is printed. This is a unique identifier blob for a specific version of the firmware. This ID is attached to a specific version of the firmware blob in b43-fwcutter (see fwcutter git). This helps users to select the right firmware for their device. This also makes it possible to use automated scripts to fetch and extract the right firmware for the driver. (the script will grep the .ko for the "Firmware-ID: xxx" string. While the driver might still support other versions of the firmware for backward compatibility, this will always print out the officially supported version, which people _should_ use. Signed-off-by: Michael Buesch <mb@bu3sch.de> Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers/net/wireless/b43/main.c')
-rw-r--r--drivers/net/wireless/b43/main.c28
1 files changed, 28 insertions, 0 deletions
diff --git a/drivers/net/wireless/b43/main.c b/drivers/net/wireless/b43/main.c
index ef65c41af00f..e55823cc3027 100644
--- a/drivers/net/wireless/b43/main.c
+++ b/drivers/net/wireless/b43/main.c
@@ -4200,6 +4200,33 @@ static struct ssb_driver b43_ssb_driver = {
4200 .resume = b43_resume, 4200 .resume = b43_resume,
4201}; 4201};
4202 4202
4203static void b43_print_driverinfo(void)
4204{
4205 const char *feat_pci = "", *feat_pcmcia = "", *feat_nphy = "",
4206 *feat_leds = "", *feat_rfkill = "";
4207
4208#ifdef CONFIG_B43_PCI_AUTOSELECT
4209 feat_pci = "P";
4210#endif
4211#ifdef CONFIG_B43_PCMCIA
4212 feat_pcmcia = "M";
4213#endif
4214#ifdef CONFIG_B43_NPHY
4215 feat_nphy = "N";
4216#endif
4217#ifdef CONFIG_B43_LEDS
4218 feat_leds = "L";
4219#endif
4220#ifdef CONFIG_B43_RFKILL
4221 feat_rfkill = "R";
4222#endif
4223 printk(KERN_INFO "Broadcom 43xx driver loaded "
4224 "[ Features: %s%s%s%s%s, Firmware-ID: "
4225 B43_SUPPORTED_FIRMWARE_ID " ]\n",
4226 feat_pci, feat_pcmcia, feat_nphy,
4227 feat_leds, feat_rfkill);
4228}
4229
4203static int __init b43_init(void) 4230static int __init b43_init(void)
4204{ 4231{
4205 int err; 4232 int err;
@@ -4211,6 +4238,7 @@ static int __init b43_init(void)
4211 err = ssb_driver_register(&b43_ssb_driver); 4238 err = ssb_driver_register(&b43_ssb_driver);
4212 if (err) 4239 if (err)
4213 goto err_pcmcia_exit; 4240 goto err_pcmcia_exit;
4241 b43_print_driverinfo();
4214 4242
4215 return err; 4243 return err;
4216 4244