* RFT: The real fix for BCM4311 and BCM4312 @ 2007-02-07 6:02 Larry Finger 2007-02-07 6:34 ` Pavel Roskin 0 siblings, 1 reply; 9+ messages in thread From: Larry Finger @ 2007-02-07 6:02 UTC (permalink / raw) To: Broadcom Linux, wireless The patch I sent out earlier was wrong; however, it provided a clue as to what was wrong in the specs and in the code. As it turned out, the mistake I made earlier only affected 4 places in the code and it was easy to test them in turn. According to Murphy's law, the wrong one was the last one tested. If you don't know about Murphy, his law can be paraphrased as "Anything that can go wrong will". The patch below will only affect cards with PHY revision 8, which I think are only BCM4311 and BCM4312. At least those are the only ones in the database. Sorry about the false step earlier, but I was so excited to get the 4311 working that I screwed up the test of the 4318. Larry ============== Index: linux-2.6/drivers/net/wireless/bcm43xx/bcm43xx_phy.c =================================================================== --- linux-2.6.orig/drivers/net/wireless/bcm43xx/bcm43xx_phy.c +++ linux-2.6/drivers/net/wireless/bcm43xx/bcm43xx_phy.c @@ -1225,7 +1225,7 @@ static void bcm43xx_phy_initg(struct bcm } if (phy->rev < 3 && phy->connected) bcm43xx_phy_write(bcm, 0x047E, 0x0078); - if (phy->rev >= 6 && phy->rev <= 8) { + if (phy->rev >= 6 && phy->rev < 8) { bcm43xx_phy_write(bcm, 0x0801, bcm43xx_phy_read(bcm, 0x0801) | 0x0080); bcm43xx_phy_write(bcm, 0x043E, bcm43xx_phy_read(bcm, 0x043E) | 0x0004); } ^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: RFT: The real fix for BCM4311 and BCM4312 2007-02-07 6:02 RFT: The real fix for BCM4311 and BCM4312 Larry Finger @ 2007-02-07 6:34 ` Pavel Roskin 2007-02-07 13:43 ` Rafael J. Wysocki 0 siblings, 1 reply; 9+ messages in thread From: Pavel Roskin @ 2007-02-07 6:34 UTC (permalink / raw) To: Larry Finger; +Cc: Broadcom Linux, wireless On Wed, 2007-02-07 at 00:02 -0600, Larry Finger wrote: > The patch below will only affect cards with PHY revision 8, which I think are only BCM4311 and > BCM4312. At least those are the only ones in the database. BCM4312, old patch: 1.7M/s no patch: 26k/s no patch, rate 1: 100k/s new patch: 1.7M/s new patch, rate 1: 1.1M/s new patch, rate 2: 1.5M/s new patch, rate 5.5: 1.7M/s new patch, rate 18: 2.2M/s new patch, rate 36: 2.2M/s Yes, it looks like the new patch is as good as the previous one for my card. The rates are reported by wget, so they are not nearly precise, but the difference of 2 orders of magnitude just cannot be explained by anything other than the fix to the driver. -- Regards, Pavel Roskin ^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: RFT: The real fix for BCM4311 and BCM4312 2007-02-07 6:34 ` Pavel Roskin @ 2007-02-07 13:43 ` Rafael J. Wysocki 2007-02-07 13:53 ` Larry Finger 0 siblings, 1 reply; 9+ messages in thread From: Rafael J. Wysocki @ 2007-02-07 13:43 UTC (permalink / raw) To: Larry Finger; +Cc: bcm43xx-dev, Pavel Roskin, wireless On Wednesday, 7 February 2007 07:34, Pavel Roskin wrote: > On Wed, 2007-02-07 at 00:02 -0600, Larry Finger wrote: > > The patch below will only affect cards with PHY revision 8, which I think are only BCM4311 and > > BCM4312. At least those are the only ones in the database. > > BCM4312, old patch: 1.7M/s > no patch: 26k/s > no patch, rate 1: 100k/s > new patch: 1.7M/s > new patch, rate 1: 1.1M/s > new patch, rate 2: 1.5M/s > new patch, rate 5.5: 1.7M/s > new patch, rate 18: 2.2M/s > new patch, rate 36: 2.2M/s > > Yes, it looks like the new patch is as good as the previous one for my card. The patch is apparently sufficient for me too. Moreover, the D-Link APs that were previously "invisible" are now listed by "iwlist ... scan" and I can connect with them. Thanks again! Greetings, Rafael ^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: RFT: The real fix for BCM4311 and BCM4312 2007-02-07 13:43 ` Rafael J. Wysocki @ 2007-02-07 13:53 ` Larry Finger 2007-02-10 23:30 ` Miles Lane 0 siblings, 1 reply; 9+ messages in thread From: Larry Finger @ 2007-02-07 13:53 UTC (permalink / raw) To: Rafael J. Wysocki; +Cc: wireless, bcm43xx-dev Rafael J. Wysocki wrote: > On Wednesday, 7 February 2007 07:34, Pavel Roskin wrote: >> On Wed, 2007-02-07 at 00:02 -0600, Larry Finger wrote: >>> The patch below will only affect cards with PHY revision 8, which I think are only BCM4311 and >>> BCM4312. At least those are the only ones in the database. >> BCM4312, old patch: 1.7M/s >> no patch: 26k/s >> no patch, rate 1: 100k/s >> new patch: 1.7M/s >> new patch, rate 1: 1.1M/s >> new patch, rate 2: 1.5M/s >> new patch, rate 5.5: 1.7M/s >> new patch, rate 18: 2.2M/s >> new patch, rate 36: 2.2M/s >> >> Yes, it looks like the new patch is as good as the previous one for my card. > > The patch is apparently sufficient for me too. Moreover, the D-Link APs that > were previously "invisible" are now listed by "iwlist ... scan" and I can > connect with them. Thanks again! Great - a two-for-one! That must have been a signal strength issue. Larry ^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: RFT: The real fix for BCM4311 and BCM4312 2007-02-07 13:53 ` Larry Finger @ 2007-02-10 23:30 ` Miles Lane 2007-02-10 23:41 ` Larry Finger 0 siblings, 1 reply; 9+ messages in thread From: Miles Lane @ 2007-02-10 23:30 UTC (permalink / raw) To: Larry Finger; +Cc: Rafael J. Wysocki, wireless, bcm43xx-dev I am testing this patch applied to the wireless-net git tree. The card is a Linksys WPC54G. The card is still getting very weak signal strength and the connection seems unresponsive most of the time. lspci shows: Broadcom Corporation BCM4318 [AirForce One 54g] 802.11g Wireless LAN Controller (rev 02) Here is the output of "dmesg | grep bcm": bcm43xx driver bcm43xx: Chip ID 0x4318, rev 0x2 bcm43xx: Number of cores: 4 bcm43xx: Core 0: ID 0x800, rev 0xd, vendor 0x4243 bcm43xx: Core 1: ID 0x812, rev 0x9, vendor 0x4243 bcm43xx: Core 2: ID 0x804, rev 0xc, vendor 0x4243 bcm43xx: Core 3: ID 0x80d, rev 0x7, vendor 0x4243 bcm43xx: PHY connected bcm43xx: Detected PHY: Version: 3, Type 2, Revision 7 bcm43xx: Detected Radio: ID: 8205017f (Manuf: 17f Ver: 2050 Rev: 8) bcm43xx: Radio turned off bcm43xx: Radio turned off bcm43xx: PHY connected bcm43xx: Microcode rev 0x127, pl 0xe (2005-04-18 02:36:27) bcm43xx: Radio turned on bcm43xx: ASSERTION FAILED (radio_attenuation < 10) at: drivers/net/wireless/bcm43xx/bcm43xx_phy.c:1496:bcm43xx_find_lopair() bcm43xx: ASSERTION FAILED (radio_attenuation < 10) at: drivers/net/wireless/bcm43xx/bcm43xx_phy.c:1496:bcm43xx_find_lopair() bcm43xx: ASSERTION FAILED (radio_attenuation < 10) at: drivers/net/wireless/bcm43xx/bcm43xx_phy.c:1496:bcm43xx_find_lopair() bcm43xx: Chip initialized bcm43xx: 32-bit DMA initialized bcm43xx: Keys cleared bcm43xx: Selected 802.11 core (phytype 2) bcm43xx: ASSERTION FAILED (radio_attenuation < 10) at: drivers/net/wireless/bcm43xx/bcm43xx_phy.c:1496:bcm43xx_find_lopair() bcm43xx: set security called, .level = 0, .enabled = 0, .encrypt = 0 bcm43xx: set security called, .level = 0, .enabled = 0, .encrypt = 0 bcm43xx: set security called, .level = 0, .enabled = 0, .encrypt = 0 bcm43xx: set security called, .level = 0, .enabled = 0, .encrypt = 0 bcm43xx: set security called, .level = 0, .enabled = 0, .encrypt = 0 bcm43xx: set security called, .level = 0, .enabled = 0, .encrypt = 0 bcm43xx: Radio turned off bcm43xx: DMA-32 0x0200 (RX) max used slots: 2/64 bcm43xx: DMA-32 0x02A0 (TX) max used slots: 0/512 bcm43xx: DMA-32 0x0280 (TX) max used slots: 0/512 bcm43xx: DMA-32 0x0260 (TX) max used slots: 0/512 bcm43xx: DMA-32 0x0240 (TX) max used slots: 0/512 bcm43xx: DMA-32 0x0220 (TX) max used slots: 2/512 bcm43xx: DMA-32 0x0200 (TX) max used slots: 0/512 bcm43xx: Microcode rev 0x127, pl 0xe (2005-04-18 02:36:27) bcm43xx: Radio turned on bcm43xx: ASSERTION FAILED (radio_attenuation < 10) at: drivers/net/wireless/bcm43xx/bcm43xx_phy.c:1496:bcm43xx_find_lopair() bcm43xx: ASSERTION FAILED (radio_attenuation < 10) at: drivers/net/wireless/bcm43xx/bcm43xx_phy.c:1496:bcm43xx_find_lopair() bcm43xx: Chip initialized bcm43xx: 32-bit DMA initialized bcm43xx: Keys cleared bcm43xx: Selected 802.11 core (phytype 2) bcm43xx: ASSERTION FAILED (radio_attenuation < 10) at: drivers/net/wireless/bcm43xx/bcm43xx_phy.c:1496:bcm43xx_find_lopair() bcm43xx: set security called, .level = 0, .enabled = 0, .encrypt = 0 bcm43xx: set security called, .level = 0, .enabled = 0, .encrypt = 0 bcm43xx: set security called, .level = 0, .enabled = 0, .encrypt = 0 bcm43xx: set security called, .level = 0, .enabled = 0, .encrypt = 0 bcm43xx: Radio turned off bcm43xx: DMA-32 0x0200 (RX) max used slots: 1/64 bcm43xx: DMA-32 0x02A0 (TX) max used slots: 0/512 bcm43xx: DMA-32 0x0280 (TX) max used slots: 0/512 bcm43xx: DMA-32 0x0260 (TX) max used slots: 0/512 bcm43xx: DMA-32 0x0240 (TX) max used slots: 0/512 bcm43xx: DMA-32 0x0220 (TX) max used slots: 5/512 bcm43xx: DMA-32 0x0200 (TX) max used slots: 0/512 bcm43xx: set security called, .level = 0, .enabled = 0, .encrypt = 0 bcm43xx: Microcode rev 0x127, pl 0xe (2005-04-18 02:36:27) bcm43xx: Radio turned on bcm43xx: ASSERTION FAILED (radio_attenuation < 10) at: drivers/net/wireless/bcm43xx/bcm43xx_phy.c:1496:bcm43xx_find_lopair() bcm43xx: ASSERTION FAILED (radio_attenuation < 10) at: drivers/net/wireless/bcm43xx/bcm43xx_phy.c:1496:bcm43xx_find_lopair() bcm43xx: Chip initialized bcm43xx: 32-bit DMA initialized bcm43xx: Keys cleared bcm43xx: Selected 802.11 core (phytype 2) bcm43xx: ASSERTION FAILED (radio_attenuation < 10) at: drivers/net/wireless/bcm43xx/bcm43xx_phy.c:1496:bcm43xx_find_lopair() bcm43xx: set security called, .level = 0, .enabled = 0, .encrypt = 0 bcm43xx: set security called, .level = 0, .enabled = 0, .encrypt = 0 bcm43xx: set security called, .level = 0, .enabled = 0, .encrypt = 0 bcm43xx: set security called, .level = 0, .enabled = 0, .encrypt = 0 bcm43xx: Radio turned off bcm43xx: DMA-32 0x0200 (RX) max used slots: 1/64 bcm43xx: DMA-32 0x02A0 (TX) max used slots: 0/512 bcm43xx: DMA-32 0x0280 (TX) max used slots: 0/512 bcm43xx: DMA-32 0x0260 (TX) max used slots: 0/512 bcm43xx: DMA-32 0x0240 (TX) max used slots: 0/512 bcm43xx: DMA-32 0x0220 (TX) max used slots: 9/512 bcm43xx: DMA-32 0x0200 (TX) max used slots: 0/512 bcm43xx: set security called, .level = 0, .enabled = 0, .encrypt = 0 bcm43xx: Microcode rev 0x127, pl 0xe (2005-04-18 02:36:27) bcm43xx: Radio turned on bcm43xx: ASSERTION FAILED (radio_attenuation < 10) at: drivers/net/wireless/bcm43xx/bcm43xx_phy.c:1496:bcm43xx_find_lopair() bcm43xx: ASSERTION FAILED (radio_attenuation < 10) at: drivers/net/wireless/bcm43xx/bcm43xx_phy.c:1496:bcm43xx_find_lopair() bcm43xx: Chip initialized bcm43xx: 32-bit DMA initialized bcm43xx: Keys cleared bcm43xx: Selected 802.11 core (phytype 2) bcm43xx: ASSERTION FAILED (radio_attenuation < 10) at: drivers/net/wireless/bcm43xx/bcm43xx_phy.c:1496:bcm43xx_find_lopair() bcm43xx: set security called, .level = 0, .enabled = 0, .encrypt = 0 bcm43xx: set security called, .level = 0, .enabled = 0, .encrypt = 0 bcm43xx: set security called, .level = 0, .enabled = 0, .encrypt = 0 bcm43xx: set security called, .level = 0, .enabled = 0, .encrypt = 0 I just tried the firmware that was included with the card. It looks like it is an earlier revision. The performance seems the same. ^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: RFT: The real fix for BCM4311 and BCM4312 2007-02-10 23:30 ` Miles Lane @ 2007-02-10 23:41 ` Larry Finger 2007-02-13 21:13 ` John W. Linville 0 siblings, 1 reply; 9+ messages in thread From: Larry Finger @ 2007-02-10 23:41 UTC (permalink / raw) To: Miles Lane; +Cc: wireless, bcm43xx-dev Miles Lane wrote: > I am testing this patch applied to the wireless-net git tree. > The card is a Linksys WPC54G. The card is still getting very > weak signal strength and the connection seems unresponsive > most of the time. As the subject says, the patch was for 4311 and 4312 cards. The 4318's are not yet fixed. As measured by my RF receiver, the amplitude of the 4318 is about -70 dBm, the 4311 is about -60 dBm and the 4306 is -50 dBm. All should have the -50 reading with my test setup. I'm working on the power routines and will let you know. Larry ^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: RFT: The real fix for BCM4311 and BCM4312 2007-02-10 23:41 ` Larry Finger @ 2007-02-13 21:13 ` John W. Linville 2007-02-13 22:19 ` Larry Finger 0 siblings, 1 reply; 9+ messages in thread From: John W. Linville @ 2007-02-13 21:13 UTC (permalink / raw) To: Larry Finger; +Cc: Miles Lane, wireless, bcm43xx-dev On Sat, Feb 10, 2007 at 05:41:06PM -0600, Larry Finger wrote: > Miles Lane wrote: > > I am testing this patch applied to the wireless-net git tree. > > The card is a Linksys WPC54G. The card is still getting very > > weak signal strength and the connection seems unresponsive > > most of the time. > > As the subject says, the patch was for 4311 and 4312 cards. The 4318's are not yet fixed. > > As measured by my RF receiver, the amplitude of the 4318 is about -70 dBm, the 4311 is about -60 dBm > and the 4306 is -50 dBm. All should have the -50 reading with my test setup. > > I'm working on the power routines and will let you know. FWIW, this patch seems to have helped some BCM4311 and BCM4312 wielding Fedora users. John -- John W. Linville linville@tuxdriver.com ^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: RFT: The real fix for BCM4311 and BCM4312 2007-02-13 21:13 ` John W. Linville @ 2007-02-13 22:19 ` Larry Finger 2007-02-13 23:36 ` Stephen Sinclair 0 siblings, 1 reply; 9+ messages in thread From: Larry Finger @ 2007-02-13 22:19 UTC (permalink / raw) To: John W. Linville; +Cc: Miles Lane, wireless, bcm43xx-dev John W. Linville wrote: > On Sat, Feb 10, 2007 at 05:41:06PM -0600, Larry Finger wrote: >> Miles Lane wrote: >>> I am testing this patch applied to the wireless-net git tree. >>> The card is a Linksys WPC54G. The card is still getting very >>> weak signal strength and the connection seems unresponsive >>> most of the time. >> As the subject says, the patch was for 4311 and 4312 cards. The 4318's are not yet fixed. >> >> As measured by my RF receiver, the amplitude of the 4318 is about -70 dBm, the 4311 is about -60 dBm >> and the 4306 is -50 dBm. All should have the -50 reading with my test setup. >> >> I'm working on the power routines and will let you know. > > FWIW, this patch seems to have helped some BCM4311 and BCM4312 wielding > Fedora users. I think most, if not all, the 4311 and 4312's are helped. I will be submitting a set of patches this afternoon that help most cards. Larry ^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: RFT: The real fix for BCM4311 and BCM4312 2007-02-13 22:19 ` Larry Finger @ 2007-02-13 23:36 ` Stephen Sinclair 0 siblings, 0 replies; 9+ messages in thread From: Stephen Sinclair @ 2007-02-13 23:36 UTC (permalink / raw) To: Larry Finger; +Cc: John W. Linville, wireless, Miles Lane, bcm43xx-dev > I think most, if not all, the 4311 and 4312's are helped. I will be submitting a set of > patches this afternoon that help most cards. I just wanted to express my thanks for all your work on this driver, and everyone else who's contributed to it. Since this patch has fixed the speed issues, I haven't had to boot to Windows on my laptop in like a week. I wonder if I ever will again. It's the way it should be, and it's just fantastic. Thank you! If I could, I'd definitely buy you a beer. ;-) Steve ^ permalink raw reply [flat|nested] 9+ messages in thread
end of thread, other threads:[~2007-02-13 23:36 UTC | newest] Thread overview: 9+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- 2007-02-07 6:02 RFT: The real fix for BCM4311 and BCM4312 Larry Finger 2007-02-07 6:34 ` Pavel Roskin 2007-02-07 13:43 ` Rafael J. Wysocki 2007-02-07 13:53 ` Larry Finger 2007-02-10 23:30 ` Miles Lane 2007-02-10 23:41 ` Larry Finger 2007-02-13 21:13 ` John W. Linville 2007-02-13 22:19 ` Larry Finger 2007-02-13 23:36 ` Stephen Sinclair
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.