LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   Linux - Wireless Networking (http://www.linuxquestions.org/questions/linux-wireless-networking-41/)
-   -   Broadcom wireless PCI card in Fedora 6 (http://www.linuxquestions.org/questions/linux-wireless-networking-41/broadcom-wireless-pci-card-in-fedora-6-a-550812/)

SlowCoder 05-02-2007 08:05 PM

Broadcom wireless PCI card in Fedora 6
 
I have a Belkin F5D7001 (Broadcom BCM4318 chip) PCI wireless card installed in my test PC. Fedora 6 recognizes it in lspci, and I can configure it in the Gnome network manager. However, I am unable to establish a connection to my wireless router.

If it shows in lspci, does that mean the driver has been selected and loaded in the kernel?

Where should I start in troubleshooting my situation?

Also, in the Gnome network configuration manager, there are no wireless settings available for choosing WEP/WPA, etc. Is there a way to do this?

osor 05-02-2007 08:24 PM

Quote:

Originally Posted by SlowCoder
If it shows in lspci, does that mean the driver has been selected and loaded in the kernel?

No, but if it shows in lsmod, it does.
Quote:

Originally Posted by SlowCoder
Where should I start in troubleshooting my situation?

First, use “iwconfig” to see if you have a configurable interface. If so, use iwconfig to configure your interface too (depending on the card, you might use iwconfig or iwpriv for WPA keys). After that, use ifconfig (or dhclient) to set up the networking part. After you see everything is working, then I would suggest troubleshooting the GUI interface.

sparc86 05-02-2007 08:49 PM

I know this card. You're gonna need an external module. Google for it and then install this module to your kernel and then recompile your kernel with the new module.

Hangdog42 05-03-2007 06:37 AM

This card can use one of two drivers, bcm43xx (which is a native linux driver) and ndiswrapper. I would suggest using ndiswrapper as the 4318 chipset doesn't work very well with bcm43xx.

I would bet that Fedora is picking up your card based on bcm43xx. The problem is that Fedora doesn't distribute the firmware needed for this card to run. For that you need to use a program called fwcutter and a Windows driver. I've got instructions on how to create and install firmware on my help site. However, as I said, for this chipset you are much better off using ndiswrapper and there are good install instructions on the ndiswrapper wiki. Just be sure to blacklist the bcm43xx module as having both drivers loaded will cause conflicts.

SlowCoder 05-03-2007 08:26 PM

Quote:

Originally Posted by Hangdog42
Just be sure to blacklist the bcm43xx module as having both drivers loaded will cause conflicts.

How do I go about doing this? 'modprobe -r bcm43xx'? I've not done this before and don't want to blow away my system.

Update: I've tried the instructions from this site: http://fedoranews.org/mediawiki/inde...ng_Ndiswrapper
I've downloaded and tried a couple of different driver versions.
When I get to the "View Installation of Driver" portion of the instructions, I don't get
Code:

bcmwl5          driver present, hardware present
Instead, I get
Code:

bcmwl5      driver present
device (14E4:4318) present (alternate driver: bcm43xx)

I've tried removing the bcm43xx module using "modprobe -r bcm43xx", which seems to temporarily remove it from lsmod, but I continue to get /lib/modules/2.6.18-1.2798.fc6/kernel/drivers/net/wireless/bcm43xx/bcm43xx.ko listed in modprobe.

So ... I'm lost. Don't know what I'm doing. Can't get it to work ...
Help ... :confused:

Hangdog42 05-04-2007 06:51 AM

Quote:

How do I go about doing this? 'modprobe -r bcm43xx'? I've not done this before and don't want to blow away my system.
Modprobe -r won't blow away your system. It just removes a module from use for that session and can be reversed either by using modprobe to reload the module or by a reboot. A more permanent solution is to add the bcm43xx module to your /etc/modprobe.d/blacklist file. That tells the system to never load that module. And since it is a text file, it can easily be reversed if you later decide to use bcm43xx.


Quote:

I've tried removing the bcm43xx module using "modprobe -r bcm43xx", which seems to temporarily remove it from lsmod, but I continue to get /lib/modules/2.6.18-1.2798.fc6/kernel/drivers/net/wireless/bcm43xx/bcm43xx.ko listed in modprobe.
The modprobe command just shows the modules that are available, and doesn't speak to whether or not they are in use. If lsmod lists the module, then it is in use. So NOT having bcm43xx in lsmod but seeing it in modprobe is fine. It is lsmod that is the important one here.

So far your ndiswrapper output looks fine, so once you've removed bcm43xx, try configuring the card and requesting an IP address.

SlowCoder 05-04-2007 10:05 AM

hangdog, great information. Learning a lot here.

Quote:

Originally Posted by Hangdog42
So far your ndiswrapper output looks fine, so once you've removed bcm43xx, try configuring the card and requesting an IP address.

I can view the card's config using iwconfig, but when I view ifconfig, it's not listed.

Using iwconfig, I've tried configuring the mode to "managed", because it's connecting to a router, matching the frequency to the router, turned off encryption (open) in the router, and on the card.

Issuing 'ifup eth1' tells me it can't retrieve an IP.

Hangdog42 05-04-2007 01:42 PM

Quote:

Using iwconfig, I've tried configuring the mode to "managed", because it's connecting to a router, matching the frequency to the router, turned off encryption (open) in the router, and on the card.
Do you ever set the essid value to match the SSID of the router? That is critical to getting the card to associate with the router, and you can't get an IP without associating. Post the output of iwconfig if you've got questions about what you're seeing.

Quote:

I can view the card's config using iwconfig, but when I view ifconfig, it's not listed.
That's actually pretty normal. You usually have to issue and ifconfig eth1 up or ifup eth1 before it shows up in ifconfig. Also, if ifup isn't getting an IP address, have a look in your log files (/var/log/messages, /var/log/syslog and the output of the dmesg command) and see if there is any complaining.

SlowCoder 05-04-2007 11:16 PM

Grrr ...

I have gone so far as to completely reinstall FC6 here. It's a test box, so I don't care.

Where I am ...
FC6 with full updates
Installed livna repo
Installed ndiswrapper with yum
Added 'blacklist bcm43xx' to /etc/modprobe.d/blacklist AND /etc/modprobe.d/blacklist-compat (for completeness)
Ran ndiswrapper -i [driver] to install driver.
Rebooted

Running 'lsmod' at this point still shows bcm43xx running!
Running 'ndiswrapper -l' still indicates that it's using the alternate bcm43xx driver.

Hangdog42 05-05-2007 07:32 AM

Quote:

Running 'ndiswrapper -l' still indicates that it's using the alternate bcm43xx driver.
I'm pretty sure that is ndiswrapper just stating that there is an alternative driver to be aware of. It doesn't indicate that the alternate driver is actually loaded or being used. My rig does the same thing when I know bcm43xx isn't loaded.

Quote:

Running 'lsmod' at this point still shows bcm43xx running!
OK, that is a problem. That does show bmc43xx is loaded and functioning. A couple of things to try:

1) Post the relevant section of your blacklist. Maybe there is a syntax error.
2) Use modprobe -r bcm43xx followed by modprobe ndiswrapper to get ndiswrapper running all by itself.

Once that is done and you've configured your card, post your iwconfig and ifconfig output along with the commands (and any errors) of the configuration.

SlowCoder 05-05-2007 02:30 PM

Code:

I'm pretty sure that is ndiswrapper just stating that there is an alternative driver to be aware of. It doesn't indicate that the alternate driver is actually loaded or being used. My rig does the same thing when I know bcm43xx isn't loaded.
Yes, I think you're right. But it was misleading to me.

Here is my blacklist:
Code:

# mode tools can also control driver binding.
#
# Syntax:  driver name alone (without any spaces) on a line. Other
# lines are ignored.
#

blacklist bcm43xx

# watchdog drivers
blacklist i8xx_tco

# framebuffer drivers
blacklist aty128fb
blacklist atyfb
blacklist radeonfb
blacklist i810fb
blacklist cirrusfb
blacklist intelfb
blacklist kyrofb
blacklist i2c-matroxfb
blacklist hgafb
blacklist nvidiafb
blacklist rivafb
blacklist savagefb
blacklist sstfb
blacklist neofb
blacklist tridentfb
blacklist tdfxfb
blacklist virgefb
blacklist vga16fb

# ISDN - see bugs 154799, 159068
blacklist hisax
blacklist hisax_fcpcipnp

Yes, it appears that issuing
Code:

modprobe -r bcm43xx
modprobe -i ndiswrapper

works! I'm on the network. This makes me feel much better!
However, I do need to manually issue both commands each time the system is booted.

sparc86 05-06-2007 01:10 AM

Quote:

However, I do need to manually issue both commands each time the system is booted.
No you don't.
Just write a small script with these commands inside, set + permission to the script and be happy! :D

Eg:

#touch script.sh
#echo modprobe ndiswrapper > script.sh
------------------------------------------

However, if you're sure you're not going to use the bcm43xx module, you should uninstall it from your system, despite unloading it everytime you boot-up the system.

Hangdog42 05-06-2007 08:01 AM

If that blacklist isn't working, you'll probably need to go with sparc86's suggestion and write a little script so that getting the card up and running is a one command deal. Honestly, I don't know why that blacklist isn't working. It looks good to me.

SlowCoder 05-06-2007 07:45 PM

Quote:

Originally Posted by Hangdog42
If that blacklist isn't working, you'll probably need to go with sparc86's suggestion and write a little script so that getting the card up and running is a one command deal. Honestly, I don't know why that blacklist isn't working. It looks good to me.

Yes, I'd thought of that, and considered it.

However, this raises a new question: Why isn't the blacklist working? I'm wondering if there could be a larger issue here, non-related to the original post?

Hangdog42 05-07-2007 08:11 PM

It certainly is possible that there is some larger problem here. You might want to start a thread in the Fedora forum and ask about blacklisting modules, because from my perspective it looks as if you did it correctly. I know that Fedora is including some security stuff like SELinux and some virtualization stuff like Xen, that have caused various odd problems and it could be one of those is interfering with the blacklist.


All times are GMT -5. The time now is 05:30 AM.