2011-06-17 12:25:03

by Peter Chubb

[permalink] [raw]
Subject: State of rtl8192CU driver?


Hi.
I'm trying out the rtl8192CU driver with an edimax wireless N
dongle. The driver loads correctly, and wpa_supplicant can
trigger an association with an access point, using WPA2/PEAP.
I'm using the tip of Linus's kernel tree (3.0.0-rc2)

But the interface then does nothing: it doesn't pick up an
ipv6 address from radvd broadcasts, nor does it appear to send
any dhcp requests, even though the TX packet counter increases.


Do you have any ideas about how I could debug this?

Peter C


2011-06-20 21:52:59

by Larry Finger

[permalink] [raw]
Subject: Re: State of rtl8192CU driver?

Peter,

I found a problem with rtl8192cu since the 3.0-rcX merge. Please go to
https://bugzilla.kernel.org/show_bug.cgi?id=38012 and try the patch found there.

Please let me know if it fixes your problem.

Larry

2011-06-21 03:25:14

by Peter Chubb

[permalink] [raw]
Subject: Re: State of rtl8192CU driver?

>>>>> "Larry" == Larry Finger <[email protected]> writes:

Larry> Peter, I found a problem with rtl8192cu since the 3.0-rcX
Larry> merge. Please go to
Larry> https://bugzilla.kernel.org/show_bug.cgi?id=38012 and try the
Larry> patch found there.

Thanks. I applied the patch and tried the result.

With the patch applied, transmissions work. From an adjacent
machine I can see the DHCP requests and router solicitations coming
from the rtl8192cu using wireshark.

However, reply packets are not received by the USB dongle ---
wireshark on the machine with the dongle installed sees no packets
coming in after the initial key exchange, only the packets going out.

There's nothing in dmesg output to show the problem, and downing and
then upping the interface results in failure to associate --- the
authentication attempt times out.

rtl8192cu: MAC address: 00:e0:4c:04:91:9c
rtl8192cu: Board Type 0
rtl8192cu: rx_max_size 15360, rx_urb_num 8, in_ep 1
ieee80211 phy1: Selected rate control algorithm 'rtl_rc'
usbcore: registered new interface driver rtl8192cu
udevd[1715]: renamed network interface wlan1 to wlan2
rtl8192cu: MAC auto ON okay!
rtl8192cu: Tx queue select: 0x05
rtl8192c: Loading firmware file rtlwifi/rtl8192cufw.bin
ADDRCONF(NETDEV_UP): wlan2: link is not ready
wlan2: authenticate with 00:1e:2a:28:32:09 (try 1)
wlan2: authenticated
wlan2: associate with 00:1e:2a:28:32:09 (try 1)
wlan2: RX AssocResp from 00:1e:2a:28:32:09 (capab=0x411 status=0 aid=1)
wlan2: associated
ADDRCONF(NETDEV_CHANGE): wlan2: link becomes ready
wlan2: deauthenticating from 00:1e:2a:28:32:09 by local choice (reason=3)
wlan2: authenticate with 00:1e:2a:28:32:09 (try 1)
wlan2: no IPv6 routers present
wlan2: authenticate with 00:1e:2a:28:32:09 (try 2)
wlan2: authenticate with 00:1e:2a:28:32:09 (try 3)
wlan2: authentication with 00:1e:2a:28:32:09 timed out

2011-06-20 00:35:30

by Peter Chubb

[permalink] [raw]
Subject: Re: State of rtl8192CU driver?

>>>>> "Larry" == Larry Finger <[email protected]> writes:

Larry> On 06/17/2011 06:15 AM, [email protected] wrote:
>>
>> Hi. I'm trying out the rtl8192CU driver with an edimax wireless N
>> dongle. The driver loads correctly, and wpa_supplicant can trigger
>> an association with an access point, using WPA2/PEAP. I'm using
>> the tip of Linus's kernel tree (3.0.0-rc2)
>>
>> But the interface then does nothing: it doesn't pick up an ipv6
>> address from radvd broadcasts, nor does it appear to send any dhcp
>> requests, even though the TX packet counter increases.
>>
>>
>> Do you have any ideas about how I could debug this?

Larry> You should inspect the output from dmesg to see if anything is
Larry> reported. In addition, use wireshark to see what is on the air.

Nothing in dmesg, apart from the usual:

Jun 20 09:30:41 localhost kernel: rtl8192cu: MAC address: 00:e0:4c:04:91:9c
Jun 20 09:30:41 localhost kernel: rtl8192cu: Board Type 0
Jun 20 09:30:41 localhost kernel: rtl8192cu: rx_max_size 15360, rx_urb_num 8, in_ep 1
Jun 20 09:30:41 localhost kernel: ieee80211 phy1: Selected rate control algorithm 'rtl_rc'
Jun 20 09:30:41 localhost kernel: usbcore: registered new interface driver rtl8192cu
Jun 20 09:33:10 localhost kernel: rtl8192cu: MAC auto ON okay!
Jun 20 09:33:10 localhost kernel: rtl8192cu: Tx queue select: 0x05
Jun 20 09:33:10 localhost kernel: rtl8192c: Loading firmware file rtlwifi/rtl8192cufw.bin
Jun 20 09:33:11 localhost kernel: rtl8192c_common:_rtl92c_fw_free_to_go():<0-0> Polling FW ready fail!! REG_MCUFWDL:0x00000006 .
Jun 20 09:33:11 localhost kernel: rtl8192c_common:rtl92c_download_fw():<0-0> Firmware is not ready to run!
Jun 20 09:33:11 localhost kernel: ADDRCONF(NETDEV_UP): wlan2: link is not ready
Jun 20 09:33:12 localhost kernel: wlan2: authenticate with 00:22:6b:73:a9:fa (try 1)
Jun 20 09:33:12 localhost kernel: wlan2: authenticated
Jun 20 09:33:12 localhost kernel: wlan2: associate with 00:22:6b:73:a9:fa (try 1
Jun 20 09:33:12 localhost kernel: wlan2: RX AssocResp from 00:22:6b:73:a9:fa (capab=0x411 status=0 aid=6)
Jun 20 09:33:12 localhost kernel: wlan2: associated
Jun 20 09:33:12 localhost kernel: ADDRCONF(NETDEV_CHANGE): wlan2: link becomes ready
Jun 20 09:33:23 localhost kernel: wlan2: no IPv6 routers present


Wireshark on the host which has the dongle inserted shows the key
exchange, then the DHCP broadcast and a few mdns broadcasts using the
ipv6 link-local address, then nothing.

On an adjacent host, I see the key exchange, then nothing. It's as if
the dongle shuts itself down after a few seconds.

To test this, I let machine and dongle get cold, then booted with the
dongle inserted. It managed to get an ipv6 address, but not an ipv4
address; and the monitoring host saw the dhcp send and reply, but the
dongle did not see the reply.

I tried recompiling with DBG_TRACE: I see many many calls to
rtl8192c_common:rtl92c_dm_check_txpower_tracking_thermal_meter():<0-0>
Trigger 92S Thermal Meter!!

and

rtl8192c_common:rtl92c_dm_txpower_tracking_callback_thermalmeter():<0-0> Initial reg0xa24 = 0x90e1317, cck_index=0xc, ch14 0
rtl8192c_common:rtl92c_dm_txpower_tracking_cal
lback_thermalmeter():<0-0> Readback Thermal Meter = 0x13 pre thermal meter 0x11
eeprom_thermalmeter 0x11 delta 0x2 delta_lck 0x1 delta_iqk 0x1

Could there be something wrong with the auto-power adjustment in
response to temperature measurements? The dongle does get quite warm
to touch.

Larry> What kind of connection is being tried?

I'm still trying to get the device to get and keep an IP address so
any kind of connexion can be tried on top.

Peter C

2011-06-21 04:26:02

by Larry Finger

[permalink] [raw]
Subject: Re: State of rtl8192CU driver?

On 06/20/2011 10:24 PM, Peter Chubb wrote:
>>>>>> "Larry" == Larry Finger<[email protected]> writes:
>
> Larry> Peter, I found a problem with rtl8192cu since the 3.0-rcX
> Larry> merge. Please go to
> Larry> https://bugzilla.kernel.org/show_bug.cgi?id=38012 and try the
> Larry> patch found there.
>
> Thanks. I applied the patch and tried the result.
>
> With the patch applied, transmissions work. From an adjacent
> machine I can see the DHCP requests and router solicitations coming
> from the rtl8192cu using wireshark.
>
> However, reply packets are not received by the USB dongle ---
> wireshark on the machine with the dongle installed sees no packets
> coming in after the initial key exchange, only the packets going out.
>
> There's nothing in dmesg output to show the problem, and downing and
> then upping the interface results in failure to associate --- the
> authentication attempt times out.
>
> rtl8192cu: MAC address: 00:e0:4c:04:91:9c
> rtl8192cu: Board Type 0
> rtl8192cu: rx_max_size 15360, rx_urb_num 8, in_ep 1
> ieee80211 phy1: Selected rate control algorithm 'rtl_rc'
> usbcore: registered new interface driver rtl8192cu
> udevd[1715]: renamed network interface wlan1 to wlan2
> rtl8192cu: MAC auto ON okay!
> rtl8192cu: Tx queue select: 0x05
> rtl8192c: Loading firmware file rtlwifi/rtl8192cufw.bin
> ADDRCONF(NETDEV_UP): wlan2: link is not ready
> wlan2: authenticate with 00:1e:2a:28:32:09 (try 1)
> wlan2: authenticated
> wlan2: associate with 00:1e:2a:28:32:09 (try 1)
> wlan2: RX AssocResp from 00:1e:2a:28:32:09 (capab=0x411 status=0 aid=1)
> wlan2: associated
> ADDRCONF(NETDEV_CHANGE): wlan2: link becomes ready
> wlan2: deauthenticating from 00:1e:2a:28:32:09 by local choice (reason=3)
> wlan2: authenticate with 00:1e:2a:28:32:09 (try 1)
> wlan2: no IPv6 routers present
> wlan2: authenticate with 00:1e:2a:28:32:09 (try 2)
> wlan2: authenticate with 00:1e:2a:28:32:09 (try 3)
> wlan2: authentication with 00:1e:2a:28:32:09 timed out

What do you get for an md5sum for the firmware? I get
finger@larrylap:~> md5sum /lib/firmware/rtlwifi/rtl8192cufw.bin
943e9b714a926e630b8152d7aad91d2e /lib/firmware/rtlwifi/rtl8192cufw.bin

Other than that, I have no explanation for what you see. I can connect with mine
using WEP, WPA and WPA2 encryption. It also connects with an 802.11n AP using 40
MHz channels.

The only difference between your system and mine is that I am using the
wireless-testing tree, not the mainline tree, but I just checked the sources.
The only differences were the most recent commits.

Larry


2011-06-21 04:38:21

by Peter Chubb

[permalink] [raw]
Subject: Re: State of rtl8192CU driver?

>>>>> "Larry" == Larry Finger <[email protected]> writes:

Larry> On 06/20/2011 10:24 PM, Peter Chubb wrote:
>>>>>>> "Larry" == Larry Finger<[email protected]> writes:
>>
Larry> Peter, I found a problem with rtl8192cu since the 3.0-rcX
Larry> merge. Please go to
Larry> https://bugzilla.kernel.org/show_bug.cgi?id=38012 and try the
Larry> patch found there.
>>
>> Thanks. I applied the patch and tried the result.
>>

Larry> What do you get for an md5sum for the firmware? I get
Larry> finger@larrylap:~> md5sum /lib/firmware/rtlwifi/rtl8192cufw.bin
Larry> 943e9b714a926e630b8152d7aad91d2e
Larry> /lib/firmware/rtlwifi/rtl8192cufw.bin

same.

Larry> Other than that, I have no explanation for what you see. I can
Larry> connect with mine using WEP, WPA and WPA2 encryption. It also
Larry> connects with an 802.11n AP using 40 MHz channels.

Hmmmm. I'm using a tip-of-Linus's tree kernel. Maybe there's
something else interfering in my config? If yours works, then the
problem must be here.

Larry> The only difference between your system and mine is that I am
Larry> using the wireless-testing tree, not the mainline tree, but I
Larry> just checked the sources. The only differences were the most
Larry> recent commits.

Very strange. I'll dig around a bit more and see if I can sus it out.

Peter C

2011-06-20 21:55:40

by Larry Finger

[permalink] [raw]
Subject: Re: State of rtl8192CU driver?

Peter,

I found a problem with rtl8192cu since the 3.0-rcX merge. Please go to
https://bugzilla.kernel.org/show_bug.cgi?id=38012 and try the patch found there.

Please let me know if it fixes your problem.

Larry

2011-06-17 14:09:13

by Larry Finger

[permalink] [raw]
Subject: Re: State of rtl8192CU driver?

On 06/17/2011 06:15 AM, [email protected] wrote:
>
> Hi.
> I'm trying out the rtl8192CU driver with an edimax wireless N
> dongle. The driver loads correctly, and wpa_supplicant can
> trigger an association with an access point, using WPA2/PEAP.
> I'm using the tip of Linus's kernel tree (3.0.0-rc2)
>
> But the interface then does nothing: it doesn't pick up an
> ipv6 address from radvd broadcasts, nor does it appear to send
> any dhcp requests, even though the TX packet counter increases.
>
>
> Do you have any ideas about how I could debug this?

You should inspect the output from dmesg to see if anything is reported. In
addition, use wireshark to see what is on the air.

What kind of connection is being tried?

Larry