Re: Wireless interface stopped working in Etch
Hello Florian. Here are the answers to your questions and suggestions. I
would be grateful for any other thoughts you might have.
Florian Kulzer wrote:
On Fri, Nov 10, 2006 at 20:46:11 +0000, Chris Lale wrote:
[...]
It seems that the kernel modules are different. lsmod reports what looks
like a difference in size:
original system:
rt2500 149988 1
fresh install:
rt2500 151748 1
Is it possible to copy the module over from the original system to the
new system? Which files are involved?
The file should be called "rt2500.ko" and it will be somewhere in
/lib/modules/<kernel-version>/kernel/drivers/net/ or thereabouts. If you
run "dpkg-deb --contents" on the .deb file that you generated with
module-assistant you will get a listing of all file locations.
I am not sure if the other kernel will let you load the module since the
version magic string will probably not match.
(see "/sbin/modinfo rt2500 | grep vermagic")
I don't now think that the problem lies with the rt2500 module produced
by module assistant from the rt2500-source package. The rt2500 modules
seem identical on the working system and the fresh install. They have
the same file size and the same magic string "2.6.17-2-686 SMP
mod_unload 686 REGPARM gcc-4.1". I copied rt2500.ko from the working
install to the fresh install. It did not object, but it did not solve
the problem either.
I would first poke at a few other things:
dmesg | egrep 'wlan0|rt2500'
I have begun again with a new fresh install, so the wireless interface
has been autmatically named 'eth1'. I have not changed it to 'wlan0'
this time. The interface on the working system remains 'wlan0'.
dmesg reports this when the wireless pccard is ejected and reinserted
(identical on both systems):
pccard: card ejected from slot 0
ACPI: PCI interrupt for device 0000:02:00.0 disabled
pccard: Cardbus card inserted into slot 0
PCI: Enabling device 0000:02:00.0 (0000 -> 0002)
ACPI: PCI Interrupt 0000:02:00.0[A] -> Link [LNKA] -. GSI 11 (level,
low) -> IRQ 11
rt2500 1.1.0 CVS 2005/07/10 http://rt2x00.serialmonkey.com
PCI: Seting latency timer of device 0000:02:00.0 to 64
dmesg | egrep 'eth1|rt2500' gives this (identical on both systems):
rt2500 1.1.0 CVS 2005/07/10 http://rt2x00.serialmonkey.com
rt2500 1.1.0 CVS 2005/07/10 http://rt2x00.serialmonkey.com
Are you able to set ESSID and key with "iwconfig" directly?
Yes. iwconfig initially shows this (identical on both systems):
RT2500 Wireless ESSID:""
[...]
Encryption key:off
Link Quality-0/100 Signal level=-120dBm Noise level:-256 dBm
[...]
After 'iwconfig eth1 essid solarsystem', and 'iwconfig eth1 key
restricted 1234567890' iwconfig reports this (identical on both systems):
RT2500 Wireless ESSID:"solarsystem"
[...]
Encryption key:1234-5678-90 Security mode:restricted
Link Quality-0/100 Signal level=-120dBm Noise level:-256 dBm
[...]
So, it seems that the signal is not yet detected, and there is no link
yet. (Later, after bringing up the interface on the working system, the
signal level is reported as being around -77dBm.)
Does the
card associate with the access point? Can you detect the beacon of the
AP with "iwlist wlan0 scan"? Any error messages?
No, not at this point. 'iwlist eth1 scan' issued repeatedly on either
system always gives
eth1 No scan results
If I bring up the interface on the working system with 'ifconfig wlan0
up, these appear in dmesg:
spurious 8529A interrupt: IRQ15
(Link and Tx/Rx interface leds both light up)
wlan0: no IPv6 routers present
Issuing 'iwlist wlan0 scan' repeatedly gives a list of local APs, with
mine always in Cell 01 and showing the signal level and that there is a
link eg
Quality:62/100 Signal level:-77dBm Noise level:-195dBm
If I bring up the interface on the fresh install with 'ifconfig eth1
up', no leds light up and only this message appears in dmesg:
spurious 8529A interrupt: IRQ15.
If I issue 'iwlist eth1 scan' at intervals of a second or more, I still get
eth1 No scan results
However, if I do 'iwlist eth1 scan' twice in quick succession, I get a
list of various cells identifying neighbouring APs including my own
(solarsystem). 'iwconfig' still shows no link.
If I take down the interface on either system (eg with 'ifconfig eth1
down'), 'iwlist eth1 scan' or 'iwlist wlan0 scan' report the first few
cells (excluding my own) regardless of the interval between commands.
My /etc/network/interfaces file has this added to it (identical on both
systems apart from the interface name):
iface eth1 inet static
address 192.168.1.5
netmask 255.255.255.0
gateway 192.168.1.1
wireless-essid solarsystem
wireless-key 1234567890
On the fresh install after 'ifup eth1', repeatedly issuing 'iwlist eth1
scan' sometimes reports 'No scan results',sometimes a number of cells
including my own, sometimes a number of cells excluding my own.
'iwconfig' shows that there is still no link.
It could also be that you are missing some other modules, e.g. some
parts of the ieee80211 stack.
No ieee80211 packages are installed on either system.
You could try if the driver works with
WEP/WPA disabled at the AP.
Disabling WEP/WPA on the AP and setting encryption key off makes no
difference.
Diff'ing the output of "lsmod"
A diff of lsmod shows the modules in a different order on each system. I
ran sort on the result of each lsmod and looked at the result with comm.
The 1st column shows lines unique to the fresh install, the 2nd column
shows lines unique to the working install and the 3rd column shows lines
common to both:
1st 2nd 3rd
8250_pci 19840 0
8250_pnp 8704 0
ac 4836 0
ac97_codec 17164 1 cs46xx
agpgart 29864 1 intel_agp
agpgart 29864 2 drm,intel_agp
autofs4 19460 0
battery 9188 0
binfmt_misc 11016 1
button 6544 0
crc_ccitt 2208 1 irda
cs46xx 56236 0
dm_mirror 18928 0
dm_mod 50424 2 dm_snapshot,dm_mirror
dm_snapshot 16032 0
drm 61556 3 savage
e100 31364 0
evdev 9088 0
evdev 9088 2
ext3 118568 1
fan 4516 0
fat 46588 1 msdos
fat 46588 2 vfat,msdos
firmware_class 9696 1 pcmcia
floppy 54276 1
gameport 14344 2 snd_cs46xx
generic 4420 0 [permanent]
i2c_core 19552 1 i2c_piix4
i2c_piix4 8464 0
ide_core 111016 3 ide_disk,piix,generic
ide_disk 15072 3
intel_agp 21116 1
ipv6 222304 14
irda 162364 3 irtty_sir,sir_dev,nsc_ircc
irtty_sir 7776 0
jbd 50292 1 ext3
lockd 53256 1 nfs
loop 14888 0
lp 10852 0
mbcache 8324 1 ext3
mii 5312 1 e100
Module Size Used by
mousedev 10788 0
mousedev 10788 1
msdos 8704 0
msdos 8704 1
nfs 194636 0
nfs_acl 3552 1 nfs
nls_cp437 5888 1
nls_iso8859_1 4224 1
nsc_ircc 20784 0
nvram 8360 1
parport 33160 1 parport_pc
parport 33160 3 ppdev,lp,parport_pc
parport_pc 32132 0
parport_pc 32132 1
pci_hotplug 27196 1 shpchp
pcmcia 34012 0
pcmcia_core 37300 3
pcmcia,yenta_socket,rsrc_nonstatic
pcspkr 3040 0
piix 9476 0 [permanent]
ppdev 8516 0
processor 25512 1 thermal
psmouse 34600 0
rsrc_nonstatic 11968 1 yenta_socket
rt2500 149988 1
rtc 12340 0
savage 28416 2
serio_raw 6596 0
shpchp 34272 0
sir_dev 15364 1 irtty_sir
snd 48100 10
snd_cs46xx,snd_rawmidi,snd_seq_device,snd_ac97_codec,snd_pcm_oss,snd_mixer_oss,snd_pcm,snd_timer
snd 48100 6
snd_cs46xx,snd_rawmidi,snd_seq_device,snd_ac97_codec,snd_pcm,snd_timer
snd_ac97_bus 2368 1 snd_ac97_codec
snd_ac97_codec 82720 1 snd_cs46xx
snd_cs46xx 76264 0
snd_cs46xx 76264 1
snd_mixer_oss 15872 1 snd_pcm_oss
snd_page_alloc 9512 2 snd_cs46xx,snd_pcm
snd_pcm 74532 2 snd_cs46xx,snd_ac97_codec
snd_pcm 74532 3
snd_cs46xx,snd_ac97_codec,snd_pcm_oss
snd_pcm_oss 35968 0
snd_rawmidi 22560 1 snd_cs46xx
snd_seq_device 7756 1 snd_rawmidi
snd_timer 20836 1 snd_pcm
soundcore 9216 1 snd
soundcore 9216 2 cs46xx,snd
sunrpc 137884 4 nfs,lockd,nfs_acl
thermal 12904 0
tsdev 7392 0
uhci_hcd 20424 0
uinput 8256 1
usbcore 111616 2 uhci_hcd
vfat 11840 1
yenta_socket 23884 3
Is there a way of finding out what causes a particular module to be loaded?
and the
kernel configuration for both cases might be helpful, too.
The kernel configuration files are identical according to both diff and
comm.
Phew!
--
Chris.
Reply to: