Saturday, July 14, 2007

i4965 Finally Working (Albeit Insecurely)

Well I can finally toss my PCMCIA Aironet 352, and a good thing since the button was starting to stick. Even the thick single button design on the T-61 seems a bit flawed.

Components that worked for me
  • Linux 2.6.21.5
  • Linux wireless tools v 29 (compiled from source, obviously you need to wipe the one in your distro)
  • iwlwifi-4965-ucode-4.44.15.tgz
  • iwlwifi-0.0.38.tgz
  • mac80211-9.0.2.tgz
Here is an excerpt of my kernel config. The key breakthrough (I think) was that I read somewhere (probably on ThinkWiki) not to enable the wireless netlinks (CONFIG_NL80211 below) Otherwise the README's are pretty much on target. You do have to up the wlan0 interface before trying to assign the essid.

CONFIG_CFG80211=m
# CONFIG_NL80211 is not set
CONFIG_WIRELESS_EXT=y
CONFIG_MAC80211=m
# CONFIG_MAC80211_DEBUGFS is not set
CONFIG_MAC80211_DEBUG=y
CONFIG_MAC80211_VERBOSE_DEBUG=y
CONFIG_MAC80211_LOWTX_FRAME_DUMP=y
CONFIG_TKIP_DEBUG=y
CONFIG_MAC80211_DEBUG_COUNTERS=y
CONFIG_HOSTAPD_WPA_TESTING=y
CONFIG_MAC80211_IBSS_DEBUG=y
CONFIG_MAC80211_VERBOSE_PS_DEBUG=y
CONFIG_IEEE80211=m
# CONFIG_IEEE80211_DEBUG is not set
CONFIG_IEEE80211_CRYPT_WEP=m
CONFIG_IEEE80211_CRYPT_CCMP=m
CONFIG_IEEE80211_CRYPT_TKIP=m
CONFIG_IEEE80211_SOFTMAC=m
# CONFIG_IEEE80211_SOFTMAC_DEBUG is not set

Kernel modules and stuff

franz-t61:/var/log# lsmod
Module Size Used by
iwl4965 181796 0
iwl3945 159460 0
mac80211 161548 2 iwl4965,iwl3945
cfg80211 8264 1 mac80211
ecb 3840 2
arc4 2432 2
ipv6 236640 22
button 8400 0
dm_snapshot 16868 0
dm_mirror 20756 0
sbp2 21700 0
eth1394 18884 0
tsdev 8000 0
pcmcia 35220 0
firmware_class 9920 3 iwl4965,iwl3945,pcmcia
i2c_i801 8912 0
ohci1394 32944 0
i2c_core 21056 1 i2c_i801
ieee1394 90040 3 sbp2,eth1394,ohci1394
yenta_socket 25292 1
rsrc_nonstatic 11008 1 yenta_socket
pcmcia_core 37524 3 pcmcia,yenta_socket,rsrc_nonstatic
psmouse 35528 0
serio_raw 7044 0
pcspkr 3584 0
intel_agp 23452 1
agpgart 32712 1 intel_agp
evdev 9664 3


franz-t61:~# iwconfig -v
iwconfig Wireless-Tools version 29
Compatible with Wireless Extension v11 to v22.

Kernel Currently compiled with Wireless Extension v22.

wlan0 Recommend Wireless Extension v21 or later,
Currently compiled with Wireless Extension v22.


# ifconfig wlan0
wlan0 Link encap:Ethernet HWaddr 00:13:E8:08:8D:F5
inet addr:192.168.2.137 Bcast:192.168.2.255 Mask:255.255.255.0
inet6 addr: fe80::213:e8ff:fe08:8df5/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:1635 errors:0 dropped:0 overruns:0 frame:0
TX packets:1269 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:1234676 (1.1 MiB) TX bytes:300070 (293.0 KiB)

franz-t61:~# iwconfig
eth1 no wireless extensions.

lo no wireless extensions.

eth0 no wireless extensions.

wmaster0 no wireless extensions.

wlan0 IEEE 802.11g ESSID:"tsunami" Nickname:""
Mode:Managed Frequency:2.437 GHz Access Point: 00:90:4B:38:E6:5C
Bit Rate=54 Mb/s Tx-Power=27 dBm
Retry min limit:7 RTS thr:off Fragment thr=2346 B
Encryption key:off
Power Management:off
Link Quality=81/100 Signal level=-53 dBm Noise level=-127 dBm
Rx invalid nwid:0 Rx invalid crypt:0 Rx invalid frag:0
Tx excessive retries:0 Invalid misc:0 Missed beacon:0



And dmesg from ./loading and ./uloading the interface.


[ 1296.724000] iwl4965: ipw going down
[ 1298.780000] wmaster0: Removed STA 00:90:4b:38:e6:5c
[ 1298.848000] ACPI: PCI interrupt for device 0000:03:00.0 disabled
[ 1326.836000] iwl3945: Intel(R) PRO/Wireless 3945ABG/BG Network Connection driver for Linux, 0.0.38d
[ 1326.836000] iwl3945: Copyright(c) 2003-2007 Intel Corporation
[ 1326.836000] iwl4965: Intel(R) Wireless WiFi Link 4965AGN driver for Linux, 0.0.38d
[ 1326.836000] iwl4965: Copyright(c) 2003-2007 Intel Corporation
[ 1326.840000] ACPI: PCI Interrupt 0000:03:00.0[A] -> GSI 17 (level, low) -> IRQ 22
[ 1326.840000] PCI: Setting latency timer of device 0000:03:00.0 to 64
[ 1326.840000] iwl4965: Detected Intel Wireless WiFi Link 4965AGN
[ 1327.076000] iwl4965: Channel 12 [2.4GHz] is Tx only -- skipping.
[ 1327.076000] iwl4965: Channel 13 [2.4GHz] is Tx only -- skipping.
[ 1327.076000] iwl4965: Channel 14 [2.4GHz] is Tx only -- skipping.
[ 1327.076000] iwl4965: Channel 183 [5.2GHz] is Tx only -- skipping.
[ 1327.076000] iwl4965: Channel 184 [5.2GHz] is Tx only -- skipping.
[ 1327.076000] iwl4965: Channel 185 [5.2GHz] is Tx only -- skipping.
[ 1327.076000] iwl4965: Channel 187 [5.2GHz] is Tx only -- skipping.
[ 1327.076000] iwl4965: Channel 188 [5.2GHz] is Tx only -- skipping.
[ 1327.076000] iwl4965: Channel 189 [5.2GHz] is Tx only -- skipping.
[ 1327.076000] iwl4965: Channel 192 [5.2GHz] is Tx only -- skipping.
[ 1327.076000] iwl4965: Channel 196 [5.2GHz] is Tx only -- skipping.
[ 1327.076000] iwl4965: Channel 7 [5.2GHz] is Tx only -- skipping.
[ 1327.076000] iwl4965: Channel 8 [5.2GHz] is Tx only -- skipping.
[ 1327.076000] iwl4965: Channel 11 [5.2GHz] is Tx only -- skipping.
[ 1327.076000] iwl4965: Channel 12 [5.2GHz] is Tx only -- skipping.
[ 1327.076000] iwl4965: Channel 16 [5.2GHz] is Tx only -- skipping.
[ 1327.076000] iwl4965: Channel 34 [5.2GHz] is Tx only -- skipping.
[ 1327.076000] iwl4965: Channel 38 [5.2GHz] is Tx only -- skipping.
[ 1327.076000] iwl4965: Channel 42 [5.2GHz] is Tx only -- skipping.
[ 1327.076000] iwl4965: Channel 46 [5.2GHz] is Tx only -- skipping.
[ 1327.076000] iwl4965: Channel 100 [5.2GHz] is Tx only -- skipping.
[ 1327.076000] iwl4965: Channel 104 [5.2GHz] is Tx only -- skipping.
[ 1327.076000] iwl4965: Channel 108 [5.2GHz] is Tx only -- skipping.
[ 1327.076000] iwl4965: Channel 112 [5.2GHz] is Tx only -- skipping.
[ 1327.076000] iwl4965: Channel 116 [5.2GHz] is Tx only -- skipping.
[ 1327.076000] iwl4965: Channel 120 [5.2GHz] is Tx only -- skipping.
[ 1327.076000] iwl4965: Channel 124 [5.2GHz] is Tx only -- skipping.
[ 1327.076000] iwl4965: Channel 128 [5.2GHz] is Tx only -- skipping.
[ 1327.076000] iwl4965: Channel 132 [5.2GHz] is Tx only -- skipping.
[ 1327.076000] iwl4965: Channel 136 [5.2GHz] is Tx only -- skipping.
[ 1327.076000] iwl4965: Channel 140 [5.2GHz] is Tx only -- skipping.
[ 1327.076000] iwl4965: Channel 145 [5.2GHz] is Tx only -- skipping.
[ 1327.076000] iwl4965: Tunable channels: 11 802.11bg, 13 802.11a channels
[ 1327.076000] wmaster0: Selected rate control algorithm 'iwl-4965-rs'
[ 1327.076000] iwl4965: Unhandled INTA bits 0x04000000
[ 1327.076000] iwl4965: Disabled INTA bits 0x04000000 were pending
[ 1327.076000] iwl4965: with FH_INT = 0x00010000
[ 1327.080000] iwl4965: REPLY_CT_KILL_CONFIG_CMD succeeded
[ 1348.472000] HW CONFIG: channel=1 freq=2412 phymode=3
[ 1348.480000] ADDRCONF(NETDEV_UP): wlan0: link is not ready
[ 1365.048000] HW CONFIG: channel=1 freq=2412 phymode=3
[ 1365.052000] HW CONFIG: channel=6 freq=2437 phymode=3
[ 1365.060000] iwl4965: REPLY_ADD_STA failed
[ 1365.060000] wlan0: Initial auth_alg=0
[ 1365.060000] wlan0: authenticate with AP 00:90:4b:38:e6:5c
[ 1365.060000] wmaster0: TX to low-level driver (len=30) FC=0x00b0 DUR=0x013a A1=00:90:4b:38:e6:5c A2=00:13:e8:08:8d:f5 A3=00:90:4b:38:e6:5c
[ 1365.060000] wlan0: RX authentication from 00:90:4b:38:e6:5c (alg=0 transaction=2 status=0)
[ 1365.060000] wlan0: authenticated
[ 1365.060000] wlan0: associate with AP 00:90:4b:38:e6:5c
[ 1365.060000] wmaster0: TX to low-level driver (len=53) FC=0x0000 DUR=0x013a A1=00:90:4b:38:e6:5c A2=00:13:e8:08:8d:f5 A3=00:90:4b:38:e6:5c
[ 1365.064000] wlan0: RX AssocResp from 00:90:4b:38:e6:5c (capab=0x401 status=0 aid=1)[ 1365.064000] wlan0: associated
[ 1365.064000] wmaster0: Added STA 00:90:4b:38:e6:5c
[ 1365.064000] wmaster0: TX to low-level driver (len=42) FC=0x0040 DUR=0x013a A1=00:90:4b:38:e6:5c A2=00:13:e8:08:8d:f5 A3=00:90:4b:38:e6:5c
[ 1365.064000] ADDRCONF(NETDEV_CHANGE): wlan0: link becomes ready
[ 1365.072000] wmaster0: TX to low-level driver (len=108) FC=0x0108 DUR=0x002c A1=00:90:4b:38:e6:5c A2=00:13:e8:08:8d:f5 A3=33:33:00:00:00:16
[ 1365.600000] wmaster0: TX to low-level driver (len=96) FC=0x0108 DUR=0x002c A1=00:90:4b:38:e6:5c A2=00:13:e8:08:8d:f5 A3=33:33:ff:08:8d:f5
[ 1366.600000] wmaster0: TX to low-level driver (len=88) FC=0x0108 DUR=0x002c A1=00:90:4b:38:e6:5c A2=00:13:e8:08:8d:f5 A3=33:33:00:00:00:02
[ 1370.600000] wmaster0: TX to low-level driver (len=88) FC=0x0108 DUR=0x002c A1=00:90:4b:38:e6:5c A2=00:13:e8:08:8d:f5 A3=33:33:00:00:00:02

No comments: