From patchwork Sat Mar 25 18:39:05 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Philippe Reynes X-Patchwork-Id: 743502 X-Patchwork-Delegate: davem@davemloft.net Return-Path: X-Original-To: patchwork-incoming@ozlabs.org Delivered-To: patchwork-incoming@ozlabs.org Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id 3vr8GG1t2Jz9s3w for ; Sun, 26 Mar 2017 05:39:34 +1100 (AEDT) Authentication-Results: ozlabs.org; dkim=pass (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.b="qjCnL7GD"; dkim-atps=neutral Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751618AbdCYSjV (ORCPT ); Sat, 25 Mar 2017 14:39:21 -0400 Received: from mail-wm0-f66.google.com ([74.125.82.66]:33416 "EHLO mail-wm0-f66.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751456AbdCYSjU (ORCPT ); Sat, 25 Mar 2017 14:39:20 -0400 Received: by mail-wm0-f66.google.com with SMTP id n11so3818476wma.0; Sat, 25 Mar 2017 11:39:18 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id; bh=ADus2sCChPDvuK90g2NtyhnBjQC9boj5SFUtnTPjjEY=; b=qjCnL7GD5hwWpygnj3GSwLqiOz0UPp8c9N5ALZ4DAn9yG+CBYk/TPZ9HfyhwbFCkVH Nb+KDKfslLEfg+5mwlFGWr6fmJBIae3bDoCFsVoT6rf76gt0W9HwiZacJc4xy1Bfn2Oi b2a5ieQo8WYMquCtjqTWmQCjjpMLvWRKpg320VlafvS1nT8JoG4QJz4QShKWfvdLjJMz sNc/drKxlXahnvo7v0s7YDU2BwFwEA3dUCAlp3YLsmd7Ustz2AV3u0Zf6+WTAC7UlM/M nVF9i6H+5NClFQM6h26lgSFrbFJQe+q79pqxj6khQYCWNFy1pHloaHV1omRPFktOv7Is SFHA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id; bh=ADus2sCChPDvuK90g2NtyhnBjQC9boj5SFUtnTPjjEY=; b=BnfkOEKc8+lVl5qwrGquCPf0cJXEOmOLN8tVXzfA8fcMvXsX8GxpFBEewqwmUevIYh EjrIRCXl0r0+ZFWT4kChaycxU3yFulh2R7cQ3qIWoMpcRD58qxGAByA2I5ZsH07vgny1 dC3T68+F34UiyX1tkhibNtXQ10PHyCNkMwwGePIqLjwbcK22Mo4BoPfTzWH3Ceg6+3gP 41zm95GE9NXfSqqjXp9KvnRH4TCS176KtCQzW6JQLwCuV9YhAz7kK7JUSX9rN4leMuEn JvUstdefdsb6Mbava/vIJReD/cqHu5eIyVAEpsT13LjX/+Umaoa1RnJx+hODAWfbUU+8 Nu0A== X-Gm-Message-State: AFeK/H274mTa9pjdIL2fZjGbTVdZ9Deas883NAw8iITMO5RuZCk4W7lsb/NPOeZKogL7Nw== X-Received: by 10.28.136.81 with SMTP id k78mr2856747wmd.36.1490467157242; Sat, 25 Mar 2017 11:39:17 -0700 (PDT) Received: from localhost.localdomain (bny93-7-88-161-33-221.fbx.proxad.net. [88.161.33.221]) by smtp.gmail.com with ESMTPSA id g78sm7931531wrd.11.2017.03.25.11.39.15 (version=TLS1 cipher=ECDHE-RSA-AES128-SHA bits=128/128); Sat, 25 Mar 2017 11:39:16 -0700 (PDT) From: Philippe Reynes To: davem@davemloft.net, paul.gortmaker@windriver.com, mugunthanvnm@ti.com, a@unstable.cc, fw@strlen.de, jarod@redhat.com Cc: netdev@vger.kernel.org, linux-kernel@vger.kernel.org, Philippe Reynes Subject: [PATCH] net: cris: eth_v10: use new api ethtool_{get|set}_link_ksettings Date: Sat, 25 Mar 2017 19:39:05 +0100 Message-Id: <1490467145-32724-1-git-send-email-tremyfr@gmail.com> X-Mailer: git-send-email 1.7.4.4 Sender: netdev-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: netdev@vger.kernel.org The ethtool api {get|set}_settings is deprecated. We move this driver to new api {get|set}_link_ksettings. As I don't have the hardware, I'd be very pleased if someone may test this patch. Signed-off-by: Philippe Reynes --- drivers/net/cris/eth_v10.c | 32 ++++++++++++++++++++------------ 1 files changed, 20 insertions(+), 12 deletions(-) diff --git a/drivers/net/cris/eth_v10.c b/drivers/net/cris/eth_v10.c index 91c876a..da02041 100644 --- a/drivers/net/cris/eth_v10.c +++ b/drivers/net/cris/eth_v10.c @@ -1412,31 +1412,39 @@ struct transceiver_ops transceivers[] = return rc; } -static int e100_get_settings(struct net_device *dev, - struct ethtool_cmd *cmd) +static int e100_get_link_ksettings(struct net_device *dev, + struct ethtool_link_ksettings *cmd) { struct net_local *np = netdev_priv(dev); + u32 supported; int err; spin_lock_irq(&np->lock); - err = mii_ethtool_gset(&np->mii_if, cmd); + err = mii_ethtool_get_link_ksettings(&np->mii_if, cmd); spin_unlock_irq(&np->lock); /* The PHY may support 1000baseT, but the Etrax100 does not. */ - cmd->supported &= ~(SUPPORTED_1000baseT_Half - | SUPPORTED_1000baseT_Full); + ethtool_convert_link_mode_to_legacy_u32(&supported, + cmd->link_modes.supported); + + supported &= ~(SUPPORTED_1000baseT_Half | SUPPORTED_1000baseT_Full); + + ethtool_convert_legacy_u32_to_link_mode(cmd->link_modes.supported, + supported); + return err; } -static int e100_set_settings(struct net_device *dev, - struct ethtool_cmd *ecmd) +static int e100_set_link_ksettings(struct net_device *dev, + const struct ethtool_link_ksettings *ecmd) { - if (ecmd->autoneg == AUTONEG_ENABLE) { + if (ecmd->base.autoneg == AUTONEG_ENABLE) { e100_set_duplex(dev, autoneg); e100_set_speed(dev, 0); } else { - e100_set_duplex(dev, ecmd->duplex == DUPLEX_HALF ? half : full); - e100_set_speed(dev, ecmd->speed == SPEED_10 ? 10: 100); + e100_set_duplex(dev, ecmd->base.duplex == DUPLEX_HALF ? + half : full); + e100_set_speed(dev, ecmd->base.speed == SPEED_10 ? 10 : 100); } return 0; @@ -1459,11 +1467,11 @@ static int e100_nway_reset(struct net_device *dev) } static const struct ethtool_ops e100_ethtool_ops = { - .get_settings = e100_get_settings, - .set_settings = e100_set_settings, .get_drvinfo = e100_get_drvinfo, .nway_reset = e100_nway_reset, .get_link = ethtool_op_get_link, + .get_link_ksettings = e100_get_link_ksettings, + .set_link_ksettings = e100_set_link_ksettings, }; static int