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);
}
_______________________________________________
Bcm43xx-dev mailing list
[email protected]
https://lists.berlios.de/mailman/listinfo/bcm43xx-dev