All of lore.kernel.org
 help / color / mirror / Atom feed
From: Andreas Messer <andi@bastelmap.de>
To: linux-wireless@vger.kernel.org
Subject: Re: rt73usb not working since linux 3.4
Date: Thu, 23 Aug 2012 20:51:59 +0200	[thread overview]
Message-ID: <2175505.7MyGkZApGB@hermes> (raw)
In-Reply-To: <1994279.EoVfTdb8RL@hermes>

[-- Attachment #1: Type: text/plain, Size: 1849 bytes --]

Hey there,

Am Dienstag, 24. Juli 2012, 19:33:34 schrieb Andreas Messer:
> Hello Again,
> 
> Am Dienstag, 26. Juni 2012, 13:18:35 schrieb John W. Linville:
> > On Tue, Jun 26, 2012 at 06:03:56PM +0200, Andreas Messer wrote:
> > > Dear all,
> > > 
> > > updating my pc from linux kernel 3.3 to linux kernel 3.4 broke my wlan.

I have spent some more time on investigating the cause of the bug and found 
the problem. Actually I'm not sure which is the right solution. The problem is 
caused by the following points:

1) The rt73 hardware registers are not initialized before bringing the 
   corresponding network interface up ('ifconfig wlan0 up')

2) Bringing the interface up is not possible because of the kill switch

3) The GPIO input pin for the kill switch is still in 'output mode' (the
   default power on value), therefore the register will always read 
   'killswitch on'

So something like a deadlock. While looking through the code, I have seen, 
that the whole rt2xx driver uses here the same concept, that the hardware 
register initialization and firmware-download does not happen before the
interface is brought up. Im not sure if that is the right concept, shouldn't 
be the hardware initialized properly on loading the driver already? I mean, if 
values are read from the hardware in order to e.g. read the kill switch state 
shouldn't bethe hardware in a defined state before that? Anyway, it would be 
possible to solve this bug easily by only setting up the correct value of the 
CSR13 register right after reading the eeprom. For simple testing I have 
written the correct gpio mask to CSR13 using the debugfs interface and the 
wlan interface immediately was brought up and connected successfully with my 
Network.

So which is the right solution? I could make & test a patch for the simple 
solution easily.

Cheers
Andreas 

[-- Attachment #2: This is a digitally signed message part. --]
[-- Type: application/pgp-signature, Size: 198 bytes --]

  reply	other threads:[~2012-08-23 18:52 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-06-26 16:03 rt73usb not working since linux 3.4 Andreas Messer
2012-06-26 17:18 ` John W. Linville
2012-07-24 17:33   ` Andreas Messer
2012-08-23 18:51     ` Andreas Messer [this message]
2012-08-26 18:22       ` Gertjan van Wingerde
2012-08-27 16:33         ` Andreas Messer
2012-08-27 17:26           ` Gertjan van Wingerde
2012-07-11 16:50 ` Olive
2012-07-14 20:28   ` Olive

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=2175505.7MyGkZApGB@hermes \
    --to=andi@bastelmap.de \
    --cc=linux-wireless@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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.