ar71xx: merge files-3.2 to files
[openwrt.git] / target / linux / ar71xx / files-3.2 / drivers / net / ethernet / atheros / ag71xx / ag71xx_ethtool.c
diff --git a/target/linux/ar71xx/files-3.2/drivers/net/ethernet/atheros/ag71xx/ag71xx_ethtool.c b/target/linux/ar71xx/files-3.2/drivers/net/ethernet/atheros/ag71xx/ag71xx_ethtool.c
deleted file mode 100644 (file)
index 498fbed..0000000
+++ /dev/null
@@ -1,124 +0,0 @@
-/*
- *  Atheros AR71xx built-in ethernet mac driver
- *
- *  Copyright (C) 2008-2010 Gabor Juhos <juhosg@openwrt.org>
- *  Copyright (C) 2008 Imre Kaloz <kaloz@openwrt.org>
- *
- *  Based on Atheros' AG7100 driver
- *
- *  This program is free software; you can redistribute it and/or modify it
- *  under the terms of the GNU General Public License version 2 as published
- *  by the Free Software Foundation.
- */
-
-#include "ag71xx.h"
-
-static int ag71xx_ethtool_get_settings(struct net_device *dev,
-                                      struct ethtool_cmd *cmd)
-{
-       struct ag71xx *ag = netdev_priv(dev);
-       struct phy_device *phydev = ag->phy_dev;
-
-       if (!phydev)
-               return -ENODEV;
-
-       return phy_ethtool_gset(phydev, cmd);
-}
-
-static int ag71xx_ethtool_set_settings(struct net_device *dev,
-                                      struct ethtool_cmd *cmd)
-{
-       struct ag71xx *ag = netdev_priv(dev);
-       struct phy_device *phydev = ag->phy_dev;
-
-       if (!phydev)
-               return -ENODEV;
-
-       return phy_ethtool_sset(phydev, cmd);
-}
-
-static void ag71xx_ethtool_get_drvinfo(struct net_device *dev,
-                                      struct ethtool_drvinfo *info)
-{
-       struct ag71xx *ag = netdev_priv(dev);
-
-       strcpy(info->driver, ag->pdev->dev.driver->name);
-       strcpy(info->version, AG71XX_DRV_VERSION);
-       strcpy(info->bus_info, dev_name(&ag->pdev->dev));
-}
-
-static u32 ag71xx_ethtool_get_msglevel(struct net_device *dev)
-{
-       struct ag71xx *ag = netdev_priv(dev);
-
-       return ag->msg_enable;
-}
-
-static void ag71xx_ethtool_set_msglevel(struct net_device *dev, u32 msg_level)
-{
-       struct ag71xx *ag = netdev_priv(dev);
-
-       ag->msg_enable = msg_level;
-}
-
-static void ag71xx_ethtool_get_ringparam(struct net_device *dev,
-                                        struct ethtool_ringparam *er)
-{
-       struct ag71xx *ag = netdev_priv(dev);
-
-       er->tx_max_pending = AG71XX_TX_RING_SIZE_MAX;
-       er->rx_max_pending = AG71XX_RX_RING_SIZE_MAX;
-       er->rx_mini_max_pending = 0;
-       er->rx_jumbo_max_pending = 0;
-
-       er->tx_pending = ag->tx_ring.size;
-       er->rx_pending = ag->rx_ring.size;
-       er->rx_mini_pending = 0;
-       er->rx_jumbo_pending = 0;
-}
-
-static int ag71xx_ethtool_set_ringparam(struct net_device *dev,
-                                       struct ethtool_ringparam *er)
-{
-       struct ag71xx *ag = netdev_priv(dev);
-       unsigned tx_size;
-       unsigned rx_size;
-       int err;
-
-       if (er->rx_mini_pending != 0||
-           er->rx_jumbo_pending != 0 ||
-           er->rx_pending == 0 ||
-           er->tx_pending == 0)
-               return -EINVAL;
-
-       tx_size = er->tx_pending < AG71XX_TX_RING_SIZE_MAX ?
-                 er->tx_pending : AG71XX_TX_RING_SIZE_MAX;
-
-       rx_size = er->rx_pending < AG71XX_RX_RING_SIZE_MAX ?
-                 er->rx_pending : AG71XX_RX_RING_SIZE_MAX;
-
-       if (netif_running(dev)) {
-               err = dev->netdev_ops->ndo_stop(dev);
-               if (err)
-                       return err;
-       }
-
-       ag->tx_ring.size = tx_size;
-       ag->rx_ring.size = rx_size;
-
-       if (netif_running(dev))
-               err = dev->netdev_ops->ndo_open(dev);
-
-       return err;
-}
-
-struct ethtool_ops ag71xx_ethtool_ops = {
-       .set_settings   = ag71xx_ethtool_set_settings,
-       .get_settings   = ag71xx_ethtool_get_settings,
-       .get_drvinfo    = ag71xx_ethtool_get_drvinfo,
-       .get_msglevel   = ag71xx_ethtool_get_msglevel,
-       .set_msglevel   = ag71xx_ethtool_set_msglevel,
-       .get_ringparam  = ag71xx_ethtool_get_ringparam,
-       .set_ringparam  = ag71xx_ethtool_set_ringparam,
-       .get_link       = ethtool_op_get_link,
-};
This page took 0.023876 seconds and 4 git commands to generate.