Re: problem with if_wpi and wpa_supplicant.



Benjamin Close wrote:
Jeff Palmer wrote:
Hello current@,


I've got a laptop that uses the intel 3945abg wireless chipset. I've
followed ben's trials and tribulations with the wpi driver for several
months.
At one point, I had plain (unsecured) authentication as well as WEP
authentication working. (this is several months ago now)
However, the last 2 renditions of the driver won't even work if I have
WEP enabled.

Having seen the recent import into HEAD (8.0-CURRENT) I decided to give
it another whirl on my laptop.
With the november 2007 driver on the clearchain site, I can associate
to a completely nencrypted AP. However, using WEP or WPA fails.
I can't even associate to a WEP enabled AP if I set everything manually
with ifconfig.

Details are as follows.

Machine: Toshiba Satellite A135-S4517
OS: FreeBSD Laptop.totaldiver.net 7.0-BETA3 FreeBSD 7.0-BETA3 #0: Fri
Nov 23 21:33:53 EST 2007
root@xxxxxxxxxxxxxxxxxxxxx:/usr/obj/usr/src/sys/GENERIC i386
Driver:
http://people.freebsd.org/~benjsc/downloads/wpi/20071102-freebsd-wpi.tar.gz


Relevant parts of /boot/loader.conf
if_wpi_load="YES"
legal.intel_wpi.license_ack=1

Relevant parts of /etc/wpa_supplicant.conf
network={
ssid="TEST"
scan_ssid=1
key_mgmt=WPA-PSK

psk=4a4de711b81e90f30a5ec88682185a74d20eb85c982f11fe035c87726b43c6c5
}

The only hint I've been able to find so far, comes from using
wpa_supplicant in debug mode.

Relevant log from: wpa_supplicant -d -i wpi0 -c
/etc/wpa_supplicant.conf
Nov 25 00:32:13 Laptop kernel: idx=192 flags=0 type=119 len=4
Nov 25 00:32:13 Laptop kernel: cmd notification qid=4 idx=192 flags=0
type=WPI_CMD_SET_POWER_MODE len=4
Nov 25 00:32:13 Laptop kernel: wpi_cmd 155 size 12 async 0
Nov 25 00:32:13 Laptop kernel: notify qid=0 idx=0 flags=0 type=28 len=16
Nov 25 00:32:13 Laptop kernel: cmd notification qid=0 idx=0 flags=0
type=WPI_CMD_TX_DATA len=16
Nov 25 00:32:14 Laptop kernel: wpi0: could not configure bluetooth
coexistence
Nov 25 00:32:14 Laptop kernel: Scan cancelled
Nov 25 00:32:14 Laptop kernel: config chan 6 flags 8005 cck f ofdm 15
Nov 25 00:32:14 Laptop kernel: wpi_cmd 16 size 43 async 1
Nov 25 00:32:14 Laptop kernel: wpi0: wpi_cmd: cmd 16 not sent, busy
Nov 25 00:32:14 Laptop kernel: wpi0: could not configure
Nov 25 00:32:14 Laptop kernel: wpi0: could not send authentication
request
Nov 25 00:32:14 Laptop kernel: NEWSTATE:INIT
Nov 25 00:32:23 Laptop kernel: wpi0: timeout resetting Tx ring 1
Nov 25 00:32:23 Laptop kernel: wpi0: timeout resetting Tx ring 3
Nov 25 00:32:23 Laptop kernel: wpi0: timeout resetting Tx ring 4
Nov 25 00:32:23 Laptop kernel: NEWSTATE:INIT
Nov 25 00:32:23 Laptop kernel: notify qid=80 idx=0 flags=0 type=1 len=36
Nov 25 00:32:23 Laptop kernel: microcode alive notification version
10e02 alive 1
Nov 25 00:32:23 Laptop kernel: notify qid=80 idx=0 flags=0 type=1 len=36

The part that caught my attention was
Nov 25 00:32:14 Laptop kernel: wpi0: could not configure bluetooth
coexistence

Google seems to offer 0 results for the above. Looking through the code
in the wpi driver tarball shows where the error is coming from, but the
part I'm not understanding is: this machine doesn't have bluetooth, nor
any bluetooth devices.

I'm not sure what other info would be needed, but I'm willing to
provide anything I can to ben or the community at large. I haven't
succeeded any producing a log as to why it won't associate to a WEP
enabled AP when manually configured using ifconfig.

Hi Jeff,
From what I can gather, bluetooth is part of the chipset. Having
said that I've got no specs so perhaps it's not. I also see the
firmware doesn't complain about the failed command.
Could you try the following patch and see if it makes a difference.
Also can you provide the relevant section of a pciconf -lv. I'm
curious as to whether you have an ABG card or simply a BG card - I
know they exist but haven't found them yet.

diff --git a/sys/dev/wpi/if_wpi.c b/sys/dev/wpi/if_wpi.c
index 43d5512..517473e 100644
--- a/sys/dev/wpi/if_wpi.c
+++ b/sys/dev/wpi/if_wpi.c
@@ -2920,8 +2920,7 @@ wpi_config(struct wpi_softc *sc)
0);
if (error != 0) {
device_printf(sc->sc_dev,
- "could not configure bluetooth coexistence\n");
- return error;
+ "could not configure bluetooth coexistence, device lacks
bluetooth support?\n");
}

/* configure adapter */


Cheers,
Benjamin
_______________________________________________
freebsd-current@xxxxxxxxxxx mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to
"freebsd-current-unsubscribe@xxxxxxxxxxx"

!DSPAM:8,474bd131174311249717914!


Ben,

I'm using your tarball, not the perforce version. so I manually applied
your changes manually. Your patch said line 2920, the tarball version
was near line 2903. Let me know if you'd rather I use the perforce
version. I don't know how to obtain a copy of the perforce version, so
I'd have to figure that out. However: on with the details:



#kldload if_wpi0 returns:

Nov 26 03:09:54 Laptop kernel: wpi0: <Intel(R) PRO/Wireless 3945ABG> mem
0xd8000000-0xd8000fff irq 17 at device 0.0 on pci4
Nov 26 03:09:54 Laptop kernel: wpi0: Driver Revision 20071102
Nov 26 03:09:54 Laptop kernel: wpi0: Hardware Revision (0x1)
Nov 26 03:09:54 Laptop kernel: bus_dmamem_alloc failed to align memory
properly.
Nov 26 03:09:54 Laptop last message repeated 30 times
Nov 26 03:09:54 Laptop kernel: adding chan 1 flags=0x2b maxpwr=15, offset 2
<.. snipped for brevity..>

Attempting to associate with the WEP enabled AP now results in:

Nov 27 04:08:10 Laptop kernel: cmd notification qid=0 idx=0 flags=0
type=WPI_CMD_TX_DATA len=16
Nov 27 04:08:11 Laptop kernel: wpi0: could not configure bluetooth
coexistence, device lacks bluetooth support?
Nov 27 04:08:11 Laptop kernel: wpi_cmd 16 size 43 async 0
Nov 27 04:08:11 Laptop kernel: wpi0: wpi_cmd: cmd 16 not sent, busy
Nov 27 04:08:11 Laptop kernel: wpi0: configure command failed
Nov 27 04:08:11 Laptop kernel: Scan cancelled
Nov 27 04:08:11 Laptop kernel: config chan 7 flags 8005 cck f ofdm 15
Nov 27 04:08:11 Laptop kernel: wpi_cmd 16 size 43 async 1
Nov 27 04:08:11 Laptop kernel: wpi0: wpi_cmd: cmd 16 not sent, busy
Nov 27 04:08:11 Laptop kernel: wpi0: could not configure
Nov 27 04:08:11 Laptop kernel: wpi0: could not send authentication request
Nov 27 04:08:11 Laptop kernel: NEWSTATE:INIT
Nov 27 04:08:20 Laptop kernel: wpi0: timeout resetting Tx ring 1
Nov 27 04:08:20 Laptop kernel: wpi0: timeout resetting Tx ring 3
Nov 27 04:08:20 Laptop kernel: wpi0: timeout resetting Tx ring 4
Nov 27 04:08:20 Laptop kernel: NEWSTATE:INIT
Nov 27 04:08:20 Laptop kernel: notify qid=80 idx=0 flags=0 type=1 len=36
Nov 27 04:08:20 Laptop kernel: microcode alive notification version
10e02 alive 1
Nov 27 04:08:20 Laptop kernel: notify qid=80 idx=0 flags=0 type=1 len=36
Nov 27 04:08:20 Laptop kernel: microcode alive notification version
10e02 alive 1
Nov 27 04:08:20 Laptop kernel: Authenticating, not changing channel

and the relevant pciconf -lv:

wpi0@pci0:4:0:0: class=0x028000 card=0x10408086 chip=0x42228086
rev=0x02 hdr=0x00
vendor = 'Intel Corporation'
device = '10418086 Intel 3945ABG Wireless LAN controller'
class = network

Also, possibly worth noting: The first time I loaded the modified
if_wpi driver, I saw this
Nov 26 03:09:54 Laptop kernel: wpi0: Hardware Revision (0x1)

Subsequent kldunloads and re-kldloads show:
Nov 27 04:15:58 Laptop kernel: wpi0: Hardware Revision (0x801)

Those are both exact cut/pastes, and the hardware revision is
"different" though, it's the same laptop. Not sure if this means
anything (maybe the driver isn't unloading cleanly or the card isn't
initializing properly on a reload) or not.



_______________________________________________
freebsd-current@xxxxxxxxxxx mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to "freebsd-current-unsubscribe@xxxxxxxxxxx"



Relevant Pages

  • [PATCH] LIS3LV02Dx Accelerometer driver (take 4)
    ... Here is a submission for 2.6.28 of a driver for the ST LIS3LV02Dx ... Technically it's situated in hwmon because the other accelerometer ... +the laptop to act as a pinball machine-esque joystick. ... * GNU General Public License for more details. ...
    (Linux-Kernel)
  • [PATCH] Dell laptop backlight driver
    ... The driver is INCOMPLETE since it is unable to probe some required parameters ... in order to perform backlight control. ... Such parameters are found in a Dell ... FIRST write your laptop model parameters correctly inside the source code ...
    (Linux-Kernel)
  • Re: [PATCH] Dell laptop backlight driver
    ... +This driver is EXPERIMENTAL, use it at YOUR OWN RISK. ... +These parameters depend on the model of your laptop. ... +static int probe_smi_params ... * GNU General Public License for more details. ...
    (Linux-Kernel)
  • [PATCH] LIS3LV02Dx Accelerometer driver
    ... This adds a driver to the accelerometer sensor found in several HP ... Say Y here if you have an applicable laptop and want to experience ...
    (Linux-Kernel)
  • [PATCH] misc,acpi,backlight: MSI S270 Laptop support, third try
    ... This is the third version of my MSI S270 Laptop driver. ... +static int auto_brightness; ...
    (Linux-Kernel)