From: "John W. Linville" <linville@tuxdriver.com>
To: jeff@garzik.org
Cc: netdev@vger.kernel.org
Subject: Please pull 'upstream-fixes' branch of wireless-2.6
Date: Mon, 5 Jun 2006 17:53:58 -0400 [thread overview]
Message-ID: <20060605215353.GA7381@tuxdriver.com> (raw)
This pull is intended for 2.6.17 if at all possible.
Thanks,
John
---
The following changes since commit 672c6108a51bf559d19595d9f8193dfd81f0f752:
Linus Torvalds:
Merge master.kernel.org:/.../jejb/scsi-rc-fixes-2.6
are found in the git repository at:
git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-2.6.git upstream-fixes
Michael Buesch:
bcm43xx: add DMA rx poll workaround to DMA4
drivers/net/wireless/bcm43xx/bcm43xx_dma.c | 31 ++++++++++++++++++++--------
1 files changed, 22 insertions(+), 9 deletions(-)
diff --git a/drivers/net/wireless/bcm43xx/bcm43xx_dma.c b/drivers/net/wireless/bcm43xx/bcm43xx_dma.c
index bbecba0..d0318e5 100644
--- a/drivers/net/wireless/bcm43xx/bcm43xx_dma.c
+++ b/drivers/net/wireless/bcm43xx/bcm43xx_dma.c
@@ -624,25 +624,28 @@ err_destroy_tx0:
static u16 generate_cookie(struct bcm43xx_dmaring *ring,
int slot)
{
- u16 cookie = 0x0000;
+ u16 cookie = 0xF000;
/* Use the upper 4 bits of the cookie as
* DMA controller ID and store the slot number
- * in the lower 12 bits
+ * in the lower 12 bits.
+ * Note that the cookie must never be 0, as this
+ * is a special value used in RX path.
*/
switch (ring->mmio_base) {
default:
assert(0);
case BCM43xx_MMIO_DMA1_BASE:
+ cookie = 0xA000;
break;
case BCM43xx_MMIO_DMA2_BASE:
- cookie = 0x1000;
+ cookie = 0xB000;
break;
case BCM43xx_MMIO_DMA3_BASE:
- cookie = 0x2000;
+ cookie = 0xC000;
break;
case BCM43xx_MMIO_DMA4_BASE:
- cookie = 0x3000;
+ cookie = 0xD000;
break;
}
assert(((u16)slot & 0xF000) == 0x0000);
@@ -660,16 +663,16 @@ struct bcm43xx_dmaring * parse_cookie(st
struct bcm43xx_dmaring *ring = NULL;
switch (cookie & 0xF000) {
- case 0x0000:
+ case 0xA000:
ring = dma->tx_ring0;
break;
- case 0x1000:
+ case 0xB000:
ring = dma->tx_ring1;
break;
- case 0x2000:
+ case 0xC000:
ring = dma->tx_ring2;
break;
- case 0x3000:
+ case 0xD000:
ring = dma->tx_ring3;
break;
default:
@@ -839,8 +842,18 @@ static void dma_rx(struct bcm43xx_dmarin
/* We received an xmit status. */
struct bcm43xx_hwxmitstatus *hw = (struct bcm43xx_hwxmitstatus *)skb->data;
struct bcm43xx_xmitstatus stat;
+ int i = 0;
stat.cookie = le16_to_cpu(hw->cookie);
+ while (stat.cookie == 0) {
+ if (unlikely(++i >= 10000)) {
+ assert(0);
+ break;
+ }
+ udelay(2);
+ barrier();
+ stat.cookie = le16_to_cpu(hw->cookie);
+ }
stat.flags = hw->flags;
stat.cnt1 = hw->cnt1;
stat.cnt2 = hw->cnt2;
--
John W. Linville
linville@tuxdriver.com
next reply other threads:[~2006-06-05 21:54 UTC|newest]
Thread overview: 53+ messages / expand[flat|nested] mbox.gz Atom feed top
2006-06-05 21:53 John W. Linville [this message]
2006-06-05 21:55 ` Please pull 'upstream' branch of wireless-2.6 John W. Linville
2006-06-08 19:48 ` Jeff Garzik
2006-06-08 19:46 ` Please pull 'upstream-fixes' " Jeff Garzik
-- strict thread matches above, loose matches on Subject: below --
2007-05-29 18:30 John W. Linville
[not found] ` <20070529183037.GB3496-2XuSBdqkA4R54TAoqtyWWQ@public.gmane.org>
2007-05-30 13:46 ` Jeff Garzik
2007-05-22 15:17 John W. Linville
2007-02-02 21:27 Please pull "upstream-fixes" " John W. Linville
[not found] ` <20070202212747.GC9382-2XuSBdqkA4R54TAoqtyWWQ@public.gmane.org>
2007-02-07 0:06 ` Jeff Garzik
2007-01-18 15:48 Please pull 'upstream-fixes' " John W. Linville
2007-01-18 16:46 ` Jeff Garzik
2007-01-03 2:41 John W. Linville
2006-12-21 3:03 John W. Linville
2006-12-26 21:39 ` Jeff Garzik
2006-11-15 1:29 John W. Linville
2006-11-28 19:14 ` John W. Linville
2006-11-08 4:58 John W. Linville
2006-11-10 16:11 ` Jeff Garzik
2006-10-17 21:34 John W. Linville
2006-10-21 18:22 ` Jeff Garzik
2006-09-11 23:58 John W. Linville
2006-09-12 15:42 ` Jeff Garzik
2006-08-23 18:46 John W. Linville
2006-08-24 4:41 ` Jeff Garzik
2006-08-04 20:58 John W. Linville
2006-08-09 3:48 ` Jeff Garzik
2006-08-02 21:56 John W. Linville
2006-08-03 21:19 ` Jeff Garzik
2006-07-28 0:22 John W. Linville
2006-07-29 4:32 ` Jeff Garzik
2006-07-10 21:29 John W. Linville
2006-05-26 20:37 John W. Linville
2006-05-27 1:26 ` Jeff Garzik
2006-05-22 19:18 John W. Linville
2006-05-24 4:26 ` Jeff Garzik
2006-05-24 8:52 ` Andrew Morton
2006-05-17 19:34 John W. Linville
2006-05-06 1:06 Please pull upstream-fixes " John W. Linville
2006-05-06 3:08 ` Andrew Morton
2006-05-06 3:20 ` Linus Torvalds
2006-05-06 4:12 ` Stephen Hemminger
2006-05-06 13:45 ` John W. Linville
2006-04-24 19:40 Please pull 'upstream-fixes' " John W. Linville
2006-04-26 10:17 ` Jeff Garzik
2006-04-20 1:12 Please pull upstream-fixes " John W. Linville
2006-04-20 8:51 ` Michael Buesch
2006-04-20 8:57 ` Andrew Morton
2006-04-20 9:12 ` Michael Buesch
2006-04-20 12:53 ` John W. Linville
2006-04-20 19:58 ` Andrew Morton
2006-04-20 22:28 ` Linus Torvalds
2006-04-20 9:00 ` Jeff Garzik
2006-04-20 21:36 ` Jeff Garzik
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=20060605215353.GA7381@tuxdriver.com \
--to=linville@tuxdriver.com \
--cc=jeff@garzik.org \
--cc=netdev@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 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).