From patchwork Wed Sep 30 13:52:57 2015 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Tom Lendacky X-Patchwork-Id: 524433 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 28C31140D2E for ; Thu, 1 Oct 2015 00:08:45 +1000 (AEST) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753567AbbI3OIl (ORCPT ); Wed, 30 Sep 2015 10:08:41 -0400 Received: from mail-bn1bon0074.outbound.protection.outlook.com ([157.56.111.74]:51424 "EHLO na01-bn1-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1754266AbbI3OIc (ORCPT ); Wed, 30 Sep 2015 10:08:32 -0400 Received: from DM3PR12CA0020.namprd12.prod.outlook.com (10.164.12.158) by BN3PR1201MB1076.namprd12.prod.outlook.com (10.165.77.12) with Microsoft SMTP Server (TLS) id 15.1.280.20; Wed, 30 Sep 2015 13:53:00 +0000 Received: from DM3NAM03FT005.eop-NAM03.prod.protection.outlook.com (2a01:111:f400:7e49::203) by DM3PR12CA0020.outlook.office365.com (2a01:111:e400:599f::30) with Microsoft SMTP Server (TLS) id 15.1.280.20 via Frontend Transport; Wed, 30 Sep 2015 13:53:00 +0000 Authentication-Results: spf=none (sender IP is 165.204.84.222) smtp.mailfrom=amd.com; davemloft.net; dkim=none (message not signed) header.d=none; davemloft.net; dmarc=permerror action=none header.from=amd.com; Received-SPF: None (protection.outlook.com: amd.com does not designate permitted sender hosts) Received: from atltwp02.amd.com (165.204.84.222) by DM3NAM03FT005.mail.protection.outlook.com (10.152.82.143) with Microsoft SMTP Server id 15.1.286.14 via Frontend Transport; Wed, 30 Sep 2015 13:53:00 +0000 X-WSS-ID: 0NVHT89-08-TJL-02 X-M-MSG: Received: from satlvexedge02.amd.com (satlvexedge02.amd.com [10.177.96.29]) (using TLSv1 with cipher AES128-SHA (128/128 bits)) (No client certificate requested) by atltwp02.amd.com (Axway MailGate 5.3.1) with ESMTPS id 22882BD87AD; Wed, 30 Sep 2015 09:52:56 -0400 (EDT) Received: from SATLEXDAG05.amd.com (10.181.40.11) by SATLVEXEDGE02.amd.com (10.177.96.29) with Microsoft SMTP Server (TLS) id 14.3.195.1; Wed, 30 Sep 2015 08:53:22 -0500 Received: from tlendack-t1.amdoffice.net (10.180.168.240) by satlexdag05.amd.com (10.181.40.11) with Microsoft SMTP Server id 14.3.195.1; Wed, 30 Sep 2015 09:52:57 -0400 Subject: [PATCH net-next v1 4/8] amd-xgbe: Add ethtool error and debug messages From: Tom Lendacky To: CC: David Miller Date: Wed, 30 Sep 2015 08:52:57 -0500 Message-ID: <20150930135257.12605.25708.stgit@tlendack-t1.amdoffice.net> In-Reply-To: <20150930135232.12605.15604.stgit@tlendack-t1.amdoffice.net> References: <20150930135232.12605.15604.stgit@tlendack-t1.amdoffice.net> User-Agent: StGit/0.17.1-dirty MIME-Version: 1.0 X-EOPAttributedMessage: 0 X-Forefront-Antispam-Report: CIP:165.204.84.222; CTRY:US; IPV:NLI; EFV:NLI; SFV:NSPM; SFS:(10009020)(6009001)(2980300002)(428002)(199003)(189002)(5001860100001)(54356999)(76176999)(229853001)(189998001)(47776003)(2351001)(46102003)(77096005)(87936001)(50986999)(64706001)(5007970100001)(83506001)(68736005)(53416004)(2950100001)(97746001)(110136002)(106466001)(4001350100001)(50466002)(19580395003)(5001830100001)(19580405001)(101416001)(11100500001)(33646002)(77156002)(86362001)(105586002)(5003600100002)(62966003)(23676002)(4001540100001)(92566002)(97736004)(103116003)(5008740100001)(71626007); DIR:OUT; SFP:1101; SCL:1; SRVR:BN3PR1201MB1076; H:atltwp02.amd.com; FPR:; SPF:None; PTR:InfoDomainNonexistent; A:1; MX:1; LANG:en; X-Microsoft-Exchange-Diagnostics: 1; BN3PR1201MB1076; 2:pg0OTElz9pfqym7mR3wW+VmSoFDa8JUe5Lj+P0fg3SNTpQppb/v1X+ooVSRisbfIBCcXrE/Iv3Yay19gyB8wRlQ3so3qsa+gTwL6nmNxifxWYgIQcULWGc1hFQ4QACZY42Cw85AeIjs3WtcRZE4fGzakIwAL/VMKqZ0ALHUhtsM=; 3:0Zh3E36urVNhMrqQziZVFUMcFAljn5evfkAXLZQvkczcrS2oG80j8r1pE7fbdVGJmjomAan3M2QdMw5Zwpxd/tlb1JaG6xrOIdpuc0wc57IapCMoMFLS71Bzj9DsaW40QTrzc2xRLnaoelSEC3C2x4embI+GM1EaWniCSAVX5xMjvVE797uYGrx70X0HglnrCnJYovbVzUr+hpiRu9Bqu7KEQrW49UTMAVURdxKVzblzVV/aH+WPpzELdYZzEw3D; 25:ZCAXs9+hnuGnSLoGsOHBtLE8m2Jbf/0S6A6Km5fF9Fjvg3UXF7mrXSV5lxW+aMEOwGOoe1FTmQySNYmsDqF4DTbhngj6JlAII3s284cuTorCyxd4pofDjCUF2oEzORo1L6TH0HatTODpjT+6V57dWBQP5UKWhYERg9ypotV8TAmB4zGLmnd+nqZ/7CWIRU7XzYq04+JyzeXXcItzt82BTAn1el2OPSYl5xMQe8uEY9eWhd9FlgHXxl+8JOoXhfhRSN8tv4wtqNJnt3/3AUUegA== X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:;SRVR:BN3PR1201MB1076; X-Microsoft-Exchange-Diagnostics: 1; BN3PR1201MB1076; 20:s7sdDpkzhPcIirjKXV95GHyRCeFeWZi6cl62td3UGtr6haf4izPk1jMTc93Ejt11jXk2WAatAQj0l2YS4uWlQu86AFRCZM+HljmwhbiNGmIn/4GLxroF6OH9kKPmAgH1p5sgxbihrm3zSSujpuMaGsBRzsFhY/tmNAdm/QyVYnn5cYvQS0xSF8UnY2TDIW6kZTkLp9MJ7sJxxOUoJQ4cS9pRF/6y193ugROTBQ2zh6+P4+zPb9B0nD/uTjgLcfm2dzo3KbMdnJ9qXp4MrGZU5AmNNJgt+gHAU2HoDTNFDw3CVaU0jfn4bSuCboqiM7nmmrhy/Nd/6zef3bH1uPPtuITLVlo/g7bvoc0YyG6RMJxwWOOlWhsJBgMseBXVLaWU9xAOqgS5T6SBXKWKjNmEujiyHCMmTqIQJvA7XNQlXXnO/fJ1OwO0HrCvviS30HU0wcwu8gz6nV9DwlPcSyMXej0RK3psCQy9Cxk7kiSWbLFOHSchhK6Nexxw4P1jpKzP; 4:0IBd2H5CQaiBULJnvFLcZNVaBy+g8UqgxIaXBl6C08+aGeqaMbMcbWkN36nEJH6Ijun2IbGIuaXDikOGdBxDpP1/WzyoPph4K/pc7FjPFWqB3b5wciMroLKU1ubMnmjKa71VPXKAbQDXI+lf3/YWNSF2isJORlvraptDIfb3Xh/RPt7ppbGo8T2ez1nwWHF2b7kIop/P/w3TjOR9zrMQl43ZQXiZ9K42s9EGCBQ1lEwXE/4cZNct0kfTSKwvepiecW3HAtzlGDqi+u/g1GSFuVL2qBjVMJ32VUk/mbVcWJN8baHmxAnsGq3iOOHHnhpRtGEtUKmrakK0RoZPveCz3ydpwIYiOL5qG8LB+23H8Qs= X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:; X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(601004)(2401047)(520078)(5005006)(8121501046)(3002001); SRVR:BN3PR1201MB1076; BCL:0; PCL:0; RULEID:; SRVR:BN3PR1201MB1076; X-Forefront-PRVS: 071518EF63 X-Microsoft-Exchange-Diagnostics: =?utf-8?B?MTtCTjNQUjEyMDFNQjEwNzY7MjM6MWRvRFlBcFNlTGpjTm43OUJqaDNobXFJ?= =?utf-8?B?WVA2dTlKaHBBeGVHTjhZSitQdzZ5NitLQnpDdzFQd2l5VW92K0J1Tmswb1Ni?= =?utf-8?B?Y0VHT1NGc0FMMlVQb1ZGRERsNHVwT0ZhZW1WUVEyUi9kbldxdTUzeHhBeFVp?= =?utf-8?B?cVg5bTRqTVE0V05YdDErVGJMVkRGWE5NcHNsUEtFeTFYNitCSHNHN0JEVE9E?= =?utf-8?B?QXE3STRlM2xCY0hOZVc0NHpaSTJ4a3RocWtJV292L1NDa0x4UytkZHJFaWxO?= =?utf-8?B?cWt6VEFEeGVRaFN2aW1JZGNhZEdEWVpVWVJ4dXRrSkN2YkJDTnJIVnhrbjVC?= =?utf-8?B?cVJjSlEyQWdmRFI3ZE1oYVVOZnZzYkN6N0c1b1lrR2orSVJ0ZEpwSVhtY0VQ?= =?utf-8?B?YnJVYzZqTWtPN1FaM2l3WENqeUZaYWpUMm45Vy9CdUtYMUw3bml3Ty9nVlUw?= =?utf-8?B?K2wzTngvbnJxOTVSTVJTdCtSUG1lMmtVSi9YSFV6K1M4MEUrRkUwdXVkQ2dr?= =?utf-8?B?U1JUQUltTGU2V25jS1RuN1Rlc2FtK3JQWlNGeHpLMk5KVkhleDVtbVViTGhJ?= =?utf-8?B?RHNhS0FLL0NSMHN1dmt0RlpEcUNXbE5CL3hPVzU1WE95bi9uWE9wUWNpNlV5?= =?utf-8?B?eE1oYytTbzBBdWhXV2FnSmU1aDdsV0t5UTRqVEMxWExPOWhzay9qVVpiMlpa?= =?utf-8?B?bncwN2FHdEk4azdocjRzZUY4NWpBbW5RV0x3VVhhWXhZUi9XbDMwLzNONkVx?= =?utf-8?B?VElKZTVLaDdPdTVUSzFaYjRuRzA3RTBwTU5VYjRlVUo4UXJ4NlQ3OGVEN0lI?= =?utf-8?B?V0s2dWpOeWZwSFpaOE1LTi94QllNK2ZQSUJnK3JDTmE4a0JiTXJHdW1pQVB6?= =?utf-8?B?REZkZEd4WDNORGhDdHNla1llVkhyeThOdlE2QWI0OXN5TzhEUFhoZ0JzVndT?= =?utf-8?B?SncybVoxKzRDMUlNSTBWTHROUTlRSTBrdmxyeW9QUGZvbXNhSTN2VDlEdTBK?= =?utf-8?B?Y05LeDNpU2tHcWVWaTdKUlhoQW1oYXYyUExJak1YM0dzTkw5MkVhYWxZTy9h?= =?utf-8?B?dXIvUHdLYTJQQjhSRTNmMzJIdnZDWUVRdUFjanNaNUdISTFpeng2RXdNaXNy?= =?utf-8?B?R0FOMlBIVjBnVUNzb2ZRTXdkYktiWTZiaFlJTERsOFB5NjNDR0c5S0FtcHk1?= =?utf-8?B?dnNQWktoUkoyUnE5OUgrOUN5RHp4UW4yVWoySmJtVHliZlNUcDQzMGY0WFFq?= =?utf-8?B?ci9senU5c1dpMFY5NlExSjdTTFBIOGc2eU10Tk1XSVFVRTc5ai84cjdSTTJU?= =?utf-8?B?U0s1dk9YQVIzZkZiYUZUTlFzKzh2d24zZUZ6WHFSelFOMkJHRjc2ZHBVUTBv?= =?utf-8?B?TVBEUHFmWWRtUGtyeDBCK0tBNlhydmlBMXhDeFJvR1MvUzVpQ2tkM3oxQ3lP?= =?utf-8?B?RlRJUmtrUFBvcU1vdDl5b1Qza0ppdVFPZ2NDWWhuMmVRSi9aUUNBV0VsdDhC?= =?utf-8?B?MUhjZ3R5Ui9KQWRLZDJUSXRxRTlXeDJiTkFCSzBSMzh6OHI4bVh2ZXpDMExM?= =?utf-8?B?SXY4VkhHdWhJNzQ3V0dYRmQvcHhoMHg5SnlyWVZuK3ZPckdBZVpNVjlkVk5E?= =?utf-8?B?NUtHc3V6cmU3aXdMYmpHenFLbnRDZERSa1ltZzFtckJOM3VnUTBndnB4ekE9?= =?utf-8?Q?=3D?= X-Microsoft-Exchange-Diagnostics: 1; BN3PR1201MB1076; 5:Mtwo4zrQ3ShXqyBYl04pKqHZrokFjWmRMd/YwVIogQBAWeUImTo3Uot15Su+/6O/0jz929vB7dMGY+xWeaLLcJtFU8I0ryflgf0E6O/axnbLD5VB31MvudrlSFU8xYZiLIe7t01Fb9EOqnVAeLDzBw==; 24:VTSqoSA0BhjbCj/KJANYkVJVyNucx+Vq8wW9jdHjtlsVQZYEIQrvFx+ehPKZHjJuxd7pl2zFsR21rvzUfU6PxiB6h5keOgAJs7TcRUL1rkY=; 20:/Jw4t0kv9YHCOmj1T9Kkti6CLELRSpHR4YfxTEdgDTfBp/h7JSAgqOxfoeYApSVwbWVeXrshRKDyGa90fCqN5w== SpamDiagnosticOutput: 1:23 SpamDiagnosticMetadata: NSPM X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 30 Sep 2015 13:53:00.2163 (UTC) X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d; Ip=[165.204.84.222]; Helo=[atltwp02.amd.com] X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN3PR1201MB1076 Sender: netdev-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: netdev@vger.kernel.org Add error and dynamic debug messages to various ethtool functions in the driver while also removing the DBGPR debug print calls. Also, change the message level for some error messages from alert to err. Signed-off-by: Tom Lendacky --- drivers/net/ethernet/amd/xgbe/xgbe-ethtool.c | 89 +++++++++++--------------- 1 file changed, 37 insertions(+), 52 deletions(-) -- To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html diff --git a/drivers/net/ethernet/amd/xgbe/xgbe-ethtool.c b/drivers/net/ethernet/amd/xgbe/xgbe-ethtool.c index 29db64b..95b6373 100644 --- a/drivers/net/ethernet/amd/xgbe/xgbe-ethtool.c +++ b/drivers/net/ethernet/amd/xgbe/xgbe-ethtool.c @@ -187,8 +187,6 @@ static void xgbe_get_strings(struct net_device *netdev, u32 stringset, u8 *data) { int i; - DBGPR("-->%s\n", __func__); - switch (stringset) { case ETH_SS_STATS: for (i = 0; i < XGBE_STATS_COUNT; i++) { @@ -198,8 +196,6 @@ static void xgbe_get_strings(struct net_device *netdev, u32 stringset, u8 *data) } break; } - - DBGPR("<--%s\n", __func__); } static void xgbe_get_ethtool_stats(struct net_device *netdev, @@ -209,23 +205,17 @@ static void xgbe_get_ethtool_stats(struct net_device *netdev, u8 *stat; int i; - DBGPR("-->%s\n", __func__); - pdata->hw_if.read_mmc_stats(pdata); for (i = 0; i < XGBE_STATS_COUNT; i++) { stat = (u8 *)pdata + xgbe_gstring_stats[i].stat_offset; *data++ = *(u64 *)stat; } - - DBGPR("<--%s\n", __func__); } static int xgbe_get_sset_count(struct net_device *netdev, int stringset) { int ret; - DBGPR("-->%s\n", __func__); - switch (stringset) { case ETH_SS_STATS: ret = XGBE_STATS_COUNT; @@ -235,8 +225,6 @@ static int xgbe_get_sset_count(struct net_device *netdev, int stringset) ret = -EOPNOTSUPP; } - DBGPR("<--%s\n", __func__); - return ret; } @@ -245,13 +233,9 @@ static void xgbe_get_pauseparam(struct net_device *netdev, { struct xgbe_prv_data *pdata = netdev_priv(netdev); - DBGPR("-->xgbe_get_pauseparam\n"); - pause->autoneg = pdata->phy.pause_autoneg; pause->tx_pause = pdata->phy.tx_pause; pause->rx_pause = pdata->phy.rx_pause; - - DBGPR("<--xgbe_get_pauseparam\n"); } static int xgbe_set_pauseparam(struct net_device *netdev, @@ -260,13 +244,11 @@ static int xgbe_set_pauseparam(struct net_device *netdev, struct xgbe_prv_data *pdata = netdev_priv(netdev); int ret = 0; - DBGPR("-->xgbe_set_pauseparam\n"); - - DBGPR(" autoneg = %d, tx_pause = %d, rx_pause = %d\n", - pause->autoneg, pause->tx_pause, pause->rx_pause); - - if (pause->autoneg && (pdata->phy.autoneg != AUTONEG_ENABLE)) + if (pause->autoneg && (pdata->phy.autoneg != AUTONEG_ENABLE)) { + netdev_err(netdev, + "autoneg disabled, pause autoneg not avialable\n"); return -EINVAL; + } pdata->phy.pause_autoneg = pause->autoneg; pdata->phy.tx_pause = pause->tx_pause; @@ -286,8 +268,6 @@ static int xgbe_set_pauseparam(struct net_device *netdev, if (netif_running(netdev)) ret = pdata->phy_if.phy_config_aneg(pdata); - DBGPR("<--xgbe_set_pauseparam\n"); - return ret; } @@ -296,8 +276,6 @@ static int xgbe_get_settings(struct net_device *netdev, { struct xgbe_prv_data *pdata = netdev_priv(netdev); - DBGPR("-->xgbe_get_settings\n"); - cmd->phy_address = pdata->phy.address; cmd->supported = pdata->phy.supported; @@ -311,8 +289,6 @@ static int xgbe_get_settings(struct net_device *netdev, cmd->port = PORT_NONE; cmd->transceiver = XCVR_INTERNAL; - DBGPR("<--xgbe_get_settings\n"); - return 0; } @@ -323,16 +299,20 @@ static int xgbe_set_settings(struct net_device *netdev, u32 speed; int ret; - DBGPR("-->xgbe_set_settings\n"); - speed = ethtool_cmd_speed(cmd); - if (cmd->phy_address != pdata->phy.address) + if (cmd->phy_address != pdata->phy.address) { + netdev_err(netdev, "invalid phy address %hhu\n", + cmd->phy_address); return -EINVAL; + } if ((cmd->autoneg != AUTONEG_ENABLE) && - (cmd->autoneg != AUTONEG_DISABLE)) + (cmd->autoneg != AUTONEG_DISABLE)) { + netdev_err(netdev, "unsupported autoneg %hhu\n", + cmd->autoneg); return -EINVAL; + } if (cmd->autoneg == AUTONEG_DISABLE) { switch (speed) { @@ -341,16 +321,27 @@ static int xgbe_set_settings(struct net_device *netdev, case SPEED_1000: break; default: + netdev_err(netdev, "unsupported speed %u\n", speed); return -EINVAL; } - if (cmd->duplex != DUPLEX_FULL) + if (cmd->duplex != DUPLEX_FULL) { + netdev_err(netdev, "unsupported duplex %hhu\n", + cmd->duplex); return -EINVAL; + } } + netif_dbg(pdata, link, netdev, + "requested advertisement %#x, phy supported %#x\n", + cmd->advertising, pdata->phy.supported); + cmd->advertising &= pdata->phy.supported; - if ((cmd->autoneg == AUTONEG_ENABLE) && !cmd->advertising) + if ((cmd->autoneg == AUTONEG_ENABLE) && !cmd->advertising) { + netdev_err(netdev, + "unsupported requested advertisement\n"); return -EINVAL; + } ret = 0; pdata->phy.autoneg = cmd->autoneg; @@ -366,8 +357,6 @@ static int xgbe_set_settings(struct net_device *netdev, if (netif_running(netdev)) ret = pdata->phy_if.phy_config_aneg(pdata); - DBGPR("<--xgbe_set_settings\n"); - return ret; } @@ -407,8 +396,6 @@ static int xgbe_get_coalesce(struct net_device *netdev, { struct xgbe_prv_data *pdata = netdev_priv(netdev); - DBGPR("-->xgbe_get_coalesce\n"); - memset(ec, 0, sizeof(struct ethtool_coalesce)); ec->rx_coalesce_usecs = pdata->rx_usecs; @@ -416,8 +403,6 @@ static int xgbe_get_coalesce(struct net_device *netdev, ec->tx_max_coalesced_frames = pdata->tx_frames; - DBGPR("<--xgbe_get_coalesce\n"); - return 0; } @@ -429,8 +414,6 @@ static int xgbe_set_coalesce(struct net_device *netdev, unsigned int rx_frames, rx_riwt, rx_usecs; unsigned int tx_frames; - DBGPR("-->xgbe_set_coalesce\n"); - /* Check for not supported parameters */ if ((ec->rx_coalesce_usecs_irq) || (ec->rx_max_coalesced_frames_irq) || @@ -450,8 +433,10 @@ static int xgbe_set_coalesce(struct net_device *netdev, (ec->rx_max_coalesced_frames_high) || (ec->tx_coalesce_usecs_high) || (ec->tx_max_coalesced_frames_high) || - (ec->rate_sample_interval)) + (ec->rate_sample_interval)) { + netdev_err(netdev, "unsupported coalescing parameter\n"); return -EOPNOTSUPP; + } rx_riwt = hw_if->usec_to_riwt(pdata, ec->rx_coalesce_usecs); rx_usecs = ec->rx_coalesce_usecs; @@ -463,13 +448,13 @@ static int xgbe_set_coalesce(struct net_device *netdev, /* Check the bounds of values for Rx */ if (rx_riwt > XGMAC_MAX_DMA_RIWT) { - netdev_alert(netdev, "rx-usec is limited to %d usecs\n", - hw_if->riwt_to_usec(pdata, XGMAC_MAX_DMA_RIWT)); + netdev_err(netdev, "rx-usec is limited to %d usecs\n", + hw_if->riwt_to_usec(pdata, XGMAC_MAX_DMA_RIWT)); return -EINVAL; } if (rx_frames > pdata->rx_desc_count) { - netdev_alert(netdev, "rx-frames is limited to %d frames\n", - pdata->rx_desc_count); + netdev_err(netdev, "rx-frames is limited to %d frames\n", + pdata->rx_desc_count); return -EINVAL; } @@ -477,8 +462,8 @@ static int xgbe_set_coalesce(struct net_device *netdev, /* Check the bounds of values for Tx */ if (tx_frames > pdata->tx_desc_count) { - netdev_alert(netdev, "tx-frames is limited to %d frames\n", - pdata->tx_desc_count); + netdev_err(netdev, "tx-frames is limited to %d frames\n", + pdata->tx_desc_count); return -EINVAL; } @@ -490,8 +475,6 @@ static int xgbe_set_coalesce(struct net_device *netdev, pdata->tx_frames = tx_frames; hw_if->config_tx_coalesce(pdata); - DBGPR("<--xgbe_set_coalesce\n"); - return 0; } @@ -553,8 +536,10 @@ static int xgbe_set_rxfh(struct net_device *netdev, const u32 *indir, struct xgbe_hw_if *hw_if = &pdata->hw_if; unsigned int ret; - if (hfunc != ETH_RSS_HASH_NO_CHANGE && hfunc != ETH_RSS_HASH_TOP) + if (hfunc != ETH_RSS_HASH_NO_CHANGE && hfunc != ETH_RSS_HASH_TOP) { + netdev_err(netdev, "unsupported hash function\n"); return -EOPNOTSUPP; + } if (indir) { ret = hw_if->set_rss_lookup_table(pdata, indir);