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); } - To unsubscribe from this list: send the line "unsubscribe linux-wireless" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html