From patchwork Sun Jan 31 22:03:25 2010 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Larry Finger X-Patchwork-Id: 76008 Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by demeter.kernel.org (8.14.3/8.14.3) with ESMTP id o0VM3bxT013060 for ; Sun, 31 Jan 2010 22:03:37 GMT Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754100Ab0AaWDg (ORCPT ); Sun, 31 Jan 2010 17:03:36 -0500 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S1753837Ab0AaWDg (ORCPT ); Sun, 31 Jan 2010 17:03:36 -0500 Received: from hrndva-omtalb.mail.rr.com ([71.74.56.122]:65044 "EHLO hrndva-omtalb.mail.rr.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753437Ab0AaWDd (ORCPT ); Sun, 31 Jan 2010 17:03:33 -0500 X-Authority-Analysis: v=1.0 c=1 a=fcFDE7218KsA:10 a=yQdBAQUQAAAA:8 a=VwQbUJbxAAAA:8 a=KFsqK8UgCRnlSwT89nIA:9 a=iA_MAp26kTWMqaZL_VgA:7 a=6iBb90aBcYwZwW12rh8H5lpupcgA:4 a=IcxpeKGZWnEA:10 a=LI9Vle30uBYA:10 a=8ZEykzxZIpqVlTQi:21 a=kFjhAsNYsXoAwdeW:21 X-Cloudmark-Score: 0 X-Originating-IP: 65.28.92.235 Received: from [65.28.92.235] ([65.28.92.235:56508] helo=larrylap.site) by hrndva-oedge02.mail.rr.com (envelope-from ) (ecelerity 2.2.2.39 r()) with ESMTP id 3D/8B-09114-D2EF56B4; Sun, 31 Jan 2010 22:03:28 +0000 Date: Sun, 31 Jan 2010 16:03:25 -0600 From: Larry Finger To: Michael Buesch , John W Linville Cc: bcm43xx-dev@lists.berlios.de, linux-wireless@vger.kernel.org Subject: [RFC/RFT] b43: Fix regression from commit c7ab5ef Message-ID: <4b65fe2d.tW61Y0okWmOLTL3e%Larry.Finger@lwfinger.net> User-Agent: Heirloom mailx 12.2 01/07/07 MIME-Version: 1.0 Sender: linux-wireless-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-wireless@vger.kernel.org X-Greylist: IP, sender and recipient auto-whitelisted, not delayed by milter-greylist-4.2.3 (demeter.kernel.org [140.211.167.41]); Sun, 31 Jan 2010 22:03:39 +0000 (UTC) Index: wireless-testing/drivers/net/wireless/b43/main.c =================================================================== --- wireless-testing.orig/drivers/net/wireless/b43/main.c +++ wireless-testing/drivers/net/wireless/b43/main.c @@ -637,10 +637,17 @@ static void b43_upload_card_macaddress(s static void b43_set_slot_time(struct b43_wldev *dev, u16 slot_time) { /* slot_time is in usec. */ - if (dev->phy.type != B43_PHYTYPE_G) + /* This test used to exit for all but a G PHY. */ + if (b43_current_band(dev->wl) == IEEE80211_BAND_5GHZ) return; - b43_write16(dev, 0x684, 510 + slot_time); - b43_shm_write16(dev, B43_SHM_SHARED, 0x0010, slot_time); + b43_write16(dev, B43_MMIO_IFSSLOT, 510 + slot_time); + /* Shared memory location 0x0010 is the slot time and should be + * set to slot_time; however, this register is initially 0 and changing + * the value adversely affects the transmit rate for BCM4311 + * devices. Until this behavior is unterstood, delete this step + * + * b43_shm_write16(dev, B43_SHM_SHARED, 0x0010, slot_time); + */ } static void b43_short_slot_timing_enable(struct b43_wldev *dev) Index: wireless-testing/drivers/net/wireless/b43/b43.h =================================================================== --- wireless-testing.orig/drivers/net/wireless/b43/b43.h +++ wireless-testing/drivers/net/wireless/b43/b43.h @@ -115,6 +115,7 @@ #define B43_MMIO_TSF_2 0x636 /* core rev < 3 only */ #define B43_MMIO_TSF_3 0x638 /* core rev < 3 only */ #define B43_MMIO_RNG 0x65A +#define B43_MMIO_IFSSLOT 0x684 /* Interframe slot time */ #define B43_MMIO_IFSCTL 0x688 /* Interframe space control */ #define B43_MMIO_IFSCTL_USE_EDCF 0x0004 #define B43_MMIO_POWERUP_DELAY 0x6A8