diff -ru linux-2.6.22.4/drivers/net/b44.c linux-2.6.22.4.patch/drivers/net/b44.c --- linux-2.6.22.4/drivers/net/b44.c 2007-09-04 01:24:58.000000000 +0200 +++ linux-2.6.22.4.patch/drivers/net/b44.c 2007-09-04 01:35:12.000000000 +0200 @@ -297,6 +297,12 @@ { u32 val; int err; + + /* hackish fix for wrtsl54gs, 5 fails, 30 works for eth1 */ + if ( bp->phy_addr == 5) { + printk(KERN_INFO PFX "%s: Forcing PHY address to 30.\n", bp->dev->name); + bp->phy_addr = 30; + } if (bp->phy_addr == B44_PHY_ADDR_NO_PHY) return 0;