aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/ibm_newemac/core.c
diff options
context:
space:
mode:
authorBenjamin Herrenschmidt <benh@kernel.crashing.org>2009-12-09 01:14:38 -0500
committerBenjamin Herrenschmidt <benh@kernel.crashing.org>2009-12-09 01:14:38 -0500
commitbcd6acd51f3d4d1ada201e9bc5c40a31d6d80c71 (patch)
tree2f6dffd2d3e4dd67355a224de7e7a960335a92fd /drivers/net/ibm_newemac/core.c
parent11c34c7deaeeebcee342cbc35e1bb2a6711b2431 (diff)
parent3ff6a468b45b5dfeb0e903e56f4eb27d34b2437c (diff)
Merge commit 'origin/master' into next
Conflicts: include/linux/kvm.h
Diffstat (limited to 'drivers/net/ibm_newemac/core.c')
-rw-r--r--drivers/net/ibm_newemac/core.c34
1 files changed, 18 insertions, 16 deletions
diff --git a/drivers/net/ibm_newemac/core.c b/drivers/net/ibm_newemac/core.c
index 3fae87559791..fb5e019169ee 100644
--- a/drivers/net/ibm_newemac/core.c
+++ b/drivers/net/ibm_newemac/core.c
@@ -1976,27 +1976,27 @@ static int emac_ethtool_set_settings(struct net_device *ndev,
1976 if (cmd->autoneg == AUTONEG_DISABLE) { 1976 if (cmd->autoneg == AUTONEG_DISABLE) {
1977 switch (cmd->speed) { 1977 switch (cmd->speed) {
1978 case SPEED_10: 1978 case SPEED_10:
1979 if (cmd->duplex == DUPLEX_HALF 1979 if (cmd->duplex == DUPLEX_HALF &&
1980 && !(f & SUPPORTED_10baseT_Half)) 1980 !(f & SUPPORTED_10baseT_Half))
1981 return -EINVAL; 1981 return -EINVAL;
1982 if (cmd->duplex == DUPLEX_FULL 1982 if (cmd->duplex == DUPLEX_FULL &&
1983 && !(f & SUPPORTED_10baseT_Full)) 1983 !(f & SUPPORTED_10baseT_Full))
1984 return -EINVAL; 1984 return -EINVAL;
1985 break; 1985 break;
1986 case SPEED_100: 1986 case SPEED_100:
1987 if (cmd->duplex == DUPLEX_HALF 1987 if (cmd->duplex == DUPLEX_HALF &&
1988 && !(f & SUPPORTED_100baseT_Half)) 1988 !(f & SUPPORTED_100baseT_Half))
1989 return -EINVAL; 1989 return -EINVAL;
1990 if (cmd->duplex == DUPLEX_FULL 1990 if (cmd->duplex == DUPLEX_FULL &&
1991 && !(f & SUPPORTED_100baseT_Full)) 1991 !(f & SUPPORTED_100baseT_Full))
1992 return -EINVAL; 1992 return -EINVAL;
1993 break; 1993 break;
1994 case SPEED_1000: 1994 case SPEED_1000:
1995 if (cmd->duplex == DUPLEX_HALF 1995 if (cmd->duplex == DUPLEX_HALF &&
1996 && !(f & SUPPORTED_1000baseT_Half)) 1996 !(f & SUPPORTED_1000baseT_Half))
1997 return -EINVAL; 1997 return -EINVAL;
1998 if (cmd->duplex == DUPLEX_FULL 1998 if (cmd->duplex == DUPLEX_FULL &&
1999 && !(f & SUPPORTED_1000baseT_Full)) 1999 !(f & SUPPORTED_1000baseT_Full))
2000 return -EINVAL; 2000 return -EINVAL;
2001 break; 2001 break;
2002 default: 2002 default:
@@ -2149,9 +2149,12 @@ static int emac_ethtool_nway_reset(struct net_device *ndev)
2149 return res; 2149 return res;
2150} 2150}
2151 2151
2152static int emac_ethtool_get_stats_count(struct net_device *ndev) 2152static int emac_ethtool_get_sset_count(struct net_device *ndev, int stringset)
2153{ 2153{
2154 return EMAC_ETHTOOL_STATS_COUNT; 2154 if (stringset == ETH_SS_STATS)
2155 return EMAC_ETHTOOL_STATS_COUNT;
2156 else
2157 return -EINVAL;
2155} 2158}
2156 2159
2157static void emac_ethtool_get_strings(struct net_device *ndev, u32 stringset, 2160static void emac_ethtool_get_strings(struct net_device *ndev, u32 stringset,
@@ -2182,7 +2185,6 @@ static void emac_ethtool_get_drvinfo(struct net_device *ndev,
2182 info->fw_version[0] = '\0'; 2185 info->fw_version[0] = '\0';
2183 sprintf(info->bus_info, "PPC 4xx EMAC-%d %s", 2186 sprintf(info->bus_info, "PPC 4xx EMAC-%d %s",
2184 dev->cell_index, dev->ofdev->node->full_name); 2187 dev->cell_index, dev->ofdev->node->full_name);
2185 info->n_stats = emac_ethtool_get_stats_count(ndev);
2186 info->regdump_len = emac_ethtool_get_regs_len(ndev); 2188 info->regdump_len = emac_ethtool_get_regs_len(ndev);
2187} 2189}
2188 2190
@@ -2202,7 +2204,7 @@ static const struct ethtool_ops emac_ethtool_ops = {
2202 .get_rx_csum = emac_ethtool_get_rx_csum, 2204 .get_rx_csum = emac_ethtool_get_rx_csum,
2203 2205
2204 .get_strings = emac_ethtool_get_strings, 2206 .get_strings = emac_ethtool_get_strings,
2205 .get_stats_count = emac_ethtool_get_stats_count, 2207 .get_sset_count = emac_ethtool_get_sset_count,
2206 .get_ethtool_stats = emac_ethtool_get_ethtool_stats, 2208 .get_ethtool_stats = emac_ethtool_get_ethtool_stats,
2207 2209
2208 .get_link = ethtool_op_get_link, 2210 .get_link = ethtool_op_get_link,