b44: Fix MII interface of the B44 driver
Subsystems (2)
PATCH 1/1 b44: Fix MII interface of the B44 driver
From: Aurelien Jarno <[email protected]>
The conversion of the B44 driver to SSB bus added the functions __b44_{read,write}phy functions that have an argument phy_id. This gives a way to fix the b44_mii_{read,write} functions used for MII interfaces.
The patch below does that. It allows B44 devices with integrated switch to be configured from userland.
Signed-off-by Aurelien Jarno <[email protected]>
Signed-off-by Michael Buesch <[email protected]>
drivers/net/b44.c +2 -7
@@ -300,16 +300,11 @@ static inline int b44_writephy(struct b44 *bp, int reg, u32 val) }/* miilib interface */ -/* FIXME FIXME: phy_id is ignored, bp->phy_addr use is unconditional -* due to code existing before miilib use was added to this driver. -* Someone should remove this artificial driver limitation in -* b44_{read,write}phy. bp->phy_addr itself is fine (and needed). -*/ static int b44_mii_read (struct net_device *dev,int phy_id,int location) {u32 val;struct b44 *bp =netdev_priv (dev); -int rc =b44_readphy (bp, location, &val); +int rc =__b44_readphy (bp, phy_id, location, &val);if (rc)return 0xffffffff ;return val;
@@ -319,7 +314,7 @@ static void b44_mii_write(struct net_device *dev, int phy_id, int location, int val) {struct b44 *bp =netdev_priv (dev); -b44_writephy (bp, location, val); +__b44_writephy (bp, phy_id, location, val); }static int b44_phy_reset (struct b44 *bp)
Signature · 1 line
Greetings Michael.