From patchwork Mon Aug 14 19:01:41 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Manlunas, Felix" X-Patchwork-Id: 801305 X-Patchwork-Delegate: davem@davemloft.net Return-Path: X-Original-To: patchwork-incoming@ozlabs.org Delivered-To: patchwork-incoming@ozlabs.org Authentication-Results: ozlabs.org; spf=none (mailfrom) smtp.mailfrom=vger.kernel.org (client-ip=209.132.180.67; helo=vger.kernel.org; envelope-from=netdev-owner@vger.kernel.org; receiver=) Authentication-Results: ozlabs.org; dkim=pass (1024-bit key; unprotected) header.d=CAVIUMNETWORKS.onmicrosoft.com header.i=@CAVIUMNETWORKS.onmicrosoft.com header.b="MxZWgv0i"; dkim-atps=neutral Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id 3xWQ340XS2z9sPt for ; Tue, 15 Aug 2017 05:02:24 +1000 (AEST) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752641AbdHNTBu (ORCPT ); Mon, 14 Aug 2017 15:01:50 -0400 Received: from mail-by2nam01on0084.outbound.protection.outlook.com ([104.47.34.84]:58396 "EHLO NAM01-BY2-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1750896AbdHNTBr (ORCPT ); Mon, 14 Aug 2017 15:01:47 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=CAVIUMNETWORKS.onmicrosoft.com; s=selector1-cavium-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=Yxc2CBZKotLh5Y6mkFlMcUPMrOYezC5vP9k6sF+aPcg=; b=MxZWgv0i+hXsTH7CpIo6zgdP5U95g5Cf9kJicPSZ+exEo8/afVRP+LzKd3q1aO8QzOCb9TirSJKI33a2hoUE2BNGXDa0HNTWhwFlz9g9ISZNZ/g6YHKV0hb8Q7BuI6kqAmM7DCNiRaZCgQdJlslMNVHuYCEn/0i/9qikxwCeAwY= Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=Felix.Manlunas@cavium.com; Received: from localhost (50.233.148.156) by MWHPR07MB3181.namprd07.prod.outlook.com (10.172.96.139) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id 15.1.1341.21; Mon, 14 Aug 2017 19:01:45 +0000 Date: Mon, 14 Aug 2017 12:01:41 -0700 From: Felix Manlunas To: davem@davemloft.net Cc: netdev@vger.kernel.org, raghu.vatsavayi@cavium.com, derek.chickles@cavium.com, satananda.burla@cavium.com, intiyaz.basha@cavium.com Subject: [PATCH V2 net-next 3/8] liquidio: moved octeon_setup_droq to lio_core.c Message-ID: <20170814190141.GA1264@felix-thinkpad.cavium.com> References: <20170814190034.GA1219@felix-thinkpad.cavium.com> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <20170814190034.GA1219@felix-thinkpad.cavium.com> User-Agent: Mutt/1.6.1 (2016-04-27) X-Originating-IP: [50.233.148.156] X-ClientProxiedBy: MWHPR1201CA0010.namprd12.prod.outlook.com (10.174.253.20) To MWHPR07MB3181.namprd07.prod.outlook.com (10.172.96.139) X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: a8631956-0f05-41b5-28fc-08d4e346e87a X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(300000500095)(300135000095)(300000501095)(300135300095)(22001)(300000502095)(300135100095)(2017030254152)(300000503095)(300135400095)(201703131423075)(201703031133081)(201702281549075)(300000504095)(300135200095)(300000505095)(300135600095)(300000506095)(300135500095); SRVR:MWHPR07MB3181; X-Microsoft-Exchange-Diagnostics: 1; MWHPR07MB3181; 3:1rZsy2EZT0octa9q5iG8Ta6UAKphBQYg2W7mFtbndLvW6OvE4gLvVxobHKmr3p7ug0Ts9tbCykHEYS2hZSQqsr5DmNAqnSY3Tk4hdGfBP9TL7Kxz4bCLK8m9oXLUu5PjvEFvSN6hlmL43d3s6POnXRE1nmTVLD9xcRy6nxCSKFALdM7eV+pWInHiXVcGNojXdUNMifUVYEz0oHi4kyiOYYtBoT82UPPRyPJcaoQrtt8uJHQhfW8yhU0J3Xw3j704; 25:OJdTmWAr1O/ci82sUOCFaG+4MLG8k2ywhRKAS+AkARBv9HVtZXN/sORgs6jxFc2ZY+UR5nHPbXri7eIySfW4M1FFr4xBd6MLZHyj8263YPo/Ur0lkMb3hWFG03ZnzJpamff+PcdLTn+QLzvum3ZJX57zlM960z/K++cx/5bqNIb/JN2YsWAz9MLHKIyZ541dnzJOs6m+flbq0gaisw2Nacjcie5Ddub2gPD0USxg+4LTQUb9TAzaclkcqfD4qGL2QRbOXb8FSv5CsBDD8hHHWm67ftHTieifo50nNmDz9kKX2cHk9cEXKdmNmbPvOPKaGqL2FF9++gfR40iXJpxjQQ==; 31:Me9ywz9NkCGXEkLdhCATmIb7r+CWXJd9pVTyQSmoOvO1djN8OVYoNJCasnLIVfoE+EEjWz9CoEAVF4g8UAUST5haAzp7l/IRHkeD/MwvyCcW8r6oHxOTTVJzrsod6lUXlHk6ihwTrPPw7ngH+QzHBuTKJUTU8uFUbL/uKnj/oVRbJT4jxfVp8fSExMrFati+pfSVK9WwfvjHZhbEKV0YlEICX/HxbY23SiEuodBh/mc= X-MS-TrafficTypeDiagnostic: MWHPR07MB3181: X-Microsoft-Exchange-Diagnostics: 1; MWHPR07MB3181; 20:+MkAcsuecAdDNAI5wCuwYyRZs/dZV1VeThBN7iPNd/BunseTHwQh8LmO8s0do+AlPHM/OrNvIkgc7juuLIzStCQe9s4kpidVRzRsK34HIBtPi/hnzv8/p9cKRRgfH/h3UU8Lm6iFgwTh3f10vePTNkhv9GmUPXhT6mORZdiLyiRx1iMC1bRO87COpwUX37CS3LIZX/RfaXgS6nSJk5PQSYPAiuIAZnHz5VZ/i6OsPtQEn2YTBGIbbBWWLMhIGjuhfgb9Y0b/CIHrzoKvhaXDvV4HKbC5zn+pvD8X5Ibxa5wx1AEz6yLNpNCKNGA+OiflOjhFV/0cb6LUpCKJjV7tbOcnuNqZKslYu1z7tjYBxWZKapfZTdNL+6lUWRnBkfUZ3cwP1bIaxyIjbBznj+qE11de2m8uHLoSTlKQlP5SLnLyy3MjtVKC2LAejHzKjw4JIm6eUHRt41eYhxWTa1PiX0kSVzwdzddoco3IeovNt9ZwRSOnDsCu4Ec31dWJgVV3; 4:9w2GUiujQpe3ClbLeA235+WOAOR6NWovbpB4CBv1fik/IPG76Zzk5zcfp2ysN0G1ghjeIv4Tk+VVCMae5zC4+ipisEBvbRBFBqIgHBoK16Onf56ExgRQP7jIedmUlbLa4MREIb125P8ulwnGoiotRgCqLo+mR5KZImYQvP4+M8/JYWgqhH7QxMkcrp11MCzTTfgEaICkvMMnkMfmSXb2QP3CHJURW6sqczhlM2FnkF8cByasYv0KYSgslD+5+38K X-Exchange-Antispam-Report-Test: UriScan:; X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(100000700101)(100105000095)(100000701101)(100105300095)(100000702101)(100105100095)(6040450)(601004)(2401047)(8121501046)(5005006)(3002001)(10201501046)(93006095)(93001095)(100000703101)(100105400095)(6041248)(20161123562025)(20161123564025)(201703131423075)(201702281528075)(201703061421075)(201703061406153)(20161123555025)(20161123560025)(20161123558100)(6072148)(201708071742011)(100000704101)(100105200095)(100000705101)(100105500095); SRVR:MWHPR07MB3181; BCL:0; PCL:0; RULEID:(100000800101)(100110000095)(100000801101)(100110300095)(100000802101)(100110100095)(100000803101)(100110400095)(100000804101)(100110200095)(100000805101)(100110500095); SRVR:MWHPR07MB3181; X-Forefront-PRVS: 039975700A X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10009020)(4630300001)(7370300001)(6069001)(6009001)(189002)(199003)(23726003)(25786009)(4326008)(83506001)(6486002)(6666003)(6916009)(4001350100001)(2950100002)(6116002)(5660300001)(81166006)(3846002)(50986999)(54356999)(81156014)(50466002)(189998001)(66066001)(47776003)(68736007)(76176999)(97736004)(8676002)(110136004)(101416001)(107886003)(105586002)(7736002)(33656002)(72206003)(6496005)(86362001)(7350300001)(76506005)(53936002)(305945005)(2906002)(478600001)(1076002)(42186005)(106356001)(2361001)(2351001)(18370500001); DIR:OUT; SFP:1101; SCL:1; SRVR:MWHPR07MB3181; H:localhost; FPR:; SPF:None; PTR:InfoNoRecords; MX:1; A:1; LANG:en; Received-SPF: None (protection.outlook.com: cavium.com does not designate permitted sender hosts) X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; MWHPR07MB3181; 23:mlUep9aXCZPF/CEctfop6fEEJuDpKDFbjjwjCcxQ9?= =?us-ascii?Q?ept3/fEhhWwvRjRK2ZNlfyAFr45yPtbz43d3nQnEnikX+rkQQWlhN79sHqOV?= =?us-ascii?Q?nx3hcPgYQBy7Nty2V2zyUryes9DsZAR32RkYl1fDUh4ny0U0QjRfhBhwUYmd?= =?us-ascii?Q?8XtFGpJtcXmqwyvLyKuV7IrR0c6vVo/lM494nAoeWz4AMQ8iqHaiyr1piEvW?= =?us-ascii?Q?bAoObhxIegso2RUwB7Ss5Gcge3I86SXlYyWZ25yFhF6+wovUZmNDFD1WeIsJ?= =?us-ascii?Q?7QtBJWNxalO2Rqk1eKe+4LYbAgU/V2NOJdI8YzQapTpu4rzilfqIwqouqNP4?= =?us-ascii?Q?AQ5LIGgsiTp0jp3UybVVcBYUSz3S/UIqhtxj+0AjSj3pWyinuHLXmDLm8UoK?= =?us-ascii?Q?hQMyTknscjA/5cxmcvnbAR59OevAits1Ns3X+2UeBXEq7FmzCMUxfc/x+7/W?= =?us-ascii?Q?wwe8eBE5QZd6U3gecJrVthESngYH6HCE/jh8BvFDbHyyL2JJoYjr+RnpUAck?= =?us-ascii?Q?XWxfh6okxQakWnf+PEPhxxEQ0pcogryGPWOcOw0AvkqWS3RgO28vMntEir16?= =?us-ascii?Q?x3GU+Tvm4F6EIdZsSOybk39PMVPvBPtsHiUiN6bFXIIppbcJiOdGy+h8jzKd?= =?us-ascii?Q?3NQ5hMZvVReUMSN17kDGf5kkuuu9tskJs/wNWrtyrBwG2GMm1y4p11Y7XiaZ?= =?us-ascii?Q?5oGWrFGP9xPXz1p/6hHQ2GWh4cPXBurak3+50W7JCKI9QVS6gEXlAbWtpnE8?= =?us-ascii?Q?+C2vQXPZaFCBR08CVdPBzjOO7OEDlhgBSv23+850NluF2JvNzogtuFR31idr?= =?us-ascii?Q?1FyUirkOQWS/n3rLGav3YX8sqR3rPxFYqMpb80Fv5OpgQhZfwDeXGZ20vuJi?= =?us-ascii?Q?AZUIL39CRPMPRIBo5ArIQ1c5MEEHhfcSyBhZua3U6wdyNVTid6cP9i+8yS5Q?= =?us-ascii?Q?4v91VNdbKRLegozewt/+SGB5T2PgaXQiHNvc45ZDPl8Bd224Zjrkp8n/JeV2?= =?us-ascii?Q?3nWbN64m1Gt/uion4E6K/rjPOqW/v34esX5dUBtwJDpzJrluWmNlkP/6vLB2?= =?us-ascii?Q?9KADkfUQeH/wWWxPJMAYdyXkyRjQa28vYppboej4vKODCJnk1bZkYosGzmDn?= =?us-ascii?Q?QG9wzkd+shbLr++nNZlkFlgwhuoesZ2yJdktIvy6oLigyUeD1BsXs5e6Jf1t?= =?us-ascii?Q?oRQGqweT2azqF92POpaS8EZKZQqhWsxN5/Y0BJXTjN8GHukfLyzfI+dbg=3D?= =?us-ascii?Q?=3D?= X-Microsoft-Exchange-Diagnostics: 1; MWHPR07MB3181; 6:2d9LogYkQurBYq+vl8YLHk/J2EZDWWh7hLMrIW4MFYZ8OH0pkm/v3LEvxZuhaghgYKREA8VUNKDcp+b/MyF6CRmfXCs/V0K6UTlOS3CFnTeUM2tALzgCFLpGTBoLxRk69e5inBwRSPQ8ig1UEeh+sY625aMP1Rh5U5InpQdx8qqO9lLuHbAiRKueXIGIbJ0iRAFJeuJxbUdAf+U/PverJWrUvgavFU+3go97T+8NrQ58k0O+0qLReyp2LCzSObwy9VIg5651AOupp+LOgMiO8vxsBvUB/vM+vcWNGRpehlkxA2z+Bo1J1/Q7ues7xDEqQr5FsvO4YfzhCBEBNx429A==; 5:MoLPKcWWxDpBMf7Eez+AjnWErkC6luNEqpoBp2s4gG0OY80nTlVFN4S1vgqi0wcgAmhqfISE4Jhe/mbURydGiOq7QTe/MP2jvw3eIKC2HOfI4gnM+72X1HaQGgpeTqFpKgR1I7dYRVuo3B5P4yGFRA==; 24:LeVdtsD3nJnH8AQydgOuseWhj6/qBbAiM/2skgVArj7J2J0EAUvmYUEvlSG/gQ9GxuBrqz6goDISROpnnIIROjMYBH9lxsS3Eb2Q4biPfUk=; 7:hsl2v2Wo9+wU/R+gpTsJFzJShLLOEtr8fj6zCXJLCI65tdRzlTdUROOphVXtWHji0ACSKgQ9+GsdtEqAh8xvUSpxMId+YzWZIcRMKO+4IaDWvdqOjkXv/AMSgt/4PchuNbpJW+DXSrP5q+zymSHJ0VlAoTlj1KF1MZcDyxAissPN2hevHSaHps6ZqtBFY7XAeGnE1f2NMGPAylRQt5W58j/SBhpAaAVWNNhKs0mTeCE= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-OriginatorOrg: cavium.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 14 Aug 2017 19:01:45.2368 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-Transport-CrossTenantHeadersStamped: MWHPR07MB3181 Sender: netdev-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: netdev@vger.kernel.org From: Intiyaz Basha Moving common octeon_setup_droq to lio_core.c Signed-off-by: Intiyaz Basha Signed-off-by: Felix Manlunas --- drivers/net/ethernet/cavium/liquidio/lio_core.c | 35 ++++++++++++++++++++ drivers/net/ethernet/cavium/liquidio/lio_main.c | 37 ---------------------- drivers/net/ethernet/cavium/liquidio/lio_vf_main.c | 35 -------------------- .../net/ethernet/cavium/liquidio/octeon_network.h | 2 ++ 4 files changed, 37 insertions(+), 72 deletions(-) diff --git a/drivers/net/ethernet/cavium/liquidio/lio_core.c b/drivers/net/ethernet/cavium/liquidio/lio_core.c index b55ab75..90583ce 100644 --- a/drivers/net/ethernet/cavium/liquidio/lio_core.c +++ b/drivers/net/ethernet/cavium/liquidio/lio_core.c @@ -397,3 +397,38 @@ void lio_update_txq_status(struct octeon_device *oct, int iq_num) netif_wake_queue(netdev); } } + +/** + * \brief Setup output queue + * @param oct octeon device + * @param q_no which queue + * @param num_descs how many descriptors + * @param desc_size size of each descriptor + * @param app_ctx application context + */ +int octeon_setup_droq(struct octeon_device *oct, int q_no, int num_descs, + int desc_size, void *app_ctx) +{ + int ret_val; + + dev_dbg(&oct->pci_dev->dev, "Creating Droq: %d\n", q_no); + /* droq creation and local register settings. */ + ret_val = octeon_create_droq(oct, q_no, num_descs, desc_size, app_ctx); + if (ret_val < 0) + return ret_val; + + if (ret_val == 1) { + dev_dbg(&oct->pci_dev->dev, "Using default droq %d\n", q_no); + return 0; + } + + /* Enable the droq queues */ + octeon_set_droq_pkt_op(oct, q_no, 1); + + /* Send Credit for Octeon Output queues. Credits are always + * sent after the output queue is enabled. + */ + writel(oct->droq[q_no]->max_count, oct->droq[q_no]->pkts_credit_reg); + + return ret_val; +} diff --git a/drivers/net/ethernet/cavium/liquidio/lio_main.c b/drivers/net/ethernet/cavium/liquidio/lio_main.c index ba1b493..a814d58 100644 --- a/drivers/net/ethernet/cavium/liquidio/lio_main.c +++ b/drivers/net/ethernet/cavium/liquidio/lio_main.c @@ -2196,43 +2196,6 @@ static int load_firmware(struct octeon_device *oct) } /** - * \brief Setup output queue - * @param oct octeon device - * @param q_no which queue - * @param num_descs how many descriptors - * @param desc_size size of each descriptor - * @param app_ctx application context - */ -static int octeon_setup_droq(struct octeon_device *oct, int q_no, int num_descs, - int desc_size, void *app_ctx) -{ - int ret_val = 0; - - dev_dbg(&oct->pci_dev->dev, "Creating Droq: %d\n", q_no); - /* droq creation and local register settings. */ - ret_val = octeon_create_droq(oct, q_no, num_descs, desc_size, app_ctx); - if (ret_val < 0) - return ret_val; - - if (ret_val == 1) { - dev_dbg(&oct->pci_dev->dev, "Using default droq %d\n", q_no); - return 0; - } - /* tasklet creation for the droq */ - - /* Enable the droq queues */ - octeon_set_droq_pkt_op(oct, q_no, 1); - - /* Send Credit for Octeon Output queues. Credits are always - * sent after the output queue is enabled. - */ - writel(oct->droq[q_no]->max_count, - oct->droq[q_no]->pkts_credit_reg); - - return ret_val; -} - -/** * \brief Callback for getting interface configuration * @param status status of request * @param buf pointer to resp structure diff --git a/drivers/net/ethernet/cavium/liquidio/lio_vf_main.c b/drivers/net/ethernet/cavium/liquidio/lio_vf_main.c index dd0265a..a6efd75 100644 --- a/drivers/net/ethernet/cavium/liquidio/lio_vf_main.c +++ b/drivers/net/ethernet/cavium/liquidio/lio_vf_main.c @@ -1345,41 +1345,6 @@ static void free_netsgbuf_with_resp(void *buf) } /** - * \brief Setup output queue - * @param oct octeon device - * @param q_no which queue - * @param num_descs how many descriptors - * @param desc_size size of each descriptor - * @param app_ctx application context - */ -static int octeon_setup_droq(struct octeon_device *oct, int q_no, int num_descs, - int desc_size, void *app_ctx) -{ - int ret_val; - - dev_dbg(&oct->pci_dev->dev, "Creating Droq: %d\n", q_no); - /* droq creation and local register settings. */ - ret_val = octeon_create_droq(oct, q_no, num_descs, desc_size, app_ctx); - if (ret_val < 0) - return ret_val; - - if (ret_val == 1) { - dev_dbg(&oct->pci_dev->dev, "Using default droq %d\n", q_no); - return 0; - } - - /* Enable the droq queues */ - octeon_set_droq_pkt_op(oct, q_no, 1); - - /* Send Credit for Octeon Output queues. Credits are always - * sent after the output queue is enabled. - */ - writel(oct->droq[q_no]->max_count, oct->droq[q_no]->pkts_credit_reg); - - return ret_val; -} - -/** * \brief Callback for getting interface configuration * @param status status of request * @param buf pointer to resp structure diff --git a/drivers/net/ethernet/cavium/liquidio/octeon_network.h b/drivers/net/ethernet/cavium/liquidio/octeon_network.h index 0e44ee1..b2bb34d 100644 --- a/drivers/net/ethernet/cavium/liquidio/octeon_network.h +++ b/drivers/net/ethernet/cavium/liquidio/octeon_network.h @@ -475,4 +475,6 @@ static inline int wait_for_pending_requests(struct octeon_device *oct) } void lio_update_txq_status(struct octeon_device *oct, int iq_num); +int octeon_setup_droq(struct octeon_device *oct, int q_no, int num_descs, + int desc_size, void *app_ctx); #endif