All of lore.kernel.org
 help / color / mirror / Atom feed
* rtl8192cu: testing with EdiMax USB
@ 2013-09-13  9:29 Mark Cave-Ayland
  2013-09-13 13:01 ` Mark Cave-Ayland
  0 siblings, 1 reply; 5+ messages in thread
From: Mark Cave-Ayland @ 2013-09-13  9:29 UTC (permalink / raw)
  To: Larry Finger; +Cc: linux-wireless

Hi all,

So talking to some colleagues at work, I managed to find someone else 
who uses the EdiMax USB dongle and persuaded them to lend it to me for 
the weekend in order to see whether it could be related to a hardware 
difference with my OEM dongle.

I've just tested with the EdiMax USB dongle which reports as "Bus 004 
Device 004: ID 7392:7811 Edimax Technology Co., Ltd EW-7811Un 802.11n 
Wireless Adapter [Realtek RTL8188CUS]" in lsusb, which I believe is 
exactly the same hardware that Larry is using. And again I still see the 
problem with disassociation.

I spent a bit more time tinkering further with debug=0x5, forgetting 
that I had left your last diagnostic patch applied. Based upon when the 
beacon output disappears in the logs (after updating the power 
registers), it does seem likely that is a power-related problem.

The two power-related messages that stand out to me are:

1) Repeated output of "pHalData->bHwRadioOff and eRfPowerStateToSet do 
not match: pHalData->bHwRadioOff 0, eRfPowerStateToSet 0" messages

2) rtl92c_dm_txpower_tracking_callback_thermalmeter() seems to be called 
X seconds before the "AP off for X seconds" messages

Larry - I've sent you the complete debug off-list from the EdiMax, so it 
should be a like-for-like comparison with your setup. Hopefully 
comparing with your output will help you work out exactly what the 
problem is.


ATB,

Mark.

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: rtl8192cu: testing with EdiMax USB
  2013-09-13  9:29 rtl8192cu: testing with EdiMax USB Mark Cave-Ayland
@ 2013-09-13 13:01 ` Mark Cave-Ayland
  2013-09-13 13:27   ` Mark Cave-Ayland
  0 siblings, 1 reply; 5+ messages in thread
From: Mark Cave-Ayland @ 2013-09-13 13:01 UTC (permalink / raw)
  To: Larry Finger; +Cc: linux-wireless

On 13/09/13 10:29, Mark Cave-Ayland wrote:

> I spent a bit more time tinkering further with debug=0x5, forgetting
> that I had left your last diagnostic patch applied. Based upon when the
> beacon output disappears in the logs (after updating the power
> registers), it does seem likely that is a power-related problem.

FWIW I just tried a quick test where I commented out the entire 
rtl92c_dm_txpower_tracking_callback_thermalmeter() function to make it a 
nop, and that didn't seem to make any difference...


ATB,

Mark.

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: rtl8192cu: testing with EdiMax USB
  2013-09-13 13:01 ` Mark Cave-Ayland
@ 2013-09-13 13:27   ` Mark Cave-Ayland
  2013-09-13 18:00     ` Larry Finger
  0 siblings, 1 reply; 5+ messages in thread
From: Mark Cave-Ayland @ 2013-09-13 13:27 UTC (permalink / raw)
  To: Larry Finger; +Cc: linux-wireless

On 13/09/13 14:01, Mark Cave-Ayland wrote:

>> I spent a bit more time tinkering further with debug=0x5, forgetting
>> that I had left your last diagnostic patch applied. Based upon when the
>> beacon output disappears in the logs (after updating the power
>> registers), it does seem likely that is a power-related problem.
>
> FWIW I just tried a quick test where I commented out the entire
> rtl92c_dm_txpower_tracking_callback_thermalmeter() function to make it a
> nop, and that didn't seem to make any difference...

Aha! The following diff to remove the call to rtl92c_dm_diginit() keeps 
me associated to the AP:

diff --git a/drivers/net/wireless/rtlwifi/rtl8192c/dm_common.c 
b/drivers/net/wireless/rtlwifi/rtl8192c/dm_common.c
index d2d57a2..c18362d 100644
--- a/drivers/net/wireless/rtlwifi/rtl8192c/dm_common.c
+++ b/drivers/net/wireless/rtlwifi/rtl8192c/dm_common.c
@@ -1275,7 +1275,7 @@ void rtl92c_dm_init(struct ieee80211_hw *hw)
         struct rtl_priv *rtlpriv = rtl_priv(hw);

         rtlpriv->dm.dm_type = DM_TYPE_BYDRIVER;
-       rtl92c_dm_diginit(hw);
+       //rtl92c_dm_diginit(hw);
         rtl92c_dm_init_dynamic_txpower(hw);
         rtl92c_dm_init_edca_turbo(hw);
         rtl92c_dm_init_rate_adaptive_mask(hw);

However, dhclient still takes a very long time get an IP address and the 
connection seems extremely lossy, much like it was when I could get a 
connection before. Perhaps there are two different bugs here, one for 
the association and one for the data loss?


ATB,

Mark.

^ permalink raw reply related	[flat|nested] 5+ messages in thread

* Re: rtl8192cu: testing with EdiMax USB
  2013-09-13 13:27   ` Mark Cave-Ayland
@ 2013-09-13 18:00     ` Larry Finger
  2013-09-13 18:20       ` Mark Cave-Ayland
  0 siblings, 1 reply; 5+ messages in thread
From: Larry Finger @ 2013-09-13 18:00 UTC (permalink / raw)
  To: Mark Cave-Ayland; +Cc: linux-wireless

On 09/13/2013 08:27 AM, Mark Cave-Ayland wrote:
> On 13/09/13 14:01, Mark Cave-Ayland wrote:
>
>>> I spent a bit more time tinkering further with debug=0x5, forgetting
>>> that I had left your last diagnostic patch applied. Based upon when the
>>> beacon output disappears in the logs (after updating the power
>>> registers), it does seem likely that is a power-related problem.
>>
>> FWIW I just tried a quick test where I commented out the entire
>> rtl92c_dm_txpower_tracking_callback_thermalmeter() function to make it a
>> nop, and that didn't seem to make any difference...
>
> Aha! The following diff to remove the call to rtl92c_dm_diginit() keeps me
> associated to the AP:
>
> diff --git a/drivers/net/wireless/rtlwifi/rtl8192c/dm_common.c
> b/drivers/net/wireless/rtlwifi/rtl8192c/dm_common.c
> index d2d57a2..c18362d 100644
> --- a/drivers/net/wireless/rtlwifi/rtl8192c/dm_common.c
> +++ b/drivers/net/wireless/rtlwifi/rtl8192c/dm_common.c
> @@ -1275,7 +1275,7 @@ void rtl92c_dm_init(struct ieee80211_hw *hw)
>          struct rtl_priv *rtlpriv = rtl_priv(hw);
>
>          rtlpriv->dm.dm_type = DM_TYPE_BYDRIVER;
> -       rtl92c_dm_diginit(hw);
> +       //rtl92c_dm_diginit(hw);
>          rtl92c_dm_init_dynamic_txpower(hw);
>          rtl92c_dm_init_edca_turbo(hw);
>          rtl92c_dm_init_rate_adaptive_mask(hw);
>
> However, dhclient still takes a very long time get an IP address and the
> connection seems extremely lossy, much like it was when I could get a connection
> before. Perhaps there are two different bugs here, one for the association and
> one for the data loss?

Thanks for the info. Eliminating the call to rtl92c_dm_diginit() is a very large 
hammer to attack a small flea, but that points to a potential problem.

Larry



^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: rtl8192cu: testing with EdiMax USB
  2013-09-13 18:00     ` Larry Finger
@ 2013-09-13 18:20       ` Mark Cave-Ayland
  0 siblings, 0 replies; 5+ messages in thread
From: Mark Cave-Ayland @ 2013-09-13 18:20 UTC (permalink / raw)
  To: Larry Finger; +Cc: linux-wireless

On 13/09/13 19:00, Larry Finger wrote:

> Thanks for the info. Eliminating the call to rtl92c_dm_diginit() is a
> very large hammer to attack a small flea, but that points to a potential
> problem.

Glad that it proves useful to you. If you need me to run test patches 
(e.g. logging calculated power values to dmesg), please send them 
through to me off-list and I'll run them and send you back the results.

Given that it could be related to power calculations, another bit of 
information that may help you recreate this is that my desk is really 
close to the AP (probably 10m or a bit less), and so the indicated 
signal strength should be close to maximum.


HTH,

Mark.

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2013-09-13 18:21 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2013-09-13  9:29 rtl8192cu: testing with EdiMax USB Mark Cave-Ayland
2013-09-13 13:01 ` Mark Cave-Ayland
2013-09-13 13:27   ` Mark Cave-Ayland
2013-09-13 18:00     ` Larry Finger
2013-09-13 18:20       ` Mark Cave-Ayland

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.