From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from gate.crashing.org (gate.crashing.org [63.228.1.57]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (Client did not present a certificate) by ozlabs.org (Postfix) with ESMTP id 0364ADDF07 for ; Tue, 12 Jun 2007 04:58:35 +1000 (EST) Date: Mon, 11 Jun 2007 13:58:31 -0500 From: Vitaly Bordug To: Mark Zhan Subject: Re: [PATCH] MII bitbang driver should generate MII bus phy_mask dynamically Message-ID: <20070611185831.GA31896@gate.crashing.org> References: <1181548417.5217.13.camel@mark> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii In-Reply-To: <1181548417.5217.13.camel@mark> Cc: netdev@vger.kernel.org, Vitaly Bordug , "linuxppc-dev@ozlabs.org" List-Id: Linux on PowerPC Developers Mail List List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , On Mon, Jun 11, 2007 at 03:53:37PM +0800, Mark Zhan wrote: > Current MII bitbang bus driver hard-codes the phy mask of mii_bus to > ~0x09, which is actually specific to the FSL boards. This patch will > make the bitbang driver to generate MII bus phy_mask dynamically, by the > PHY irq info provided by the platform. > > Signed-off-by: Mark Zhan Acked-by: Vitaly Bordug > --- > b/drivers/net/fs_enet/mii-bitbang.c | 9 ++++++--- > 1 file changed, 6 insertions(+), 3 deletions(-) > > diff --git a/drivers/net/fs_enet/mii-bitbang.c > b/drivers/net/fs_enet/mii-bitbang.c > index d384010..3732d69 100644 > --- a/drivers/net/fs_enet/mii-bitbang.c > +++ b/drivers/net/fs_enet/mii-bitbang.c > @@ -315,7 +315,7 @@ static int __devinit fs_enet_mdio_probe( > struct fs_mii_bb_platform_info *pdata; > struct mii_bus *new_bus; > struct bb_info *bitbang; > - int err = 0; > + int i, err = 0; > > if (NULL == dev) > return -EINVAL; > @@ -336,14 +336,17 @@ static int __devinit fs_enet_mdio_probe( > new_bus->reset = &fs_enet_mii_bb_reset, > new_bus->id = pdev->id; > > - new_bus->phy_mask = ~0x9; > pdata = (struct fs_mii_bb_platform_info *)pdev->dev.platform_data; > - > if (NULL == pdata) { > printk(KERN_ERR "gfar mdio %d: Missing platform data!\n", pdev->id); > return -ENODEV; > } > > + new_bus->phy_mask = 0xFFFFFFFF; > + for (i = 0; i < PHY_MAX_ADDR; i++) > + if (pdata->irq[i] != -1) > + new_bus->phy_mask &= ~(1 << i); > + > /*set up workspace*/ > fs_mii_bitbang_init(bitbang, pdata); > > > _______________________________________________ > Linuxppc-dev mailing list > Linuxppc-dev@ozlabs.org > https://ozlabs.org/mailman/listinfo/linuxppc-dev