From patchwork Sat Jul 16 23:10:15 2016 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Philippe Reynes X-Patchwork-Id: 649172 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 3rsQCW0L73z9s0M for ; Sun, 17 Jul 2016 09:10:47 +1000 (AEST) Authentication-Results: ozlabs.org; dkim=pass (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.b=ABegvLSE; dkim-atps=neutral Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752059AbcGPXKb (ORCPT ); Sat, 16 Jul 2016 19:10:31 -0400 Received: from mail-wm0-f67.google.com ([74.125.82.67]:35699 "EHLO mail-wm0-f67.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751812AbcGPXK0 (ORCPT ); Sat, 16 Jul 2016 19:10:26 -0400 Received: by mail-wm0-f67.google.com with SMTP id i5so7191904wmg.2; Sat, 16 Jul 2016 16:10:25 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=from:to:cc:subject:date:message-id:in-reply-to:references; bh=VRUhY6k8aLppsvccidp32+PZzlMiIhSGZ8fsj2cWQCg=; b=ABegvLSE+ECn48TR9SmXZ2PU0DsO+SWmz1x/RxYYztKx7kmJQE8CbDRNF7gYAKLOMX kaGMt+wIQ0l+GXBIcurBhR07O+JmOAFk6N/FesKSecC1a1QXFV+nTTeA/phLFBR1ElGD vIW5Ac9pVUpwLGPhKeDye8aYPhfkILZ8cdZLUC7m3zsnXnK6nkNsJQ3qWNTIUNXcTM2h vSBUKiu5mFbF87KDsKMUf+nWIQWA6JdlzsEL9Oae5StdP9Al48xcH7YkSEvSldyVwd2q 0qxgZF4X+h+GvIycMGVs/8Rjyc0iUnfWmAw8jSg5b6N+f3Wgu8iJw+DxceT34U7v/G9O HmzA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references; bh=VRUhY6k8aLppsvccidp32+PZzlMiIhSGZ8fsj2cWQCg=; b=NdqbTbs3CDJok1LtdGap8hgPySs8IXhewzqNgPKsaZW4+hRqL8fFZAC/+cvHECCb0I FGEwGQmwWZBKf6Fo4/WDTQdzkIoy84twBrGc78z0ELn6xPDyBU4Bgmd14ClDae2K3Wvq T+Tu5rMotS3+j9vJEAYCCX9hDHoOW1iXBhdd2cTo/p1I+liPXYIlTtFLmaCtuGZb9hgZ hdh4+3AG5nhQwUzQneMSrJRbE4pJXlNs8qCRVPab73PzNUOFlQABs5B07uwnOEgvjQLB +nA2BcFLZ3MeSl4wPsKiQQwe9v4Rw4tB7y30Yv5QlnP5A6JnE1Q8lJ4aACg+LPbYYFY9 7jzw== X-Gm-Message-State: ALyK8tLSp0LjXI56MTcArNR1IJE1CUUEvJDeTneNZzTt/X2PjgEvmtJ5sf6N9gwv1yc94w== X-Received: by 10.28.32.77 with SMTP id g74mr26866296wmg.45.1468710624785; Sat, 16 Jul 2016 16:10:24 -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 q7sm2316064wjt.14.2016.07.16.16.10.23 (version=TLS1 cipher=ECDHE-RSA-AES128-SHA bits=128/128); Sat, 16 Jul 2016 16:10:24 -0700 (PDT) From: Philippe Reynes To: davem@davemloft.net, andrew@lunn.ch, sudipm.mukherjee@gmail.com, mugunthanvnm@ti.com, felipe.balbi@linux.intel.com, treding@nvidia.com, fw@strlen.de, linux@roeck-us.net Cc: adi-buildroot-devel@lists.sourceforge.net, netdev@vger.kernel.org, linux-kernel@vger.kernel.org, Philippe Reynes Subject: [PATCH 2/2] net: ethernet: adi: bfin_mac: use phy_ethtool_{get|set}_link_ksettings Date: Sun, 17 Jul 2016 01:10:15 +0200 Message-Id: <1468710615-31951-2-git-send-email-tremyfr@gmail.com> X-Mailer: git-send-email 1.7.4.4 In-Reply-To: <1468710615-31951-1-git-send-email-tremyfr@gmail.com> References: <1468710615-31951-1-git-send-email-tremyfr@gmail.com> Sender: netdev-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: netdev@vger.kernel.org There are two generics functions phy_ethtool_{get|set}_link_ksettings, so we can use them instead of defining the same code in the driver. There was a check on CAP_NET_ADMIN in bfin_mac_ethtool_setsettings, but this check is already done in dev_ethtool, so no need to repeat it before calling the generic function. Signed-off-by: Philippe Reynes --- drivers/net/ethernet/adi/bfin_mac.c | 25 ++----------------------- 1 files changed, 2 insertions(+), 23 deletions(-) diff --git a/drivers/net/ethernet/adi/bfin_mac.c b/drivers/net/ethernet/adi/bfin_mac.c index 32af9d2..38eaea1 100644 --- a/drivers/net/ethernet/adi/bfin_mac.c +++ b/drivers/net/ethernet/adi/bfin_mac.c @@ -449,27 +449,6 @@ static irqreturn_t bfin_mac_wake_interrupt(int irq, void *dev_id) return IRQ_HANDLED; } -static int -bfin_mac_ethtool_getsettings(struct net_device *dev, struct ethtool_cmd *cmd) -{ - if (dev->phydev) - return phy_ethtool_gset(dev->phydev, cmd); - - return -EINVAL; -} - -static int -bfin_mac_ethtool_setsettings(struct net_device *dev, struct ethtool_cmd *cmd) -{ - if (!capable(CAP_NET_ADMIN)) - return -EPERM; - - if (dev->phydev) - return phy_ethtool_sset(dev->phydev, cmd); - - return -EINVAL; -} - static void bfin_mac_ethtool_getdrvinfo(struct net_device *dev, struct ethtool_drvinfo *info) { @@ -547,8 +526,6 @@ static int bfin_mac_ethtool_get_ts_info(struct net_device *dev, #endif static const struct ethtool_ops bfin_mac_ethtool_ops = { - .get_settings = bfin_mac_ethtool_getsettings, - .set_settings = bfin_mac_ethtool_setsettings, .get_link = ethtool_op_get_link, .get_drvinfo = bfin_mac_ethtool_getdrvinfo, .get_wol = bfin_mac_ethtool_getwol, @@ -556,6 +533,8 @@ static const struct ethtool_ops bfin_mac_ethtool_ops = { #ifdef CONFIG_BFIN_MAC_USE_HWSTAMP .get_ts_info = bfin_mac_ethtool_get_ts_info, #endif + .get_link_ksettings = phy_ethtool_get_link_ksettings, + .set_link_ksettings = phy_ethtool_set_link_ksettings, }; /**************************************************************************/