Gitweb:     
http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=ced13330bb687780ce1d46f5404521cc0ea40481
Commit:     ced13330bb687780ce1d46f5404521cc0ea40481
Parent:     167f53d05fccb47b6eeadac7f6705b3f2f042d03
Author:     Olaf Hering <[EMAIL PROTECTED]>
AuthorDate: Sat Aug 25 20:32:59 2007 +0200
Committer:  David S. Miller <[EMAIL PROTECTED]>
CommitDate: Wed Oct 10 16:50:54 2007 -0700

    bmac: add simple ethtool support for network manager
    
    NetworkManager will not start dhcpd on an interface unless it reports
    link-up state via ethtool.
    
    Signed-off-by: Olaf Hering <[EMAIL PROTECTED]>
    Signed-off-by: Jeff Garzik <[EMAIL PROTECTED]>
---
 drivers/net/bmac.c |   13 +++++++++++++
 1 files changed, 13 insertions(+), 0 deletions(-)

diff --git a/drivers/net/bmac.c b/drivers/net/bmac.c
index 9b8d7d9..1eb95b6 100644
--- a/drivers/net/bmac.c
+++ b/drivers/net/bmac.c
@@ -19,6 +19,7 @@
 #include <linux/spinlock.h>
 #include <linux/crc32.h>
 #include <linux/bitrev.h>
+#include <linux/ethtool.h>
 #include <asm/prom.h>
 #include <asm/dbdma.h>
 #include <asm/io.h>
@@ -1246,6 +1247,17 @@ static void bmac_reset_and_enable(struct net_device *dev)
        }
        spin_unlock_irqrestore(&bp->lock, flags);
 }
+static void bmac_get_drvinfo(struct net_device *dev, struct ethtool_drvinfo 
*info)
+{
+       struct bmac_data *bp = netdev_priv(dev);
+       strcpy(info->driver, "bmac");
+       strcpy(info->bus_info, bp->mdev->ofdev.dev.bus_id);
+}
+
+static const struct ethtool_ops bmac_ethtool_ops = {
+       .get_drvinfo            = bmac_get_drvinfo,
+       .get_link               = ethtool_op_get_link,
+};
 
 static int __devinit bmac_probe(struct macio_dev *mdev, const struct 
of_device_id *match)
 {
@@ -1311,6 +1323,7 @@ static int __devinit bmac_probe(struct macio_dev *mdev, 
const struct of_device_i
 
        dev->open = bmac_open;
        dev->stop = bmac_close;
+       dev->ethtool_ops = &bmac_ethtool_ops;
        dev->hard_start_xmit = bmac_output;
        dev->get_stats = bmac_stats;
        dev->set_multicast_list = bmac_set_multicast;
-
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