tree 406f56331a1dc94054f08cff65d5bd9b49e28562
parent e9985d53e3da3b51d0334d0622c449fda78ae089
author Francois Romieu <[EMAIL PROTECTED]> Fri, 26 Aug 2005 00:30:37 +0200
committer Jeff Garzik <[EMAIL PROTECTED]> Fri, 26 Aug 2005 08:52:11 -0400

[PATCH] sis190: complete the mii probe before registering the netdevice

The userspace must not be able to issue ethtool command and manage the
mii before it is completely initialized. Avoid some pesky "eth%d" messages.

Signed-off-by: Arnaud Patard <[EMAIL PROTECTED]>
Signed-off-by: Francois Romieu <[EMAIL PROTECTED]>
Signed-off-by: Jeff Garzik <[EMAIL PROTECTED]>

 drivers/net/sis190.c |   23 ++++++++++++-----------
 1 files changed, 12 insertions(+), 11 deletions(-)

diff --git a/drivers/net/sis190.c b/drivers/net/sis190.c
--- a/drivers/net/sis190.c
+++ b/drivers/net/sis190.c
@@ -1271,7 +1271,7 @@ static u16 sis190_default_phy(struct net
                mii_if->phy_id = phy_default->phy_id;
                net_probe(tp, KERN_INFO
                       "%s: Using transceiver at address %d as default.\n",
-                      dev->name, mii_if->phy_id);
+                      pci_name(tp->pci_dev), mii_if->phy_id);
        }
 
        status = mdio_read(ioaddr, mii_if->phy_id, MII_BMCR);
@@ -1312,8 +1312,8 @@ static void sis190_init_phy(struct net_d
                phy->type = UNKNOWN;
 
        net_probe(tp, KERN_INFO "%s: %s transceiver at address %d.\n",
-                 dev->name, (phy->type == UNKNOWN) ? "Unknown PHY" : p->name,
-                 phy_id);
+                 pci_name(tp->pci_dev),
+                 (phy->type == UNKNOWN) ? "Unknown PHY" : p->name, phy_id);
 }
 
 /**
@@ -1358,7 +1358,7 @@ static int __devinit sis190_mii_probe(st
 
        if (list_empty(&tp->first_phy)) {
                net_probe(tp, KERN_INFO "%s: No MII transceivers found!\n",
-                         dev->name);
+                         pci_name(tp->pci_dev));
                rc = -EIO;
                goto out;
        }
@@ -1780,15 +1780,16 @@ static int __devinit sis190_init_one(str
        dev->base_addr = (unsigned long) 0xdead;
 
        spin_lock_init(&tp->lock);
-       rc = register_netdev(dev);
+
+       rc = sis190_mii_probe(dev);
        if (rc < 0)
                goto err_release_board;
 
-       pci_set_drvdata(pdev, dev);
-
-       rc = sis190_mii_probe(dev);
+       rc = register_netdev(dev);
        if (rc < 0)
-               goto err_unregister_dev;
+               goto err_remove_mii;
+
+       pci_set_drvdata(pdev, dev);
 
        net_probe(tp, KERN_INFO "%s: %s at %p (IRQ: %d), "
               "%2.2x:%2.2x:%2.2x:%2.2x:%2.2x:%2.2x\n",
@@ -1804,8 +1805,8 @@ static int __devinit sis190_init_one(str
 out:
        return rc;
 
-err_unregister_dev:
-       unregister_netdev(dev);
+err_remove_mii:
+       sis190_mii_remove(dev);
 err_release_board:
        sis190_release_board(pdev);
        goto out;
-
To unsubscribe from this list: send the line "unsubscribe git-commits-head" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to