summaryrefslogtreecommitdiffstats
path: root/drivers
diff options
context:
space:
mode:
authorBen Dooks <ben-linux@fluff.org>2008-02-05 01:02:12 +0100
committerJeff Garzik <jeff@garzik.org>2008-02-11 17:06:30 +0100
commite662ee02cc9f1a61f309eaa44ce3c33dc6ed7b8a (patch)
tree0598f522745c285d7869d21c84edc8cd7fdb21a1 /drivers
parentDM9000: Add ethtool support for reading and writing EEPROM (diff)
downloadlinux-e662ee02cc9f1a61f309eaa44ce3c33dc6ed7b8a.tar.xz
linux-e662ee02cc9f1a61f309eaa44ce3c33dc6ed7b8a.zip
DM9000: Add ethtool control of msg_enable value
Allow the msg_enable value to be read and written by the ethtool interface. Signed-off-by: Ben Dooks <ben-linux@fluff.org> Signed-off-by: Jeff Garzik <jeff@garzik.org>
Diffstat (limited to 'drivers')
-rw-r--r--drivers/net/dm9000.c16
1 files changed, 16 insertions, 0 deletions
diff --git a/drivers/net/dm9000.c b/drivers/net/dm9000.c
index 082372515432..2acab02a6428 100644
--- a/drivers/net/dm9000.c
+++ b/drivers/net/dm9000.c
@@ -383,6 +383,20 @@ static void dm9000_get_drvinfo(struct net_device *dev,
strcpy(info->bus_info, to_platform_device(dm->dev)->name);
}
+static u32 dm9000_get_msglevel(struct net_device *dev)
+{
+ board_info_t *dm = to_dm9000_board(dev);
+
+ return dm->msg_enable;
+}
+
+static void dm9000_set_msglevel(struct net_device *dev, u32 value)
+{
+ board_info_t *dm = to_dm9000_board(dev);
+
+ dm->msg_enable = value;
+}
+
static int dm9000_get_settings(struct net_device *dev, struct ethtool_cmd *cmd)
{
board_info_t *dm = to_dm9000_board(dev);
@@ -464,6 +478,8 @@ static const struct ethtool_ops dm9000_ethtool_ops = {
.get_drvinfo = dm9000_get_drvinfo,
.get_settings = dm9000_get_settings,
.set_settings = dm9000_set_settings,
+ .get_msglevel = dm9000_get_msglevel,
+ .set_msglevel = dm9000_set_msglevel,
.nway_reset = dm9000_nway_reset,
.get_link = dm9000_get_link,
.get_eeprom_len = dm9000_get_eeprom_len,