Bug 109227 - [ral] ral(4) driver doesn't handle correctly RT2561C PCI chipsets - didn't work
Summary: [ral] ral(4) driver doesn't handle correctly RT2561C PCI chipsets - didn't work
Status: Closed Overcome By Events
Alias: None
Product: Base System
Classification: Unclassified
Component: kern (show other bugs)
Version: 6.2-STABLE
Hardware: Any Any
: Normal Affects Only Me
Assignee: freebsd-bugs (Nobody)
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2007-02-16 12:30 UTC by Matthieu Guegan
Modified: 2017-08-26 03:29 UTC (History)
1 user (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Matthieu Guegan 2007-02-16 12:30:05 UTC
In 6.2-STABLE (16/02/2007)

Tested with Dlink DWL-G510 rev C2 ( MAC/BPP RT2561C, RF RT2527 )
and with Ovislink Evo-W54PCI v.2 ( RT2561S ) PCI Cards 

After compiling and loading if_ral.ko module, the card appears correctly
into /var/log/messages and ifconfig but doesn't work at all when trying
to associate.

When trying to scan AP ( ifconfig ral0 scan ) BSSID, CHAN RATE S:N INT
and CAPS infos seems correct but NOT the SSID ( always SSID : 0 )

When trying to associate, status is still at "no carrier"


In 7.0-CURRENT :

All seems to work ( both scanning and association ) but _sometimes_ the
card disassociate itself, and it's impossible to reassociate until reboot.


On OpenBSD-4.1 :

All works _perfectly_


Output of dmesg :

ral0: MAC/BBP RT2561C, RF RT2527
ral0: Ethernet address: 00:19:5b:23:10:88
ral0: [GIANT-LOCKED]

How-To-Repeat: Just insert a RT2561* chipset into a fresh 6.2-STABLE install and try
to load if_ral (as module or into the kernel)
Comment 1 Matthieu Guegan 2007-02-19 20:06:28 UTC
Hi again,

I've made additional debug informations, and with the following command
I can _sometimes_ see my AP (ssid : myssid)

# while :; do ifconfig ral0 scan; done | grep myssid
myssid        00:06:f4:f6:ae:11   10   11M 114:0   100 EPS

I've tried to set the debug mode and seen what happens :

when "myssid" is detected :

Feb 19 19:21:38 beastie kernel: ral0: ieee80211_next_scan: chan 10->10
Feb 19 19:21:38 beastie kernel: ral0: ieee80211_newstate: SCAN -> SCAN
Feb 19 19:21:38 beastie kernel: ral0: ieee80211_ref_node (ieee80211_send_probere
q:1004) 0xc4ce3000<00:19:5b:23:10:88> refcnt 2
Feb 19 19:21:38 beastie kernel: ral0: [ff:ff:ff:ff:ff:ff] send probe req on chan
nel 10
Feb 19 19:21:38 beastie kernel: ral0: received probe_resp from 00:06:f4:f6:ae:11
 rssi 114
Feb 19 19:21:38 beastie kernel: ral0: ieee80211_setup_node
0xc4ce0400<00:06:f4:f6:ae:11> in scan table
Feb 19 19:21:38 beastie kernel: [00:06:f4:f6:ae:11] new probe_resp on chan 10 (b
ss chan 10) "myssid"
Feb 19 19:21:38 beastie kernel: [00:06:f4:f6:ae:11] caps 0x31 bintval 100 erp 0x
0
Feb 19 19:21:38 beastie kernel: ral0: received beacon from 00:06:f4:f6:ae:11 rss
i 115
Feb 19 19:21:38 beastie kernel: [00:06:f4:f6:ae:11] beacon on chan 10 (bss chan
10) 0x00
Feb 19 19:21:38 beastie kernel: ral0: received beacon from 00:06:f4:f6:ae:11 rss
i 114
Feb 19 19:21:38 beastie kernel: [00:06:f4:f6:ae:11] beacon on chan 10 (bss chan
10) 0x00
Feb 19 19:21:38 beastie kernel: ral0: ieee80211_cancel_scan: end active scan
Feb 19 19:21:38 beastie kernel: ral0: notify scan done
Feb 19 19:21:38 beastie kernel: ral0:   macaddr          bssid         chan  rss
i rate flag  wep  essid
Feb 19 19:21:38 beastie kernel: + 00:06:f4:f6:ae:11 00:06:f4:f6:ae:11   10   114
 11M   ess  wep  "wireless"
Feb 19 19:21:38 beastie kernel: ral0: _ieee80211_free_node
0xc4ce3000<00:19:5b:23:10:88> in <gone> table
Feb 19 19:21:38 beastie kernel: ral0: _ieee80211_crypto_delkey: NONE keyix 65535
 flags 0x3 rsc 0 tsc 0 len 0
Feb 19 19:21:38 beastie kernel: ral0: ieee80211_newstate: SCAN -> AUTH
Feb 19 19:21:38 beastie kernel: ral0: ieee80211_ref_node (ieee80211_send_mgmt:11
14) 0xc4ce0400<00:06:f4:f6:ae:11> refcnt 3
Feb 19 19:21:38 beastie kernel: [00:06:f4:f6:ae:11] send auth on channel 10
Feb 19 19:21:38 beastie kernel: ral0: received auth from 00:06:f4:06:bf:0f rssi
114
Feb 19 19:21:38 beastie kernel: ral0: [00:06:f4:f6:ae:11] recv auth frame with a
lgorithm 0 seq 2
Feb 19 19:21:38 beastie kernel: ral0: ieee80211_newstate: AUTH -> ASSOC
Feb 19 19:21:38 beastie kernel: ral0: ieee80211_ref_node (ieee80211_send_mgmt:11
14) 0xc4ce0400<00:06:f4:f6:ae:11> refcnt 4
Feb 19 19:21:38 beastie kernel: [00:06:f4:f6:ae:11] send assoc_req on channel 10
Feb 19 19:21:38 beastie kernel: ral0: ieee80211_newstate: INIT -> SCAN
Feb 19 19:21:38 beastie kernel: ral0: begin active scan in 11g mode, scangen 181
...

So we can see different modes : INIT - SCAN - AUTH - ASSOC and loop to INIT ...
but RUN mode doesn't appear

and 95% of time, the adapter always did INIT SCAN SCAN SCAN ... INIT :
Feb 19 19:21:40 beastie kernel: ral0:   macaddr          bssid         chan  rss
i rate flag  wep  essid
Feb 19 19:21:40 beastie kernel: - 00:06:f4:f6:ae:11 00:06:f4:f6:ae:11   10   115
 11M   ess  wep  0x00!

note the "0x00!"
Comment 2 epstein 2007-03-21 14:35:40 UTC
Hi,

I just want to confirm this bug. I tried to get it to work with a clean
6.2-stable snapshot. The correct module is loaded at startup, but
scanning for networks fails (no error, it just doesn't show the networks
in range).

System:
FreeBSD 6.2-STABLE-200703 #0: Tue Mar  6 22:06:57 UTC 2007
    root@dessler.cse.buffalo.edu:/usr/obj/usr/src/sys/GENERIC

Dmesg:
ral0: <Ralink Technology RT2561> mem 0xcfff0000-0xcfff7fff irq 16 at device 12.0 on pci0
ral0: MAC/BBP RT2561C, RF RT2527
ral0: Ethernet address: 00:80:5a:4d:55:3a

Ifconfig:
ral0: flags=8802<BROADCAST,SIMPLEX,MULTICAST> mtu 1500
	ether 00:80:5a:4d:55:3a
	media: IEEE 802.11 Wireless Ethernet autoselect
	status: no carrier
	ssid "" channel 1
	authmode OPEN privacy OFF txpowmax 100 bmiss 7 protmode CTS


Here is a post from the ml which is likely related to this problem:
http://www.mail-archive.com/freebsd-stable@freebsd.org/msg87278.html

-- 
Ernst Peter Stein