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

Reply via email to