Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
Intel 4965AGN WiFi Mini Wireless Card setup help pls?
View unanswered posts
View posts from last 24 hours

 
Reply to topic    Gentoo Forums Forum Index Kernel & Hardware
View previous topic :: View next topic  
Author Message
stardotstar
l33t
l33t


Joined: 10 Feb 2006
Posts: 887
Location: 2074/SYD/NSW/AU

PostPosted: Mon Nov 10, 2008 7:01 am    Post subject: Intel 4965AGN WiFi Mini Wireless Card setup help pls? Reply with quote

Hi All,

The original card in my MSI Wind was not at all well supported by all accounts around the web so I elected to void my warranty (arguably anyway) and add an extra Gig of ram and the Intel Mini PCI express 4965AGN card.

Now that I lspci I can see an intel network controller but not the full details that some of the other lspci's I see around the web provide to wit:
Code:
$ lspci -s 0c:00.0
0c:00.0 Network controller: Intel Corporation PRO/Wireless 4965 AG or AGN Network Connection (rev 61)


vs what I get:
Code:

02:00.0 Network controller: Intel Corporation Device 4229 (rev 61)
   Subsystem: Intel Corporation Device 1100
   Flags: fast devsel, IRQ 17
   Memory at dfc00000 (64-bit, non-prefetchable) [size=8K]
   Capabilities: [c8] Power Management version 3
   Capabilities: [d0] Message Signalled Interrupts: Mask- 64bit+ Queue=0/0 Enable-
   Capabilities: [e0] Express Endpoint, MSI 00
   Kernel driver in use: iwl4965


as you can see the iwl4965 kernel driver (from the 2.6.25 gentoo sources kernel itself - built in) is linked to it.

The interface seems to be created:
Code:

eddy init.d # iwconfig
lo        no wireless extensions.

eth0      no wireless extensions.

wmaster0  no wireless extensions.

wlan0     IEEE 802.11g  ESSID:"" 
          Mode:Managed  Frequency:2.412 GHz  Access Point: Not-Associated   
          Tx-Power=27 dBm   
          Retry min limit:7   RTS thr:off   Fragment thr=2352 B   
          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

and I have tried to setup my conf.d/net and wpa_supplicant.conf properly using net.wlan0 symlinked to eth0

Code:
eddy init.d # ls -l net.*
lrwxrwxrwx 1 root root     6 Nov  3 19:17 net.eth0 -> net.lo
-rwxr-xr-x 1 root root 30696 Feb 29  2008 net.lo
lrwxrwxrwx 1 root root    20 Nov 10 17:29 net.wlan0 -> /etc/init.d/net.eth0
...
.../etc/conf.d/net (extract)
modules=( "ifconfig" )
modules=( "wpa_supplicant" )
modules_eth0=( "dhcpcd" )
mac_eth0="00:08:74:94:78:45"
config_eth0=( "dhcp" )
wpa_supplicant_wlan0="-Dmadwifi"
config_wlan0=( "dhcp" )
...
.../etc/wpa_supplicant.conf (extract)
ctrl_interface=/var/run/wpa_suplicant
ctrl_interface_group=0
ap_scan=1

network={
        key_mgmt=NONE
        priority=-9999999
}
network={
        ssid="skink"
        key_mgmt=WPA-PSK
        psk="secret"
}


so I am not sure if -Dmadwifi is what I should have and am searching now. Also this is the problem when I try to invoke the net.wlan0

Code:

eddy init.d # ./net.wlan0 start
 * Starting wlan0
SIOCSIFFLAGS: No such file or directory
SIOCSIFFLAGS: No such file or directory
 *   Starting wpa_supplicant on wlan0 ...
SIOCSIFFLAGS: No such file or directory
SIOCSIFFLAGS: No such file or directory
Could not set interface 'wlan0' UP
ioctl[IEEE80211_IOCTL_SETPARAM]: Operation not supported
Failed to initialize driver interface
/lib/rcscripts/sh/rc-daemon.sh: line 231: 10225 Segmentation fault      /sbin/start-stop-daemon '--start' '--exec' '/sbin/wpa_supplicant' '--pidfile' '/var/run/wpa_supplicant-wlan0.pid' '--' '-Dmadwifi' '-c/etc/wpa_supplicant/wpa_supplicant.conf' '-W' '-W' '-B' '-iwlan0' '-P/var/run/wpa_supplicant-wlan0.pid'     [ !! ]
eddy init.d #



I have wireless tools and the wpa_supplicant with which I have some considerable experience with other cards - but never the mini pci or draft n cards...

With the wiki stuffed I am not able to turn to my usual sources of fresh ideas :)

Any and all assistance sincerely sought.

Regards,
\\'
_________________
]8P
Back to top
View user's profile Send private message
d2_racing
Bodhisattva
Bodhisattva


Joined: 25 Apr 2005
Posts: 13047
Location: Ste-Foy,Canada

PostPosted: Mon Nov 10, 2008 12:42 pm    Post subject: Reply with quote

Hi, first you need to do this :

Code:

# rm /etc/init.d/net.wlan0
# rm /etc/init.d/net.eth0
# ln -s net.lo net.wlan0
# ln -s net.lo net.eth0


Also, can you post this :

Code:

# equery list iwl


You need to have the iwl4954-ucode package.

After that, your /etc/conf.d/net should be like this :

Code:

mac_eth0="00:08:74:94:78:45"
config_eth0=( "dhcp" )

modules=( "wpa_supplicant" )
wpa_supplicant_wlan0_="-Dwext"
config_wlan0=( "dhcp" )


And you /etc/wpa_supplicant/wpa_supplicant.conf
Code:

ctrl_interface=/var/run/wpa_supplicant
ctrl_interface_group=wheel
ap_scan=0
#update_config=1


network={
        key_mgmt=NONE
        priority=-9999999
}
network={
        ssid="skink"
        key_mgmt=WPA-PSK
        psk="secret"
        priority=5
}

Back to top
View user's profile Send private message
d2_racing
Bodhisattva
Bodhisattva


Joined: 25 Apr 2005
Posts: 13047
Location: Ste-Foy,Canada

PostPosted: Mon Nov 10, 2008 12:44 pm    Post subject: Reply with quote

Also, for the record, can you post this :

Code:

# rmmod iwl4965
# modprobe iwl4965
# dmesg | tail
# iwconfig
# ifconfig -a
# /etc/init.d/net.wlan0 start
# iwconfig
# ifconfig -a
# wpa_cli status
Back to top
View user's profile Send private message
stardotstar
l33t
l33t


Joined: 10 Feb 2006
Posts: 887
Location: 2074/SYD/NSW/AU

PostPosted: Mon Nov 10, 2008 8:15 pm    Post subject: Reply with quote

Thank you I will do that as soon as I get to work!
_________________
]8P
Back to top
View user's profile Send private message
stardotstar
l33t
l33t


Joined: 10 Feb 2006
Posts: 887
Location: 2074/SYD/NSW/AU

PostPosted: Mon Nov 10, 2008 10:43 pm    Post subject: Reply with quote

First thing was to emerge the iwl4965-ucode

and do the relinking of the net scripts

then I changed the conf.d/net to let wpa_supp use the wext driver.

OK I had the drivers compiled into the kernel so I recompiled with iwl4965 modular and rebooted.

Then I saw this on boot messages:

Code:

eddy log # less dmesg | grep iwl
iwl4965: Intel(R) Wireless WiFi Link 4965AGN driver for Linux, 1.2.23kds
iwl4965: Copyright(c) 2003-2007 Intel Corporation
iwl4965: Detected Intel Wireless WiFi Link 4965AGN
iwl4965: Tunable channels: 11 802.11bg, 13 802.11a channels
phy0: Selected rate control algorithm 'iwl-4965-rs'


and lo and behold the association with my work AP happened without my intervening but strangely the wpa_cli cannot contact the wpa_supp process./././

so I am not sure what is driving this thing!

Code:

eddy log # wpa_cli
wpa_cli v0.5.7
Copyright (c) 2004-2006, Jouni Malinen <jkmaline@cc.hut.fi> and contributors

This program is free software. You can distribute it and/or modify it
under the terms of the GNU General Public License version 2.

Alternatively, this software may be distributed under the terms of the
BSD license. See README and COPYING for more details.


Could not connect to wpa_supplicant - re-trying


trying your suggestions:

Code:

eddy log # rmmod iwl4965
eddy log # modprobe iwl4965
eddy log # dmesg | tail
wlan0: associated
wlan0: switched to short barker preamble (BSSID=00:1b:2f:db:34:de)
iwl4965: Error sending REPLY_RXON_ASSOC: Already sending a host command
iwl4965: Intel(R) Wireless WiFi Link 4965AGN driver for Linux, 1.2.23kds
iwl4965: Copyright(c) 2003-2007 Intel Corporation
ACPI: PCI Interrupt 0000:02:00.0[A] -> GSI 17 (level, low) -> IRQ 17
PCI: Setting latency timer of device 0000:02:00.0 to 64
iwl4965: Detected Intel Wireless WiFi Link 4965AGN
iwl4965: Tunable channels: 11 802.11bg, 13 802.11a channels
phy2: Selected rate control algorithm 'iwl-4965-rs'
eddy log # iwconfig
lo        no wireless extensions.

eth0      no wireless extensions.

wmaster0  no wireless extensions.

wlan0     IEEE 802.11g  ESSID:"" 
          Mode:Managed  Channel:0  Access Point: Not-Associated   
          Tx-Power=0 dBm   
          Retry min limit:7   RTS thr:off   Fragment thr=2352 B   
          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

eddy log # iwconfig -a
-a        No such device

eddy log # ifconfig -a
eth0      Link encap:Ethernet  HWaddr 00:08:74:94:78:45 
          BROADCAST MULTICAST  MTU:1500  Metric:1
          RX packets:312 errors:0 dropped:3247155641 overruns:0 frame:0
          TX packets:187 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:35140 (34.3 KiB)  TX bytes:17140 (16.7 KiB)
          Interrupt:221 Base address:0xc000

lo        Link encap:Local Loopback 
          inet addr:127.0.0.1  Mask:255.0.0.0
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)

wlan0     Link encap:Ethernet  HWaddr 00:1f:3b:69:ff:29 
          BROADCAST MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)

wmaster0  Link encap:UNSPEC  HWaddr 00-1F-3B-69-FF-29-00-00-00-00-00-00-00-00-00-00 
          BROADCAST MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)

eddy log # /etc/init.d/net.wlan0 start
 * WARNING:  net.wlan0 has already been started.
eddy log # iwconfig
lo        no wireless extensions.

eth0      no wireless extensions.

wmaster0  no wireless extensions.

wlan0     IEEE 802.11g  ESSID:"" 
          Mode:Managed  Channel:0  Access Point: Not-Associated   
          Tx-Power=0 dBm   
          Retry min limit:7   RTS thr:off   Fragment thr=2352 B   
          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

eddy log # ifconfig -a
eth0      Link encap:Ethernet  HWaddr 00:08:74:94:78:45 
          BROADCAST MULTICAST  MTU:1500  Metric:1
          RX packets:312 errors:0 dropped:3247155641 overruns:0 frame:0
          TX packets:187 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:35140 (34.3 KiB)  TX bytes:17140 (16.7 KiB)
          Interrupt:221 Base address:0xc000

lo        Link encap:Local Loopback 
          inet addr:127.0.0.1  Mask:255.0.0.0
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)

wlan0     Link encap:Ethernet  HWaddr 00:1f:3b:69:ff:29 
          BROADCAST MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)

wmaster0  Link encap:UNSPEC  HWaddr 00-1F-3B-69-FF-29-00-00-00-00-00-00-00-00-00-00 
          BROADCAST MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)

eddy log # wpa_cli status
Failed to connect to wpa_supplicant - wpa_ctrl_open: No such file or directory
eddy log #


so there are some unresolved things going on here.

I found that the association would not happen with the calling of the net script but doing this automatically created an association!

Code:
wlan0     Link encap:Ethernet  HWaddr 00:1f:3b:69:ff:29 
          UP BROADCAST MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)

eddy log # /etc/init.d/net.wlan0 stop
 * Stopping wlan0
 *   Bringing down wlan0
 *     Shutting down wlan0 ...                                            [ ok ]
 *     Stopping wpa_cli on wlan0 ...                                      [ ok ]
 *     Stopping wpa_supplicant on wlan0 ...                               [ ok ]
eddy log # rmmod iwl4965
eddy log # modprobe iwl4965
eddy log # dmesg | tail
wlan0: associate with AP 00:1b:2f:db:34:de
wlan0: authentication frame received from 00:1b:2f:db:34:de, but not in authenticate state - ignored
wlan0: authentication frame received from 00:1b:2f:db:34:de, but not in authenticate state - ignored
wlan0: RX AssocResp from 00:1b:2f:db:34:de (capab=0x431 status=0 aid=3)
wlan0: associated
wlan0: switched to short barker preamble (BSSID=00:1b:2f:db:34:de)
wlan0: WMM queue=2 aci=0 acm=0 aifs=3 cWmin=15 cWmax=1023 burst=0
wlan0: WMM queue=3 aci=1 acm=0 aifs=7 cWmin=15 cWmax=1023 burst=0
wlan0: WMM queue=1 aci=2 acm=0 aifs=2 cWmin=7 cWmax=15 burst=30
wlan0: WMM queue=0 aci=3 acm=0 aifs=2 cWmin=3 cWmax=7 burst=15
eddy log # ifconfig
lo        Link encap:Local Loopback 
          inet addr:127.0.0.1  Mask:255.0.0.0
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)

wlan0     Link encap:Ethernet  HWaddr 00:1f:3b:69:ff:29 
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:6 errors:0 dropped:0 overruns:0 frame:0
          TX packets:4 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:820 (820.0 B)  TX bytes:580 (580.0 B)

wmaster0  Link encap:UNSPEC  HWaddr 00-1F-3B-69-FF-29-00-00-00-00-00-00-00-00-00-00 
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)

eddy log # iwconfig
lo        no wireless extensions.

eth0      no wireless extensions.

wmaster0  no wireless extensions.

wlan0     IEEE 802.11g  ESSID:"aluminium" 
          Mode:Managed  Frequency:2.437 GHz  Access Point: 00:1B:2F:DB:34:DE   
          Bit Rate=54 Mb/s   Tx-Power=27 dBm   
          Retry min limit:7   RTS thr:off   Fragment thr=2352 B   
          Encryption key:674F-1334-269F-E632-49B9-D40F-5E35-F3A2-EED7-5458-F844-FD2E-C9CB-2BE7-16C6-7C39 [3]
          Link Quality=100/100  Signal level=-32 dBm  Noise level=-96 dBm
          Rx invalid nwid:0  Rx invalid crypt:0  Rx invalid frag:0
          Tx excessive retries:0  Invalid misc:0   Missed beacon:0

eddy log # ifconfig wlan0
wlan0     Link encap:Ethernet  HWaddr 00:1f:3b:69:ff:29 
          inet addr:172.17.23.69  Bcast:172.17.23.127  Mask:255.255.255.128
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:10 errors:0 dropped:0 overruns:0 frame:0
          TX packets:11 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:1616 (1.5 KiB)  TX bytes:1620 (1.5 KiB)

eddy log #


From what I can see here the process of modprobing the iwl4965 driver invoked the association immediately after calling a net.wlan0 STOP!

So...

Code:
eddy log # iwconfig
lo        no wireless extensions.

eth0      no wireless extensions.

wmaster0  no wireless extensions.

wlan0     IEEE 802.11g  ESSID:"aluminium" 
          Mode:Managed  Frequency:2.437 GHz  Access Point: 00:1B:2F:DB:34:DE   
          Bit Rate=54 Mb/s   Tx-Power=27 dBm   
          Retry min limit:7   RTS thr:off   Fragment thr=2352 B   
          Encryption key:674F-1334-269F-E632-49B9-D40F-5E35-F3A2-EED7-5458-F844-FD2E-C9CB-2BE7-16C6-7C39 [3]
          Link Quality=100/100  Signal level=-42 dBm  Noise level=-96 dBm
          Rx invalid nwid:0  Rx invalid crypt:0  Rx invalid frag:0
          Tx excessive retries:0  Invalid misc:0   Missed beacon:0


this is a live connection resulting from the last set of instructions. Let me see if I can reproduce the behaviour that has me confused!

First of all here is the current set of conf.d/net instructions:

Code:

modules=( "ifconfig" )
modules=( "wpa_supplicant" )
modules=( "!iwconfig" )
modules_eth0=( "dhcpcd" )
mac_eth0="00:08:74:94:78:45"
config_eth0=( "dhcp" )
wpa_supplicant_wlan0="-Dwext"
config_wlan0=( "dhcp" )

and wpa_supplicant configured with my desired (and only my desired) current AP enabled:
Code:

# This is a network block that connects to any unsecured access point.
# We give it a low priority so any defined blocks are preferred.
ctrl_interface=/var/run/wpa_suplicant
ctrl_interface_group=wheel
ap_scan=0

#network={
#       key_mgmt=NONE
#       priority=-9999999
#}

network={
        ssid="skink"
        key_mgmt=WPA-PSK
        psk="secret"
        disabled=1
}

network={
        ssid="aluminium"
        key_mgmt=WPA-PSK
        psk="secret"
        disabled=0


You will note the changes here that you suggested - group = wheel and scan ap is set to 0

now I'll start by shutting everything down - note the machine is on battery and not plugged into an ethernet port at all.


I can see that - wait a minute why is some of the spelling wpa_suplicant and some wpa_supplicant:

Code:

eddy run # ls /var/run/wpa*
/var/run/wpa_cli-wlan0.pid  /var/run/wpa_supplicant-wlan0.pid

/var/run/wpa_suplicant:
wlan0
eddy run #


the wpa_supplicant configs call /var/run/wpa_suplicant
but that is what the directory in var/run is called.
Why this inconsistency consistently applied - maybe not so easy to have fixed????

All networking stopped and module removed:
Code:

eddy run # /etc/init.d/net.eth0 stop
 * Caching service dependencies ...                                       [ ok ]
 * WARNING:  net.eth0 has not yet been started.
eddy run # /etc/init.d/net.wlan0 stop
 * Stopping wlan0
 *   Bringing down wlan0
 *     Stopping dhcpcd on wlan0 ...                                       [ ok ]
 *     Shutting down wlan0 ...                                            [ ok ]
 *     Stopping wpa_cli on wlan0 ...                                      [ ok ]
 *     Stopping wpa_supplicant on wlan0 ...                               [ ok ]
eddy run # rmmod iwl4965

dmesg/iwconfig/ifconfig reporting:
Code:

wlan0: Initial auth_alg=0
wlan0: authenticate with AP 00:1b:2f:db:34:de
wlan0: Initial auth_alg=0
wlan0: authenticate with AP 00:1b:2f:db:34:de
wlan0: RX authentication from 00:1b:2f:db:34:de (alg=0 transaction=2 status=0)
wlan0: authenticated
wlan0: associate with AP 00:1b:2f:db:34:de
wlan0: authentication frame received from 00:1b:2f:db:34:de, but not in authenticate state - ignored
wlan0: authentication frame received from 00:1b:2f:db:34:de, but not in authenticate state - ignored
wlan0: RX AssocResp from 00:1b:2f:db:34:de (capab=0x431 status=0 aid=3)
wlan0: associated
wlan0: switched to short barker preamble (BSSID=00:1b:2f:db:34:de)
wlan0: WMM queue=2 aci=0 acm=0 aifs=3 cWmin=15 cWmax=1023 burst=0
wlan0: WMM queue=3 aci=1 acm=0 aifs=7 cWmin=15 cWmax=1023 burst=0
wlan0: WMM queue=1 aci=2 acm=0 aifs=2 cWmin=7 cWmax=15 burst=30
wlan0: WMM queue=0 aci=3 acm=0 aifs=2 cWmin=3 cWmax=7 burst=15
wlan0: deauthenticate(reason=3)


eddy run # iwconfig
lo        no wireless extensions.

eth0      no wireless extensions.

eddy run # ifconfig
lo        Link encap:Local Loopback 
          inet addr:127.0.0.1  Mask:255.0.0.0
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)

eddy run # lsmod
Module                  Size  Used by
vboxdrv                56344  0
snd_seq                43888  0
snd_seq_device          9740  1 snd_seq
snd_pcm_oss            36640  0
snd_mixer_oss          16128  1 snd_pcm_oss
snd_hda_intel         307352  2
snd_pcm                59524  2 snd_pcm_oss,snd_hda_intel
snd_timer              20232  2 snd_seq,snd_pcm
snd                    42276  11 snd_seq,snd_seq_device,snd_pcm_oss,snd_mixer_oss,snd_hda_intel,snd_pcm,snd_timer
soundcore               9184  1 snd
snd_page_alloc         11016  2 snd_hda_intel,snd_pcm


OK so load the iwl4965 module:

Code:

iwl4965: Intel(R) Wireless WiFi Link 4965AGN driver for Linux, 1.2.23kds
iwl4965: Copyright(c) 2003-2007 Intel Corporation
ACPI: PCI Interrupt 0000:02:00.0[A] -> GSI 17 (level, low) -> IRQ 17
PCI: Setting latency timer of device 0000:02:00.0 to 64
iwl4965: Detected Intel Wireless WiFi Link 4965AGN
iwl4965: Tunable channels: 11 802.11bg, 13 802.11a channels
phy4: Selected rate control algorithm 'iwl-4965-rs'
ACPI: PCI Interrupt 0000:02:00.0[A] -> GSI 17 (level, low) -> IRQ 17


now ifconfig and iwconfig report immediate association with the local AP!
what is initialising all this without calling a net script??

For now I am happy that the association is working but I am very puzzled indeed.

Code:
eddy run # ps aux |grep wpa
root     16634  0.0  0.0   3920   936 ?        S<s  09:35   0:00 /sbin/wpa_supplicant -Dwext -c/etc/wpa_supplicant/wpa_supplicant.conf -W -W -B -iwlan0 -P/var/run/wpa_supplicant-wlan0.pid
root     16645  0.0  0.0   2068   416 ?        S<s  09:35   0:00 /bin/wpa_cli -a/etc/wpa_supplicant/wpa_cli.sh -p/var/run/wpa_suplicant -iwlan0 -P/var/run/wpa_cli-wlan0.pid -B
root     17256  0.0  0.0   1740   492 pts/0    R+   09:37   0:00 grep --colour=auto wpa
eddy run #


Looking at the above it seems that the wpa_supplicant driver has created the /var/run/wpa_supplicant-wlan0.pid that we saw earlier in the /var/run ls but note that the wpa_cli pid is pointed to a different process! /var/run/wpa_suplicant -iwlan0 and /var/run/wpa_cli-wlan0.pid
both of which (the wpa_cli) pids are using wpa_suplicant spelling...

A typo somewhere??

Looking forward to some further investigations...

Thanks for the help getting me going!

Best Regards,
Will
_________________
]8P
Back to top
View user's profile Send private message
dmpogo
Advocate
Advocate


Joined: 02 Sep 2004
Posts: 3267
Location: Canada

PostPosted: Mon Nov 10, 2008 10:59 pm    Post subject: Reply with quote

From your very last long message, I did not get what is your problem as it stands now ?
Does wireless work ?
Back to top
View user's profile Send private message
fuzzykiller
n00b
n00b


Joined: 09 Nov 2008
Posts: 44
Location: Karlsruhe, Germany

PostPosted: Mon Nov 10, 2008 11:06 pm    Post subject: Reply with quote

You need to specify a location for the control interface folder in the wpa_supplicant config.

If your system is relatively secure, I recommend using the following:
Code:
ctrl_interface=/var/run/wpa_supplicant
ctrl_interface_group=wheel


This of course needs users to be in the wheel group to connect to the socket. root can connect anyway.

I also use the wpa_gui utility for managing WLAN access from the desktop. This way, I don't have to use the strange NetworkManager.
Back to top
View user's profile Send private message
stardotstar
l33t
l33t


Joined: 10 Feb 2006
Posts: 887
Location: 2074/SYD/NSW/AU

PostPosted: Tue Nov 11, 2008 3:11 am    Post subject: Reply with quote

OK I seem to have found a my_very_bad with respect to the spellling issue above - from the very beginning I have single 'p' in supplicant of my own accord.

OOPS

So now I can use the wpa_cli to see what is happening but I am still stuck:

what appears to be happening is to do with a couple of things:

1) restarting net.wlan0 does not really kick things off properly.

2) the only way I can associate/reassociate with an AP in the wpa_supplicant.conf is by

rmmod iwl4965
modprobe iwl4965

this seems to call the wpa_supplicant and do an association from wpa_supplicant.conf and the net.wlan0 script ends up in state of started.

3) I generate an error everytime I restart the net.wlan0 script:
Code:

eddy linux # /etc/init.d/net.wlan0 stop
 * Stopping wlan0
 *   Bringing down wlan0
 *     Shutting down wlan0 ...                                            [ ok ]
 *     Stopping wpa_cli on wlan0 ...                                      [ ok ]
 *     Stopping wpa_supplicant on wlan0 ...                               [ ok ]
eddy linux # /etc/init.d/net.wlan0 start
 * Starting wlan0
 *   Starting wpa_supplicant on wlan0 ...
ioctl[SIOCSIWAUTH]: Operation not supported                                      [ ok ]th param 4 value 0x0 -
 *   Starting wpa_cli on wlan0 ...                                        [ ok ]
 *     Backgrounding ...
eddy linux #

Having googled this io error I find lots of comment but no real explanation.

4) I find that probably due to this in wpa_supp man page:
man wpa_supplicant wrote:
Linux wireless extensions
In theory, any driver that supports Linux wireless extensions can be used with IEEE 802.1X (i.e., not WPA) when using ap_scan=0 option in configuration file.
...
One main goal is to add full WPA/WPA2 support to Linux wireless extensions to allow new drivers to be supported without having to implement new driver-specific interface code in wpa_supplicant.

So I expect to find that I cannot use WPA association with ap_scan=1 ??
Does this having anything to do with being unable to associate with invisible SSIDs even if the BSSID is specified??

5) have I missed something critical in configuring this combination of iwl4965 and wpa_supp -Dwext??

Thanks all
\\'
_________________
]8P
Back to top
View user's profile Send private message
dmpogo
Advocate
Advocate


Joined: 02 Sep 2004
Posts: 3267
Location: Canada

PostPosted: Tue Nov 11, 2008 4:46 am    Post subject: Reply with quote

I use iwl4965, wpa_supplicant, WPA sites and ap_scan=1 just fine.

What I noticed is

a) card does not always associate with the correct AP right away. In most cases it reassociates itself correctly
after ~ 30 sec. Other times wpa_cli command 'reassociate' helps. But once a spent a night on the neighbours AP,
with the card refusing to associate with my AP next room and 100% signal. Until the morning when it suddenly did
after hibernation.

b) starting/stopping interface haphazardly (which I did a lot while trying to get configuration right) sometimes get
the driver stuck, and I have to reload iwl4965. When this happens, "/etc/init.d/net.wlan0 status" gives 'inactive'
(which it also gives if there are no access points around, but that is never the case when I'm getting my network up).
It is useful to check if you have issues with association and an almost sure sign that the driver needs to be reloaded.

when driver is stuck, the log gives some messages about 'trying to do something while rfkill is in progress' or so (don't remember exactly).

I have /etc/init.d/net.wlan0 start/stop launched at Fn-F6 (without reloading the module) , with default off on boot
and service down at hibernate. And check for inactive, having big red message 'Please reload the driver' when
it happens. It seems happening a bit more often with the new iwlagn and version 2 ucode, that with
the old iwl4965 and version 1 ucode. Usually after hibernate, seems when I press Fn-F6 too soon.


Last edited by dmpogo on Tue Nov 11, 2008 6:37 am; edited 2 times in total
Back to top
View user's profile Send private message
stardotstar
l33t
l33t


Joined: 10 Feb 2006
Posts: 887
Location: 2074/SYD/NSW/AU

PostPosted: Tue Nov 11, 2008 6:19 am    Post subject: Reply with quote

Well that is very interesting.

I am now at my home AP and association has happened without drama and I find the following:

Code:

eddy stardotstar # iwconfig
lo        no wireless extensions.

eth0      no wireless extensions.

wmaster0  no wireless extensions.

wlan0     IEEE 802.11g  ESSID:"skink" 
          Mode:Managed  Frequency:2.437 GHz  Access Point: 00:13:46:BD:49:16   
          Bit Rate=24 Mb/s   Tx-Power=27 dBm   
          Retry min limit:7   RTS thr:off   Fragment thr=2352 B   
          Encryption key:088C-86B4-632A-5C93-AAE3-9D7F-48F2-B069-0C13-9558-666B-20AC-4D39-EA6C-FC8F-4BAB [2]
          Link Quality=40/100  Signal level=-81 dBm  Noise level=-97 dBm
          Rx invalid nwid:0  Rx invalid crypt:0  Rx invalid frag:0
          Tx excessive retries:0  Invalid misc:0   Missed beacon:0

eddy stardotstar # eddy stardotstar # ifconfig wlan0
wlan0     Link encap:Ethernet  HWaddr 00:1f:3b:69:ff:29 
          inet addr:192.168.0.104  Bcast:192.168.0.255  Mask:255.255.255.0
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:4562 errors:0 dropped:0 overruns:0 frame:0
          TX packets:2695 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:5966798 (5.6 MiB)  TX bytes:373207 (364.4 KiB)
]
let's bring everything down the normal way
Code:

eddy stardotstar # /etc/init.d/net.wlan0 stop
 * Stopping wlan0
 *   Bringing down wlan0
 *     Stopping dhcpcd on wlan0 ...                                       [ ok ]
 *     Shutting down wlan0 ...                                            [ ok ]
 *     Stopping wpa_cli on wlan0 ...                                      [ ok ]
 *     Stopping wpa_supplicant on wlan0 ...                               [ ok ]
eddy stardotstar # iwconfig
lo        no wireless extensions.

eth0      no wireless extensions.

wmaster0  no wireless extensions.

wlan0     IEEE 802.11g  ESSID:"" 
          Mode:Managed  Frequency:2.437 GHz  Access Point: Not-Associated   
          Tx-Power=off   
          Retry min limit:7   RTS thr:off   Fragment thr=2352 B   
          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

eddy stardotstar # ifconfig wlan0
wlan0     Link encap:Ethernet  HWaddr 00:1f:3b:69:ff:29 
          BROADCAST MULTICAST  MTU:1500  Metric:1
          RX packets:4587 errors:0 dropped:0 overruns:0 frame:0
          TX packets:2695 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:5975116 (5.6 MiB)  TX bytes:373207 (364.4 KiB)


and attempt to bring it back up the normal "gentoo" way:

Code:

eddy stardotstar # /etc/init.d/net.wlan0 start
 * Starting wlan0
 *   Starting wpa_supplicant on wlan0 ...
ioctl[SIOCSIWAUTH]: Operation not supported                                      [ ok ]th param 4 value 0x0 -
 *   Starting wpa_cli on wlan0 ...                                        [ ok ]
 *     Backgrounding ...
eddy stardotstar # iwconfig
lo        no wireless extensions.

eth0      no wireless extensions.

wmaster0  no wireless extensions.

wlan0     IEEE 802.11g  ESSID:"" 
          Mode:Managed  Frequency:2.437 GHz  Access Point: Not-Associated   
          Tx-Power=27 dBm   
          Retry min limit:7   RTS thr:off   Fragment thr=2352 B   
          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

eddy stardotstar # ifconfig wlan0
wlan0     Link encap:Ethernet  HWaddr 00:1f:3b:69:ff:29 
          UP BROADCAST MULTICAST  MTU:1500  Metric:1
          RX packets:4587 errors:0 dropped:0 overruns:0 frame:0
          TX packets:2695 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:5975116 (5.6 MiB)  TX bytes:373207 (364.4 KiB)

eddy stardotstar # dmesg | tail
wlan0: Initial auth_alg=0
wlan0: authenticate with AP 00:13:46:bd:49:16
wlan0: RX authentication from 00:13:46:bd:49:16 (alg=0 transaction=2 status=0)
wlan0: authenticated
wlan0: associate with AP 00:13:46:bd:49:16
wlan0: RX AssocResp from 00:13:46:bd:49:16 (capab=0x431 status=0 aid=2)
wlan0: associated
wlan0: switched to short barker preamble (BSSID=00:13:46:bd:49:16)
wlan0: deauthenticate(reason=3)
ACPI: PCI Interrupt 0000:02:00.0[A] -> GSI 17 (level, low) -> IRQ 17
eddy stardotstar # iwconfig
lo        no wireless extensions.

eth0      no wireless extensions.

wmaster0  no wireless extensions.

wlan0     IEEE 802.11g  ESSID:"" 
          Mode:Managed  Frequency:2.437 GHz  Access Point: Not-Associated   
          Tx-Power=27 dBm   
          Retry min limit:7   RTS thr:off   Fragment thr=2352 B   
          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


I notice that nothing has happened - the Rx/Tx values remain at 0 and invoking the net script has led to an interface in a "started" state but without any activity.
Code:
eddy stardotstar # /etc/init.d/net.wlan0 status
 * status:  inactive


switching the radio off with Fn-F11 does nothing initially but on attempting to remodprobe the module the dmesg tells us that the kill switch is active:

Code:

eddy stardotstar # rmmod iwl4965
eddy stardotstar # iwconfig
lo        no wireless extensions.

eth0      no wireless extensions.

eddy stardotstar # dmesg | tail
atkbd.c: Use 'setkeycodes e076 <keycode>' to make it known.
atkbd.c: Unknown key pressed (translated set 2, code 0xf6 on isa0060/serio0).
atkbd.c: Use 'setkeycodes e076 <keycode>' to make it known.
atkbd.c: Unknown key released (translated set 2, code 0xf6 on isa0060/serio0).
atkbd.c: Use 'setkeycodes e076 <keycode>' to make it known.
atkbd.c: Unknown key pressed (translated set 2, code 0xe2 on isa0060/serio0).
atkbd.c: Use 'setkeycodes e062 <keycode>' to make it known.
atkbd.c: Unknown key released (translated set 2, code 0xe2 on isa0060/serio0).
atkbd.c: Use 'setkeycodes e062 <keycode>' to make it known.
usb 5-1: USB disconnect, address 5
eddy stardotstar # modprobe iwl4965
eddy stardotstar # dmesg | tail
iwl4965: Tunable channels: 11 802.11bg, 13 802.11a channels
phy13: Selected rate control algorithm 'iwl-4965-rs'
ACPI: PCI Interrupt 0000:02:00.0[A] -> GSI 17 (level, low) -> IRQ 17
iwl4965: Radio disabled by HW RF Kill switch
ACPI: PCI Interrupt 0000:02:00.0[A] -> GSI 17 (level, low) -> IRQ 17
iwl4965: Radio disabled by HW RF Kill switch
ACPI: PCI Interrupt 0000:02:00.0[A] -> GSI 17 (level, low) -> IRQ 17
iwl4965: Radio disabled by HW RF Kill switch
ACPI: PCI Interrupt 0000:02:00.0[A] -> GSI 17 (level, low) -> IRQ 17
iwl4965: Radio disabled by HW RF Kill switch


So activate the radio and go about starting the wifi

Code:

eddy stardotstar # rmmod iwl4965
eddy stardotstar # modprobe iwl4965
eddy stardotstar # iwconfig
lo        no wireless extensions.

eth0      no wireless extensions.

wmaster0  no wireless extensions.

wlan0     IEEE 802.11g  ESSID:"" 
          Mode:Managed  Frequency:2.412 GHz  Access Point: Not-Associated   
          Tx-Power=27 dBm   
          Retry min limit:7   RTS thr:off   Fragment thr=2352 B   
          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

eddy stardotstar # wpa_cli
wpa_cli v0.5.7
Copyright (c) 2004-2006, Jouni Malinen <jkmaline@cc.hut.fi> and contributors

This program is free software. You can distribute it and/or modify it
under the terms of the GNU General Public License version 2.

Alternatively, this software may be distributed under the terms of the
BSD license. See README and COPYING for more details.


Selected interface 'wlan0'

Interactive mode

> status
bssid=00:13:46:bd:49:16
ssid=skink
id=0
pairwise_cipher=TKIP
group_cipher=TKIP
key_mgmt=WPA-PSK
wpa_state=COMPLETED
ip_address=192.168.0.104
> quite
Unknown command 'quite'
> quit
eddy stardotstar # iwconfig
lo        no wireless extensions.

eth0      no wireless extensions.

wmaster0  no wireless extensions.

wlan0     IEEE 802.11g  ESSID:"skink" 
          Mode:Managed  Frequency:2.437 GHz  Access Point: 00:13:46:BD:49:16   
          Bit Rate=24 Mb/s   Tx-Power=27 dBm   
          Retry min limit:7   RTS thr:off   Fragment thr=2352 B   
          Encryption key:088C-86B4-632A-5C93-AAE3-9D7F-48F2-B069-0C13-9558-666B-20AC-4D39-EA6C-FC8F-4BAB [2]
          Link Quality=55/100  Signal level=-74 dBm  Noise level=-96 dBm
          Rx invalid nwid:0  Rx invalid crypt:0  Rx invalid frag:0
          Tx excessive retries:0  Invalid misc:0   Missed beacon:0

eddy stardotstar # ifconfig wlan0
wlan0     Link encap:Ethernet  HWaddr 00:1f:3b:69:ff:29 
          inet addr:192.168.0.104  Bcast:192.168.0.255  Mask:255.255.255.0
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:24 errors:0 dropped:0 overruns:0 frame:0
          TX packets:17 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:5052 (4.9 KiB)  TX bytes:2331 (2.2 KiB)


All this happens without any need to call the net scripts.

Code:
eddy stardotstar # /etc/init.d/net.wlan0 status
 * status:  started


So I don't really know what to do about my setup.
Can I expect the modprobe process to call the necessary net script? Or do I need to do something else to control all this more properly?

Thanks all
\\'
_________________
]8P
Back to top
View user's profile Send private message
dmpogo
Advocate
Advocate


Joined: 02 Sep 2004
Posts: 3267
Location: Canada

PostPosted: Tue Nov 11, 2008 6:52 am    Post subject: Reply with quote

Yes, association is done on the firnware/radio level, it has little to do with /etc/init.d/net.wlan0 script.

Except that in my case /etc/init.d/net.wlan0 stop also switches off the radio.
(Because of that I did not learn how to use RFKILL (unless it is used implicitly)).
Does it in your case ?

Otherwise your symptom that if there is no association reinserting the module helps is similar to mine.
Remember, iwl4965 on reinsert reloads the firmware onto the card (which is perhaps is responsible for association).

BTW, what version of ucode are you using ?
Back to top
View user's profile Send private message
stardotstar
l33t
l33t


Joined: 10 Feb 2006
Posts: 887
Location: 2074/SYD/NSW/AU

PostPosted: Tue Nov 11, 2008 8:57 am    Post subject: Reply with quote

OK, thanks for your information and following this thread.

Here we go with some more info:

the firmware (ucode?) is:

Code:
eddy stardotstar # equery which iwl4965-ucode
/usr/portage/net-wireless/iwl4965-ucode/iwl4965-ucode-4.44.1.20.ebuild


Not sure if this is the information that allows you to see exactly which it is - I understand there is a difference between v1 and v2 - I assume since I have only just added this card I have 2...
Since it is the only one for 4965 in portage...


Ahhhhh, wait a minute :

Code:

eddy stardotstar # equery files iwl4965-ucode
[ Searching for packages matching iwl4965-ucode... ]
* Contents of net-wireless/iwl4965-ucode-4.44.1.20:
/lib
/lib/firmware
/lib/firmware/iwlwifi-4965-1.ucode
/usr
/usr/share
/usr/share/doc
/usr/share/doc/iwl4965-ucode-4.44.1.20
/usr/share/doc/iwl4965-ucode-4.44.1.20/README.iwlwifi-4965-ucode.bz2


Looks like -1 - so I must read the docs there...

I havn't come across the rfkill aspect of all this yet. Is this something to do with the hardware switch which activates and deactivates the radio?
If you can make some more suggestions of tests that would help me nail down the situ I would appreciate it.

On a positive note I am having flawless wireless connectivity from this system whilst on the current WPA AP.

Must turn on the scan_ap feature and see if it has any effect. I still don't understand the relationship mentioned in the man page about that

(quoted above)

Cheers,
Will
_________________
]8P
Back to top
View user's profile Send private message
d2_racing
Bodhisattva
Bodhisattva


Joined: 25 Apr 2005
Posts: 13047
Location: Ste-Foy,Canada

PostPosted: Tue Nov 11, 2008 12:54 pm    Post subject: Reply with quote

So your wireless is working :P
Back to top
View user's profile Send private message
dmpogo
Advocate
Advocate


Joined: 02 Sep 2004
Posts: 3267
Location: Canada

PostPosted: Tue Nov 11, 2008 5:21 pm    Post subject: Reply with quote

stardotstar wrote:
OK, thanks for your information and following this thread.

Here we go with some more info:

the firmware (ucode?) is:

Code:
eddy stardotstar # equery which iwl4965-ucode
/usr/portage/net-wireless/iwl4965-ucode/iwl4965-ucode-4.44.1.20.ebuild


Not sure if this is the information that allows you to see exactly which it is - I understand there is a difference between v1 and v2 - I assume since I have only just added this card I have 2...


it is the version 1 as it should be, the only one which will work with your driver since you are using not the latest driver (iwlagn that comes with 2.6.27 instead of iwl4965). The version one is seen in '1' before the 20.
However, this is not the latest version in portage. There is an update in ~amd64, its version is

iwl4965-ucode-228.57.1.21

it is somewhat hidden because emerge will show you in ~amd64 iwl4965-ucode-228.57.2.21 as the latest, which is a version 2 (see 2.21 in place of 1.21)
and will not work with your driver. So you have to manually put into package.keywords

=iwl4965-ucode-228.57.1.21 ~amd64,

or as not recommended by prefered by me
Code:

ACCEPT_KEYWORDS='~amd64' emerge =iwl4965-ucode-228.57.1.21
Back to top
View user's profile Send private message
dmpogo
Advocate
Advocate


Joined: 02 Sep 2004
Posts: 3267
Location: Canada

PostPosted: Tue Nov 11, 2008 5:38 pm    Post subject: Reply with quote

stardotstar wrote:


I havn't come across the rfkill aspect of all this yet. Is this something to do with the hardware switch which activates and deactivates the radio?
If you can make some more suggestions of tests that would help me nail down the situ I would appreciate it.

On a positive note I am having flawless wireless connectivity from this system whilst on the current WPA AP.

Must turn on the scan_ap feature and see if it has any effect. I still don't understand the relationship mentioned in the man page about that

(quoted above)

Cheers,
Will

RFKILL is is kernel module and capabilities in the driver for that, but I don't know how is it used. My hardware radio switch just generates ACPI event
that I handle in a script as others. But some logs about RFKILL appear sometimes (as I said, usually when driver hangs). I'd like to understand it sometimes.

scan_ap is =1 for me now, but indeed, I did not notice much difference with scan_ap=0. Supposedely with scan_ap=1 wpa_supplicant takes more control
over what AP is associated with, while scan_ap=0 leaves it all to the card fimware, but the difference sometimes eludes me, since even under wpa_supplicant control association sometimes go to AP I would not expect neither from priority in configuration file, nor from the strength of the signal.
With a bit judicial settings of priorities in wpa_supplicant.conf I now have 90-95% success of a correct association right away both in the office and at home,
but hiccupps happen. But I can say that behaviour under windows is not that much different
Back to top
View user's profile Send private message
stardotstar
l33t
l33t


Joined: 10 Feb 2006
Posts: 887
Location: 2074/SYD/NSW/AU

PostPosted: Wed Nov 12, 2008 12:33 am    Post subject: Reply with quote

d2_racing wrote:
So your wireless is working :P

stardotstar wrote:

On a positive note I am having flawless wireless connectivity from this system whilst on the current WPA AP.


All this has become more or less academic and of an interesting rather than frustrating nature due to the fact that the wireless is working - I just still can't get my head around the why and how - and am struggling to control the card when approaching new APs. Nonetheless it has beenm a relief to be able to associate and use my work and home APs without anything more dramatic than a script that removes and reloads the module.

Code:

eddy stardotstar # cat /usr/local/bin/wifibounce.sh
#!/bin/bash
# wireless bouncer for msi wind u100 with intel 4965 mini pci agn card
/etc/init.d/net.wlan0 stop
rmmod iwl4965
modprobe iwl4965
echo "Wireless restarted - module reloaded"
iwconfig
ifconfig wlan0



Hopefully this works and I can slave it to my wireless Fn-F11 key.
\\'
_________________
]8P
Back to top
View user's profile Send private message
dmpogo
Advocate
Advocate


Joined: 02 Sep 2004
Posts: 3267
Location: Canada

PostPosted: Wed Nov 12, 2008 1:06 am    Post subject: Reply with quote

stardotstar wrote:
[
Code:

eddy stardotstar # cat /usr/local/bin/wifibounce.sh
#!/bin/bash
# wireless bouncer for msi wind u100 with intel 4965 mini pci agn card
/etc/init.d/net.wlan0 stop
rmmod iwl4965
modprobe iwl4965
echo "Wireless restarted - module reloaded"
iwconfig
ifconfig wlan0



Hopefully this works and I can slave it to my wireless Fn-F11 key.
\\'


why would not you just do

Code:

/etc/init.d/net.wlan0 stop
rmmode iwl4965
modprobe iwl4965
/etc/init.d/net.wlan0 start


? (well, with echo if you like, I use osd_cat from xosd to flash a message across the screen)
This way it will pick up all the configuration, including wpa_supplicant or whatever
Back to top
View user's profile Send private message
d2_racing
Bodhisattva
Bodhisattva


Joined: 25 Apr 2005
Posts: 13047
Location: Ste-Foy,Canada

PostPosted: Wed Nov 12, 2008 1:38 am    Post subject: Reply with quote

Why not this :
Code:

#!/bin/bash
if [ "$(/etc/init.d/net.wlan0 status | grep started)" ]; then
        echo "Arrêt de l’interface wlan0"
        /etc/init.d/net.wlan0 stop
        sleep 2
        echo "Déchargement du module Iwl4965"
        sleep 2
        rmmod iwl4965
        echo "Le wifi est totalement désactivé"
else
        echo "Chargement du module Iwl4965"
        modprobe iwl4965
        sleep 2
        /etc/init.d/net.wlan0 start
        echo "Wifi activé"
fi
Back to top
View user's profile Send private message
dmpogo
Advocate
Advocate


Joined: 02 Sep 2004
Posts: 3267
Location: Canada

PostPosted: Wed Nov 12, 2008 1:50 am    Post subject: Reply with quote

d2_racing wrote:
Why not this :
Code:

#!/bin/bash
if [ "$(/etc/init.d/net.wlan0 status | grep started)" ]; then
        echo "Arrêt de l’interface wlan0"
        /etc/init.d/net.wlan0 stop
        sleep 2
        echo "Déchargement du module Iwl4965"
        sleep 2
        rmmod iwl4965
        echo "Le wifi est totalement désactivé"
else
        echo "Chargement du module Iwl4965"
        modprobe iwl4965
        sleep 2
        /etc/init.d/net.wlan0 start
        echo "Wifi activé"
fi


iwl4965 status can be in 3 stable states - started, stopped and inactive. You want to reload module if it is inactive as well.
So make grep on stopped, and reload the module on else.
Back to top
View user's profile Send private message
dmpogo
Advocate
Advocate


Joined: 02 Sep 2004
Posts: 3267
Location: Canada

PostPosted: Wed Nov 12, 2008 1:56 am    Post subject: Reply with quote

I myself have Fn-F6 to toggle wireless on/off (I prefer not to start wireless on boot automatically).
I currently do not reload the module, however

So I have among acpi handlers

Code:

      # Fn-F6 starts-stops wireless services (NON-standard)
      # In my network config wlan stop comes with disabling radio (don't know why)
      status=`/etc/init.d/net.wlan0 status`
      status=${status#* status:}
      if   [ $status == started ] ; then
         /etc/init.d/net.wlan0 stop   
      elif [ $status == stopped ] ; then
           if [ `cat ${THINKPAD_ACPI_DIR}/hotkey_radio_sw` == 1 ] ; then
         /etc/init.d/net.wlan0 start   
           fi
      elif [ $status == inactive ] ; then
           # This perhaps can arise if there are no AP's
           # this is why I do not restart automatically
           # May do it when understand wpa_supplicant better
           message="No AP's or WLAN may have hanged. Restart manually,
 perhaps reinserting iwl4965"
           x_info "$message" red
           logger "$message"
      fi
Back to top
View user's profile Send private message
stardotstar
l33t
l33t


Joined: 10 Feb 2006
Posts: 887
Location: 2074/SYD/NSW/AU

PostPosted: Wed Nov 12, 2008 10:48 pm    Post subject: Reply with quote

Fantastic dialogue guys.

First thing I note is that the reason I don't do the first suggestion you mention dmpogo:
Code:
/etc/init.d/net.wlan0 stop
rmmode iwl4965
modprobe iwl4965
/etc/init.d/net.wlan0 start

is that the module seems to invoke the net script so I find that Ihave no need to call init.d after modprobing the driver.

The driver ends up in a started state anyway.

I like the idea of slaving it all to the Fn key and dropping it from the runlevels.

I am a little in the dark about some of the intricacies of this since the FnF11 key on my MSI U100 is able to toggle the wireless/bluetooth and the LED indicator concurs. Because it is a dual function toggle it confuses the issue further for me otherwise perhaps I should just script the Fn key to do an rmmod/modprobe as appropriate but it switches thus:

(From an off state)
Fn-F11 lights WiFi
Fn-F11 lights BlueTooth
Fn-F11 lights both
Fn-F11 Off state

So I would have to understand how to detect the state that the machine is put into by the switch rather than the switch key activation itself?

I will try some of the other script suggestions too - thank you d2_racing

This is indeed a valuable lesson - made all the more enjoyable by the radio working while I perfect its handling.

\\'
_________________
]8P
Back to top
View user's profile Send private message
dmpogo
Advocate
Advocate


Joined: 02 Sep 2004
Posts: 3267
Location: Canada

PostPosted: Thu Nov 13, 2008 1:15 am    Post subject: Reply with quote

stardotstar wrote:
Fantastic dialogue guys.

First thing I note is that the reason I don't do the first suggestion you mention dmpogo:
Code:
/etc/init.d/net.wlan0 stop
rmmode iwl4965
modprobe iwl4965
/etc/init.d/net.wlan0 start

is that the module seems to invoke the net script so I find that Ihave no need to call init.d after modprobing the driver.

The driver ends up in a started state anyway.


OK, this is because udev reacts on module hotplugging. I have forbid udev to start net services by having
RC_PLUG_SERVICES="!*"

in /etc/conf.d/rc

so that udev does not start wireless services on boot. (Actually it does not start any, since I like to have control
over services, but decision was triggered by desire to have full control over wireless)


Quote:

I like the idea of slaving it all to the Fn key and dropping it from the runlevels.

I am a little in the dark about some of the intricacies of this since the FnF11 key on my MSI U100 is able to toggle the wireless/bluetooth and the LED indicator concurs. Because it is a dual function toggle it confuses the issue further for me otherwise perhaps I should just script the Fn key to do an rmmod/modprobe as appropriate but it switches thus:

(From an off state)
Fn-F11 lights WiFi
Fn-F11 lights BlueTooth
Fn-F11 lights both
Fn-F11 Off state

So I would have to understand how to detect the state that the machine is put into by the switch rather than the switch key activation itself?

I will try some of the other script suggestions too - thank you d2_racing

This is indeed a valuable lesson - made all the more enjoyable by the radio working while I perfect its handling.

\\'


I have bluetooth on Fn-F5 (which seems standard on Thinkpads, it has that key carrying wireless icon) but wlan separately on Fn-F6.
I did this separtation since I have no bluetooth devices right now (more over I did not even yet configured bluetooth service properly),
so it is always off, while wireless is being up and down frequently.

As sort of understood that Fn-F11 you have is not a hardware switch (since you are speaking about some script ), but just sends ACPI events ? In this case you could program it the way you wish with the help of, say, acpid. If it is governed by hardware (bios) then you can still put your wireless handling on another Fn combination with acpid, and leave Fn-F11 for hardcore hardware switching.[/quote]
Back to top
View user's profile Send private message
stardotstar
l33t
l33t


Joined: 10 Feb 2006
Posts: 887
Location: 2074/SYD/NSW/AU

PostPosted: Fri Nov 14, 2008 10:08 am    Post subject: Reply with quote

Hi,

No I believe that what I mean is that the FnF11 is a hardware switch since there is no acpi event or such when it is activated:

Code:
wlan0: Initial auth_alg=0
wlan0: authenticate with AP 00:13:46:bd:49:16
wlan0: RX authentication from 00:13:46:bd:49:16 (alg=0 transaction=2 status=0)
wlan0: authenticated
wlan0: associate with AP 00:13:46:bd:49:16
wlan0: RX AssocResp from 00:13:46:bd:49:16 (capab=0x431 status=0 aid=2)
wlan0: associated
wlan0: switched to short barker preamble (BSSID=00:13:46:bd:49:16)
iwl4965: Radio Frequency Kill Switch is On:
Kill switch must be turned off for wireless networking to work.
atkbd.c: Unknown key pressed (translated set 2, code 0xf6 on isa0060/serio0).
atkbd.c: Use 'setkeycodes e076 <keycode>' to make it known.
atkbd.c: Unknown key released (translated set 2, code 0xf6 on isa0060/serio0).
atkbd.c: Use 'setkeycodes e076 <keycode>' to make it known.
atkbd.c: Unknown key pressed (translated set 2, code 0xe2 on isa0060/serio0).
atkbd.c: Use 'setkeycodes e062 <keycode>' to make it known.
atkbd.c: Unknown key released (translated set 2, code 0xe2 on isa0060/serio0).
atkbd.c: Use 'setkeycodes e062 <keycode>' to make it known.
hub 1-0:1.0: unable to enumerate USB device on port 7
usb 5-1: new full speed USB device using uhci_hcd and address 2
usb 5-1: configuration #1 chosen from 1 choice
usb 5-1: New USB device found, idVendor=0db0, idProduct=a97a
usb 5-1: New USB device strings: Mfr=0, Product=0, SerialNumber=0

above we can see the wlan0 in the up and associated state and then I pressed the FnF11 switching the LEDs on the machine to indicate Bluetooth only mode (Wifi Unlights) and therefore we learn that:

atkbd.c is reacting to a series of key presses even though only one was physically initiated.
The USB bluetooth device is brought online as the radio is killed.

a subsequent pressing gives:
Code:

wlan0: No ProbeResp from current AP 00:13:46:bd:49:16 - assume out of range
iwl4965: Error sending REPLY_RXON_ASSOC: iwl4965_enqueue_hcmd failed: -5
iwl4965: Error sending REPLY_RXON_ASSOC: iwl4965_enqueue_hcmd failed: -5
hci_cmd_task: hci0 command tx timeout
wlan0: disassociate(reason=3)
wlan0: disassociate(reason=3)
wlan0: disassociate(reason=3)
wlan0: disassociate(reason=3)
wlan0: disassociate(reason=3)
iwl4965: Error sending REPLY_STATISTICS_CMD: iwl4965_enqueue_hcmd failed: -5
wlan0: disassociate(reason=3)
wlan0: disassociate(reason=3)
wlan0: disassociate(reason=3)
wlan0: disassociate(reason=3)
wlan0: disassociate(reason=3)
wlan0: disassociate(reason=3)
wlan0: disassociate(reason=3)
wlan0: disassociate(reason=3)
wlan0: disassociate(reason=3)
wlan0: disassociate(reason=3)
wlan0: disassociate(reason=3)
wlan0: disassociate(reason=3)
wlan0: disassociate(reason=3)
atkbd.c: Unknown key pressed (translated set 2, code 0xf6 on isa0060/serio0).
atkbd.c: Use 'setkeycodes e076 <keycode>' to make it known.
atkbd.c: Unknown key released (translated set 2, code 0xf6 on isa0060/serio0).
atkbd.c: Use 'setkeycodes e076 <keycode>' to make it known.
wlan0: disassociate(reason=3)

at which point the Bluetooth and wifi LEDs are lit.
The state of the wifi has not returned to normal however:
Code:

eddy stardotstar # ifconfig wlan0
wlan0     Link encap:Ethernet  HWaddr 00:1f:3b:69:ff:29 
          UP BROADCAST MULTICAST  MTU:1500  Metric:1
          RX packets:22473 errors:0 dropped:0 overruns:0 frame:0
          TX packets:9143 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:24000104 (22.8 MiB)  TX bytes:960576 (938.0 KiB)

eddy stardotstar # iwconfig
lo        no wireless extensions.

eth0      no wireless extensions.

wmaster0  no wireless extensions.

wlan0     IEEE 802.11g  ESSID:"skink" 
          Mode:Managed  Frequency:2.437 GHz  Access Point: 00:13:46:BD:49:16   
          Tx-Power=27 dBm   
          Retry min limit:7   RTS thr:off   Fragment thr=2352 B   
          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

eddy stardotstar # ifconfig wlan0
wlan0     Link encap:Ethernet  HWaddr 00:1f:3b:69:ff:29 
          UP BROADCAST MULTICAST  MTU:1500  Metric:1
          RX packets:22473 errors:0 dropped:0 overruns:0 frame:0
          TX packets:9143 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:24000104 (22.8 MiB)  TX bytes:960576 (938.0 KiB)

The previous association with my Skink AP is still present but the net script has not been invoked to give wlan0 an IP address again?
Reinvoking the net.script does not help - it is somewhere in firmware so we need to reload the driver.
(To simplify this I have changed my wifiscript above to be only rmmod and modprobe...

Code:

eddy stardotstar # vi /usr/local/bin/wifibounce.sh
eddy stardotstar # /usr/local/bin/wifibounce.sh
eddy stardotstar # ifconfig wlan0
wlan0     Link encap:Ethernet  HWaddr 00:1f:3b:69:ff:29 
          BROADCAST MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)

eddy stardotstar # ifconfig wlan0
wlan0     Link encap:Ethernet  HWaddr 00:1f:3b:69:ff:29 
          UP BROADCAST MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)

eddy stardotstar # ifconfig wlan0
wlan0     Link encap:Ethernet  HWaddr 00:1f:3b:69:ff:29 
          UP BROADCAST MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)

eddy stardotstar # ifconfig wlan0
wlan0     Link encap:Ethernet  HWaddr 00:1f:3b:69:ff:29 
          UP BROADCAST MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)

eddy stardotstar # ifconfig wlan0
wlan0     Link encap:Ethernet  HWaddr 00:1f:3b:69:ff:29 
          UP BROADCAST MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)

eddy stardotstar # iwconfig
lo        no wireless extensions.

eth0      no wireless extensions.

wmaster0  no wireless extensions.

wlan0     IEEE 802.11g  ESSID:"" 
          Mode:Managed  Frequency:2.412 GHz  Access Point: Not-Associated   
          Tx-Power=27 dBm   
          Retry min limit:7   RTS thr:off   Fragment thr=2352 B   
          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

eddy stardotstar # /etc/init.d/net.wlan0 status
 * status:  inactive
eddy stardotstar # /etc/init.d/net.wlan0 restart
 * Stopping wlan0
 *   Bringing down wlan0
 *     Shutting down wlan0 ...                                            [ ok ]
 *     Stopping wpa_cli on wlan0 ...                                      [ ok ]
 *     Stopping wpa_supplicant on wlan0 ...                               [ ok ]
 * Starting wlan0
 *   Starting wpa_supplicant on wlan0 ...
ioctl[SIOCSIWAUTH]: Operation not supported                                      [ ok ]th param 4 value 0x0 -
 *   Starting wpa_cli on wlan0 ...                                        [ ok ]
 *     Backgrounding ...
eddy stardotstar # /etc/init.d/net.wlan0 status
 * status:  inactive
eddy stardotstar # iwconfig
lo        no wireless extensions.

eth0      no wireless extensions.

wmaster0  no wireless extensions.

wlan0     IEEE 802.11g  ESSID:"" 
          Mode:Managed  Frequency:2.412 GHz  Access Point: Not-Associated   
          Tx-Power=27 dBm   
          Retry min limit:7   RTS thr:off   Fragment thr=2352 B   
          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

eddy stardotstar # /etc/init.d/net.wlan0 status
 * status:  inactive
eddy stardotstar # vi /usr/local/bin/wifibounce.sh
eddy stardotstar # /usr/local/bin/wifibounce.sh
 * Stopping wlan0
 *   Bringing down wlan0
 *     Shutting down wlan0 ...                                            [ ok ]
 *     Stopping wpa_cli on wlan0 ...                                      [ ok ]
 *     Stopping wpa_supplicant on wlan0 ...                               [ ok ]
eddy stardotstar # /etc/init.d/net.wlan0 status
 * status:  inactive
eddy stardotstar # wpa_cli
wpa_cli v0.5.7
Copyright (c) 2004-2006, Jouni Malinen <jkmaline@cc.hut.fi> and contributors

This program is free software. You can distribute it and/or modify it
under the terms of the GNU General Public License version 2.

Alternatively, this software may be distributed under the terms of the
BSD license. See README and COPYING for more details.


Selected interface 'wlan0'

Interactive mode

> status
bssid=00:13:46:bd:49:16
ssid=skink
id=0
pairwise_cipher=TKIP
group_cipher=TKIP
key_mgmt=WPA-PSK
wpa_state=COMPLETED
> quit
eddy stardotstar # /etc/init.d/net.wlan0 status
 * status:  starting
eddy stardotstar # ifconfig wlan0
wlan0     Link encap:Ethernet  HWaddr 00:1f:3b:69:ff:29 
          inet addr:192.168.0.104  Bcast:192.168.0.255  Mask:255.255.255.0
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:48 errors:0 dropped:0 overruns:0 frame:0
          TX packets:18 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:8123 (7.9 KiB)  TX bytes:2691 (2.6 KiB)


it does not work until I make my wifibounce.sh STOP the net.script first then unprobe and probe the driver.

Clearly I need to invoke this script when the wifi key is pressed. Therefore it will always unplug and plug the driver and only if the kill switch is disabled will it work ...

\\'
_________________
]8P
Back to top
View user's profile Send private message
dmpogo
Advocate
Advocate


Joined: 02 Sep 2004
Posts: 3267
Location: Canada

PostPosted: Fri Nov 14, 2008 4:58 pm    Post subject: Reply with quote

Well, different hardware is different. On my thinkpad even hard (also to toggle) switch on the back of the laptop kills radio even temeprarily (it comes back in 5-10 sec) but generates ACPI event :)
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Kernel & Hardware All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum