LinuxQuestions.org
Visit Jeremy's Blog.
Go Back   LinuxQuestions.org > Forums > Linux Forums > Linux - Networking > Linux - Wireless Networking
User Name
Password
Linux - Wireless Networking This forum is for the discussion of wireless networking in Linux.

Notices

Reply
 
Search this Thread
Old 12-08-2006, 05:21 PM   #1
JesusFreak84
Member
 
Registered: Sep 2005
Location: Grand Rapids, MI
Distribution: Ubuntu Feisty Fawn, dual-booted with WinXP Media Center Edition 2005
Posts: 61
Blog Entries: 1

Rep: Reputation: 15
Angry Kernel upgrade, ndiswraper, google, still no wireless


Hello Happy Linux Users. I'm going to say right off I've Googled my little heart out over this, been cracking on it since July. That said...

I'm running an HP Pavilion zd8215us laptop, with a built-in Broadcom driver. (Yes, I've read the thousands of threads out there that start like this.) I'm using openSUSE 10.1.

lspci -vv spits out the following (including both eathernet and wireless card):
Code:
0b:02.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL-8139/8139C/8139C+ (rev 10)
	Subsystem: Hewlett-Packard Company Unknown device 3082
	Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B-
	Status: Cap+ 66MHz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR-
	Latency: 64 (8000ns min, 16000ns max)
	Interrupt: pin A routed to IRQ 50
	Region 0: I/O ports at 5000 [size=256]
	Region 1: Memory at c8209400 (32-bit, non-prefetchable) [size=256]
	Capabilities: [50] Power Management version 2
		Flags: PMEClk- DSI- D1+ D2+ AuxCurrent=375mA PME(D0-,D1+,D2+,D3hot+,D3cold+)
		Status: D0 PME-Enable- DSel=0 DScale=0 PME-

0b:03.0 Network controller: Broadcom Corporation BCM4306 802.11b/g Wireless LAN Controller (rev 03)
	Subsystem: Hewlett-Packard Company Unknown device 12f8
	Control: I/O- Mem- BusMaster- SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B-
	Status: Cap- 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR-
	Interrupt: pin A routed to IRQ 5
	Region 0: Memory at c8206000 (32-bit, non-prefetchable) [disabled] [size=8K]


I have tried everything to get that last [disabled] to enabled. I've tied ndiswrapper:

Code:
ndiswrapper -l
installed drivers:
bcmwl5		driver installed, hardware (14E4:4320) present
Did the whole thing in Network Manager to have it used that for the wireless card, got nothing. Can't even get the light on the computer to tell me the card is physically powered. (It was powered on when I booted out of Windows; this is a dual-boot system and the card works just dandy in Windows, so the hardware is fine.)

Upgraded the kernel. I am now using 2.6.19. Tried adding the card again, still nothing. (The output of lspci didn't change, either; not sure if it was supposed to.

The wireless is the ONLY THING here I can't get to work period, and I'd really rather surf on strange foreign networks (coffee shops, libraries, etc.,) on Linux than Windows.

The network I've been trying to get onto is the wireless in the campus library. I figured it'd be a good one since the network itself is unencrypted, so I can save WEP/WPA woes for another time.




I put this out there hoping someone with more Linux intelligence than myself (not that that takes much; I've read wikis and all this stuff, but nothing's helped, even after the line "reboot and everything should work fine,") can look at this output and tell me what I'm doing wrong, if I'm doing something wrong.

I did search the forum here before I posted this, but found nothing by someone with my exact problem.

Thanks for your time.

******
This post by a
 
Old 12-08-2006, 05:29 PM   #2
Quakeboy02
Senior Member
 
Registered: Nov 2006
Distribution: Debian Squeeze 2.6.32.9 SMP AMD64
Posts: 3,238

Rep: Reputation: 121Reputation: 121
what's the output from "ifconfig" ?
 
Old 12-08-2006, 08:43 PM   #3
JesusFreak84
Member
 
Registered: Sep 2005
Location: Grand Rapids, MI
Distribution: Ubuntu Feisty Fawn, dual-booted with WinXP Media Center Edition 2005
Posts: 61
Blog Entries: 1

Original Poster
Rep: Reputation: 15
Ack! Ment to post that.

Code:
eth0      Link encap:Ethernet  HWaddr 00:C0:9F:BC:AA:E3  
          inet addr:10.100.200.109  Bcast:10.100.255.255  Mask:255.255.0.0
          inet6 addr: fe80::2c0:9fff:febc:aae3/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:871631 errors:0 dropped:0 overruns:0 frame:0
          TX packets:26469 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:108748733 (103.7 Mb)  TX bytes:3636891 (3.4 Mb)
          Interrupt:50 Base address:0xc400 

lo        Link encap:Local Loopback  
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:6152 errors:0 dropped:0 overruns:0 frame:0
          TX packets:6152 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0 
          RX bytes:186057 (181.6 Kb)  TX bytes:186057 (181.6 Kb)
Here's iwconfig, while I'm at it:
Code:
lo no wireless extensions.

eth0  no wireless extensions.

sit0  no wireless extensions.

Last edited by JesusFreak84; 12-08-2006 at 09:27 PM.
 
Old 12-08-2006, 09:44 PM   #4
Quakeboy02
Senior Member
 
Registered: Nov 2006
Distribution: Debian Squeeze 2.6.32.9 SMP AMD64
Posts: 3,238

Rep: Reputation: 121Reputation: 121
Ugh, I'm afraid I can't help you after all. I just tried 2.6.19 myself. I've only messed with it for a few minutes, but I have at least 2 problems with it. 1) "hald" doesn't run so automounting doesn't work and 2) you guessed it, it doesn't see my wireless card (ath0) from madwifi either. Issuing modprobe ath_pci gives me an error. I'll probably play with it some more. If I figure it out, I'll repost.

ADDED:
Madwifi works my Atheros chipped card with the 2.6.19 kernel, but I had to change the Makefile.inc to disable error on Warning:

#COPTS+= -Werror

I still don't have hald working.

Last edited by Quakeboy02; 12-09-2006 at 01:07 AM.
 
Old 12-08-2006, 09:56 PM   #5
JesusFreak84
Member
 
Registered: Sep 2005
Location: Grand Rapids, MI
Distribution: Ubuntu Feisty Fawn, dual-booted with WinXP Media Center Edition 2005
Posts: 61
Blog Entries: 1

Original Poster
Rep: Reputation: 15
I only upgraded because I'd been told and heard that 2.6.17 onward supported Broadcom devices.
 
Old 12-08-2006, 10:16 PM   #6
Quakeboy02
Senior Member
 
Registered: Nov 2006
Distribution: Debian Squeeze 2.6.32.9 SMP AMD64
Posts: 3,238

Rep: Reputation: 121Reputation: 121
"I only upgraded because I'd been told and heard that 2.6.17 onward supported Broadcom devices."

You may be in luck! I found this thread:
http://www.linuxquestions.org/questi...native+support

CORRECTION:
Looks like it's more more than just setting something in the kernel config file.

Last edited by Quakeboy02; 12-08-2006 at 10:31 PM.
 
Old 12-09-2006, 06:24 AM   #7
Hangdog42
LQ Veteran
 
Registered: Feb 2003
Location: Maryland
Distribution: Slackware
Posts: 7,780
Blog Entries: 1

Rep: Reputation: 412Reputation: 412Reputation: 412Reputation: 412Reputation: 412
Quote:
Originally Posted by JesusFreak84
I only upgraded because I'd been told and heard that 2.6.17 onward supported Broadcom devices.
You're right about that. The bcm43xx driver is now in the kernel. Of course if you've compiled a custom kernel, you'll have to enable it, preferably as a module. The one thing a lot of people miss out on with bcm43xx is creating and loading firmware. I've got instructions for doing that on my help site (the link is in my sig). It is a phenomenally easy process, so don't let it scare you off of this driver.

One thing to keep in mind is that you can't have both bcm43xx and ndiswrapper loaded at the same time. Ugliness will result.

One final point about your iwconfig output. That suggests that you haven't loaded a driver. Are you loading ndiswrapper (modprobe ndiswrapper)?
 
Old 12-09-2006, 01:28 PM   #8
JesusFreak84
Member
 
Registered: Sep 2005
Location: Grand Rapids, MI
Distribution: Ubuntu Feisty Fawn, dual-booted with WinXP Media Center Edition 2005
Posts: 61
Blog Entries: 1

Original Poster
Rep: Reputation: 15
Arrow

Quote:
Originally Posted by Hangdog42
You're right about that. The bcm43xx driver is now in the kernel. Of course if you've compiled a custom kernel, you'll have to enable it, preferably as a module. The one thing a lot of people miss out on with bcm43xx is creating and loading firmware. I've got instructions for doing that on my help site (the link is in my sig). It is a phenomenally easy process, so don't let it scare you off of this driver.

One thing to keep in mind is that you can't have both bcm43xx and ndiswrapper loaded at the same time. Ugliness will result.

One final point about your iwconfig output. That suggests that you haven't loaded a driver. Are you loading ndiswrapper (modprobe ndiswrapper)?

I enabled ndiswrapper, though it obviously didn't "take" or something, and I'd followed the wiki on their site to the letter. Working on fwcutter at the moment, but when I tried to unpack it last night, the command line just hung there for over an hour (that long because I kind of forgot about it....) and nothing got done. If I try and unpack it gui-style, I get that I don't have permission to change ownership or something, and this is as root. (I don't recall the exact error, as I am booted in Windows at this exact moment.)

How would I enable the kernel Broadcom module?

Last edited by JesusFreak84; 12-09-2006 at 01:30 PM.
 
Old 12-09-2006, 02:28 PM   #9
debuser123
Member
 
Registered: Nov 2006
Distribution: Ubuntu Hardy
Posts: 69

Rep: Reputation: 15
Hangdog42, wish I would've saw your site before! Would've saved me some time!

I have an Inspiron 1000 with a Dell 1350 (Broadcomm 4306) and this is how I got it working:

1. I compiled a 2.6.29 kernel from scratch (the latest stable as of now)

2. made sure to enable the 802.11 stack stuff (modules) including the broadcomm module (don't remember the exact locations in the ui menu, but looking at my config file, seems like these are the relevant options):
Code:
CONFIG_IEEE80211=m
CONFIG_IEEE80211_DEBUG=y
CONFIG_IEEE80211_CRYPT_WEP=m
CONFIG_IEEE80211_CRYPT_CCMP=m
CONFIG_IEEE80211_CRYPT_TKIP=m
CONFIG_IEEE80211_SOFTMAC=m
CONFIG_IEEE80211_SOFTMAC_DEBUG=y
CONFIG_WIRELESS_EXT=y


CONFIG_BCM43XX=m
CONFIG_BCM43XX_DEBUG=y
CONFIG_BCM43XX_DMA=y
CONFIG_BCM43XX_PIO=y
CONFIG_BCM43XX_DMA_AND_PIO_MODE=y
# CONFIG_BCM43XX_DMA_MODE is not set
# CONFIG_BCM43XX_PIO_MODE is not set
# CONFIG_ZD1211RW is not set
CONFIG_NET_WIRELESS=y
I would assume you already have the right options in order to make pcmcia work. I don't know what every single option in the kernel does, but looking at the help for each option and some common sense should be fine (pci, hotplug, pcmcia stuff).

So after I got my kernel and bcm43xx module (and everything not-related to wireless works), you should be able to do a
Code:
# modprobe bcm43xx
and this is what I see:
Code:
# lsmod|grep bcm
bcm43xx               416416  0
firmware_class          7680  2 pcmcia,bcm43xx
ieee80211softmac       31232  1 bcm43xx
ieee80211              44008  2 bcm43xx,ieee80211softmac
Actually, once I put the card in the pcmcia slot, the bcm43xx and the other modules are automatically installed into the kernel. But if you see it listed under an lsmod command, so far so good.


3. So that's the kernel, now you have to do broadcomm-specific stuff. Like Hangdog42 mentioned, you need fwcutter and a driver file. I got fwcutter from: http://bcm43xx.berlios.de/. do a configure && make. I go the driver file from Hangdog42's site (wl_apsta.o). Now run ./bcm43xx_fwcutter wl_apsta.o assuming you have wl_apsta.o in the same dir as the fwcutter you just built. An ls now looks like:
Code:
bcm43xx-fwcutter      bcm43xx_initval05.fw  bcm43xx_microcode11.fw  COPYING          md5.c
bcm43xx-fwcutter.1    bcm43xx_initval06.fw  bcm43xx_microcode2.fw   fwcutter.c       md5.h
bcm43xx_initval01.fw  bcm43xx_initval07.fw  bcm43xx_microcode4.fw   fwcutter.h       md5.o
bcm43xx_initval02.fw  bcm43xx_initval08.fw  bcm43xx_microcode5.fw   fwcutter_list.h  README
bcm43xx_initval03.fw  bcm43xx_initval09.fw  bcm43xx_pcm4.fw         fwcutter.o
bcm43xx_initval04.fw  bcm43xx_initval10.fw  bcm43xx_pcm5.fw         Makefile
...as you can see all the .fw files were created.

4. Then, make sure you're root, and do make installfw, which really just puts all those .fw files in /lib/firmware

5. I put bcm43xx inside of /etc/modules too so that it comes up on boot, but I've found that if the card is inserted in the slot, the module gets loaded automatically.



That should be all you have to as far as drivers and modules are concerned. Then the rest is all network configuration.


My network is just set up like this:
1. wireless router(ip of 192.168.1.1) with WEP enabled
2. laptop with dell 1350 wireless card
3. pc connected to router with wire

I use static ips as I only have 2 things on the network. This is how I configured my wireless connection:

(make sure you have wireless-tools. on debian a simple #apt-get install wireless-tools)

One thing I haven't figure out is where eth0 gets its name from. eth0 is my LAN connection while eth1 is my wireless card...I would like to name it something like wlan0, but no biggie.

If you are able to do #iwconfig and you see a device that doesn't say "no wireless extensions", that's your card and you have is usable. This is what I see (before I configure wireless)
Code:
# iwconfig
lo        no wireless extensions.

eth0      no wireless extensions.

Warning: Driver for device eth1 has been compiled with version 21
of Wireless Extension, while this program supports up to version 17.
Some things may be broken...

eth1      IEEE 802.11b/g  ESSID:off/any  Nickname:"Broadcom 4306"
          Mode:Managed  Frequency=2.437 GHz  Access Point: FF:FF:FF:FF:FF:FF
          Bit Rate=1 Mb/s   Tx-Power=16 dBm
          RTS thr:off   Fragment thr:off
          Encryption key:off
          Link Quality:0  Signal level:0  Noise level:0
          Rx invalid nwid:0  Rx invalid crypt:0  Rx invalid frag:0
          Tx excessive retries:0  Invalid misc:0   Missed beacon:0

So now we must configure the wireless connection. For me, all I have to do is give the essid, usually specify a 54Mb/s rate just because, and give the wep key (I also specify Managed mode cause I'll sometime play around with Monitor mode and forget that I'm still in monitor mode).
So if my essid was: "homerouter", my wep key was: "thisismywpkey" (13 ascii characters...or 26 hex digits), this is how I would configure mine:
Code:
#iwconfig eth1 essid "homerouter" bitrate 54Mb/s key s:thisismywpkey
If I were to run iwconfig again and see that my access point didn't have MAC address of all FF-FF... (i.e., not associated), then it probably worked. Output from dmesg confirms it:
Code:
SoftMAC: Sent Authentication Request to 00:0F:8f:a3:19:9f.
SoftMAC: Open Authentication completed with 00:0F:8f:a3:19:9f
SoftMAC: sent association request!
SoftMAC: associated!
Now, I have to configure IP. Since I use static IPs, it'll just be an ifconfig, a route statement, and a modification of /etc/resolv.conf to point to my router. With dhcp, I think all you have to do is run #dhclient eth1 which should make some DHCPDISCOVER commands and if successful, you'll see a DHCPOFFER reply. But here's how I do my static stuff:

Code:
# ifconfig eth1 192.168.1.2/24
or I could have done the standard netmask
# ifconfig eth1 192.168.1.2 netmask 255.255.255.0
Code:
# route (just to see what's already there)
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
192.168.1.0     *               255.255.255.0   U     0      0        0 eth1

# route add default gw 192.168.1.1 dev eth1
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
192.168.1.0     *               255.255.255.0   U     0      0        0 eth1
default         192.168.1.1     0.0.0.0         UG    0      0        0 eth1
Then I open up /etc/resolve.conf and add this line(or modify if exists):
Code:
nameserver 192.168.1.1

Now, at this point that's all I have to do...

Do a #ifconfig eth1 up
and if the light on the card turns on and you can ping google.com, it worked. You may have to do a #iwconfig eth1 essid "homerouter" again (no need to specify the other parameters).

Oh yeah, one other thing I forgot, you should probably add this stuff to /etc/network/interfaces so that it gets configured on boot. This is how my file looks (with regards to the wireless-related stuff):
Code:
iface eth1 inet static
name Wireless LAN card
address 192.168.1.2
netmask 255.255.255.0
broadcast 192.168.1.255
network 192.168.1.0
gateway 192.168.1.1
wireless_essid homerouter
wireless_key s:thisismywpkey
wireless_bitrate 54Mb/s
wireless_mode Managed

auto eth1
any option you can do with iwconfig, just add wirless_ in front of it.

This long post was mainly for me I just got this all working last night!

Edit: and yes the numbers and keys are all fake

Last edited by debuser123; 12-09-2006 at 02:36 PM.
 
Old 12-09-2006, 02:37 PM   #10
Hangdog42
LQ Veteran
 
Registered: Feb 2003
Location: Maryland
Distribution: Slackware
Posts: 7,780
Blog Entries: 1

Rep: Reputation: 412Reputation: 412Reputation: 412Reputation: 412Reputation: 412
There are a couple of places in the kernel config you need to enable bcm43xx. The first is in Networking, you need to enable Generic IEEE 802.11 Networking Stack and Software MAC add-on. I also enable all the encryption option and the debugging output. Note that if you don't enable this stuff, you don't see the bcm43xx driver in the Device Drivers section.

Then, in Device Drivers > Network device support > Wireless LAN you'll find the bcm43xx driver itself.

I would strongly suggest compiling these all as modules as you are likely going to want to have the option to not use bmc43xx.

Quote:
If I try and unpack it gui-style, I get that I don't have permission to change ownership or something, and this is as root.
You shouldn't need to be root to unpack and compile fwcutter. The only time you'll need to be root is when you copy the firmware files to /lib/firmware.


Quote:
I enabled ndiswrapper, though it obviously didn't "take" or something, and I'd followed the wiki on their site to the letter.
This is too vague for us to help you with ndiswrapper. If you want to use it, you'll have to post some details about what you did, what happened when you did it and any place that it seems to have gone awry. My experience is that the ndiswrapper wiki is usually spot on, so something went haywire somewhere. Again, details will help sort it out.
 
  


Reply


Thread Tools Search this Thread
Search this Thread:

Advanced Search

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
Kernel upgrade for intel 3945 wireless man_linux Linux - Wireless Networking 1 11-01-2006 06:33 AM
Wireless Broken After Kernel Upgrade to 2.6.17_1.2139_FC5 lavie Linux - Wireless Networking 5 06-29-2006 04:24 PM
No more wireless after kernel upgrade Fayble Linux - Wireless Networking 6 04-15-2006 07:39 PM
Kernel upgrade needed to go wireless Erlend Greig Red Hat 0 01-14-2005 12:50 PM
madwifi wireless NIC drivers quit after kernel upgrade m_a_b Linux - Laptop and Netbook 5 08-16-2004 11:35 AM


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

Main Menu
My LQ
Write for LQ
LinuxQuestions.org is looking for people interested in writing Editorials, Articles, Reviews, and more. If you'd like to contribute content, let us know.
Main Menu
Syndicate
RSS1  Latest Threads
RSS1  LQ News
Twitter: @linuxquestions
identi.ca: @linuxquestions
Facebook: linuxquestions Google+: linuxquestions
Open Source Consulting | Domain Registration