linux-wireless.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Ivo van Doorn <ivdoorn@gmail.com>
To: Peter Chubb <peterc@gelato.unsw.edu.au>
Cc: linux-kernel@vger.kernel.org, linux-wireless@vger.kernel.org,
	John Linville <linville@tuxdriver.com>
Subject: Re: Fixing rt2500pci
Date: Wed, 30 Jul 2008 21:15:03 +0200	[thread overview]
Message-ID: <200807302115.03865.IvDoorn@gmail.com> (raw)
In-Reply-To: <200807302105.56909.IvDoorn@gmail.com>

On Wednesday 30 July 2008, Ivo van Doorn wrote:
> On Wednesday 30 July 2008, Peter Chubb wrote:
> > 
> > In kernel version 2.6.26-rc9 my wireless LAN card worked; but in the
> > released 2.6.26, my RaLink rt2500 card wouldn't associate.
> > 
> > Git-bisect led me to this patch:
> > 
> > 	61486e0f68d1f8966c09b734566a187d42d65c54
> > 	rt2x00: Remove ieee80211_tx_control argument from write_tx_desc()
> > 
> > I believe that there are two problems with that patch.  Setting the Tx
> > Length has been removed inadvertently, and one of the conditions for
> > when to set ifs to IFS_SIFS has also been removed.
> > 
> > This patch fixes those things, and with it my card works again.
> > 
> > Signed-off-by: Peter Chubb <peterc@gelato.unsw.edu.au>
> > 
> > diff --git a/drivers/net/wireless/rt2x00/rt2500pci.c b/drivers/net/wireless/rt2x00/rt2500pci.c
> > index 1724ce9..4ba2165 100644
> > --- a/drivers/net/wireless/rt2x00/rt2500pci.c
> > +++ b/drivers/net/wireless/rt2x00/rt2500pci.c
> > @@ -1198,6 +1198,7 @@ static void rt2500pci_write_tx_desc(struct rt2x00_dev *rt2x00dev,
> >  	rt2x00_set_field32(&word, TXD_W0_IFS, txdesc->ifs);
> >  	rt2x00_set_field32(&word, TXD_W0_RETRY_MODE,
> >  			   test_bit(ENTRY_TXD_RETRY_MODE, &txdesc->flags));
> > +	rt2x00_set_field32(&word, TXD_W0_DATABYTE_COUNT, skbdesc->data_len);
> >  	rt2x00_set_field32(&word, TXD_W0_CIPHER_ALG, CIPHER_NONE);
> >  	rt2x00_desc_write(txd, 0, word);
> >  }
> 
> How could that have disappeared? good catch.
> The above change is:
> 
> Acked-by: Ivo van Doorn <IvDoorn@gmail.com>
> 
> But:
> 
> > diff --git a/drivers/net/wireless/rt2x00/rt2x00dev.c b/drivers/net/wireless/rt2x00/rt2x00dev.c
> > index e1368f7..a11d6ff 100644
> > --- a/drivers/net/wireless/rt2x00/rt2x00dev.c
> > +++ b/drivers/net/wireless/rt2x00/rt2x00dev.c
> > @@ -691,7 +691,8 @@ void rt2x00lib_write_tx_desc(struct rt2x00_dev *rt2x00dev,
> >  	 * Set ifs to IFS_SIFS when the this is not the first fragment,
> >  	 * or this fragment came after RTS/CTS.
> >  	 */
> > -	if (test_bit(ENTRY_TXD_RTS_FRAME, &txdesc.flags)) {
> > +	if ((seq_ctrl & IEEE80211_SCTL_FRAG)  ||
> > +		test_bit(ENTRY_TXD_RTS_FRAME, &txdesc.flags)) {
> >  		txdesc.ifs = IFS_SIFS;
> >  	} else if (control->flags & IEEE80211_TXCTL_FIRST_FRAGMENT) {
> >  		__set_bit(ENTRY_TXD_FIRST_FRAGMENT, &txdesc.flags);
> 
> The above does not correspond with legacy driver, so I am hesitant in accepting this change.
> Unless you are _absolutely_ sure this change does fix the issue, and the databate count
> initialization is not sufficient on its own. If that is not the case, please resend the patch with the
> rt2x00dev.c change ommitted and my ack added. (Please add John Linville to the CC list as well,
> so it can be merged faster :) )

Correction, the code does correspond with the legacy driver, but the codechange in:
61486e0f68d1f8966c09b734566a187d42d65c54 was correct since it still applies IFS_SIFS to
frames with fragments (excluding the first fragment).

So please resend the patch with only the rt2500pci change.

Ivo

  reply	other threads:[~2008-07-30 18:53 UTC|newest]

Thread overview: 15+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-07-30  5:08 Fixing rt2500pci Peter Chubb
2008-07-30 19:05 ` Ivo van Doorn
2008-07-30 19:15   ` Ivo van Doorn [this message]
2008-07-31  0:56     ` Fixing rt2500pci [PATCH] Peter Chubb
2008-07-31  2:11       ` Peter Chubb
2008-07-31 21:51         ` John Daiker
2008-07-31  7:21       ` Ivo van Doorn
2008-08-12 10:01       ` Ivo van Doorn
2008-08-16 23:32         ` [stable] " Greg KH
2008-08-17  8:58           ` Ivo van Doorn
2008-07-31  4:07   ` Fixing rt2500pci Peter Chubb
2008-08-05  3:01     ` Peter Chubb
2008-08-05 18:44       ` Ivo van Doorn
2008-08-05 21:01         ` Peter Chubb
2008-08-06  1:10         ` Peter Chubb

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=200807302115.03865.IvDoorn@gmail.com \
    --to=ivdoorn@gmail.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-wireless@vger.kernel.org \
    --cc=linville@tuxdriver.com \
    --cc=peterc@gelato.unsw.edu.au \
    /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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).