From patchwork Tue Sep 19 01:30:04 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Mody, Rasesh" X-Patchwork-Id: 28899 X-Patchwork-Delegate: ferruh.yigit@amd.com Return-Path: X-Original-To: patchwork@dpdk.org Delivered-To: patchwork@dpdk.org Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 307C91B23E; Tue, 19 Sep 2017 03:31:44 +0200 (CEST) Received: from NAM02-CY1-obe.outbound.protection.outlook.com (mail-cys01nam02on0055.outbound.protection.outlook.com [104.47.37.55]) by dpdk.org (Postfix) with ESMTP id CE9501B1AF for ; Tue, 19 Sep 2017 03:31:25 +0200 (CEST) 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=vIQPzjSjIrvfFnoiKeAoL86FeYKZQuIUrcPYrekOSYk=; b=Uv46n+vrcPwlsqX6ai+qgGLt0VyQWj23Lv/RePDxrFx4DOE8FrrLwxR7yPIKwlk3jn8AuJ1GVon0tHk9tMveuCOAkvuTcvZQkYDDf3zifEOz0f4fdhnjP1dl1k1Dvt78CHLlqipzSEfZHhFhNj79dOVsIZ3ZVdjK0sV5Il52nOs= Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=Rasesh.Mody@cavium.com; Received: from cavium.com (198.186.0.2) by SN4PR0701MB3838.namprd07.prod.outlook.com (2603:10b6:803:4f::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.56.11; Tue, 19 Sep 2017 01:31:22 +0000 From: Rasesh Mody To: dev@dpdk.org, ferruh.yigit@intel.com Cc: Rasesh Mody , Dept-EngDPDKDev@cavium.com Date: Mon, 18 Sep 2017 18:30:04 -0700 Message-Id: <1505784633-1171-25-git-send-email-rasesh.mody@cavium.com> X-Mailer: git-send-email 1.7.10.3 In-Reply-To: <1505784633-1171-1-git-send-email-rasesh.mody@cavium.com> References: <1505784633-1171-1-git-send-email-rasesh.mody@cavium.com> MIME-Version: 1.0 X-Originating-IP: [198.186.0.2] X-ClientProxiedBy: SN4PR0501CA0015.namprd05.prod.outlook.com (2603:10b6:803:40::28) To SN4PR0701MB3838.namprd07.prod.outlook.com (2603:10b6:803:4f::13) X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: a2585672-b490-4872-a563-08d4fefe2306 X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(300000500095)(300135000095)(300000501095)(300135300095)(22001)(300000502095)(300135100095)(2017030254152)(300000503095)(300135400095)(2017052603199)(201703131423075)(201703031133081)(201702281549075)(300000504095)(300135200095)(300000505095)(300135600095)(300000506095)(300135500095); SRVR:SN4PR0701MB3838; X-Microsoft-Exchange-Diagnostics: 1; SN4PR0701MB3838; 3:h48y6ydQUCiouya8Yo2UtxeN25uGOW0xTyLw1+p+ukEVrD8Z54VZKZHvPyJj3XHymYARgX8FWgZb4+EDnliA7+F1QTPzbMKB/v2dK9COlP2kl3Jo254lU/8ZLfwCC2DWuD/kTHxPeMEluyK2ugoQ6OswKe+n1FfhonfJZf3TWQV+r0emowCJaJIIuiQYLp1t6aWUHDNBz6xPF9WqM3aUX59WC5cmNVdDcfNrx3RyfSSY/IxpsmELgVgktCDkRZcr; 25:lenSYo99NwmXYNP12NeEozAOE5i4Ll+NHAMUoqib4hYwe8vJywAiOlyR8wKAy4STAdpVMAaQrPo0lmwU0Fn9Y+KlgjRRK8DjL7t/UqygU1e2L/PZ9Aw1o3pWsDNlcM9KdnslCfy1xJNB1W+KOzY7zB2r7JFeycxst85FY3eQI7KKtW83qS8E5GAkljGL+OhJPz2ebC8VMNdAS83ut2NC4wY4i1GKIOG65WaNbHuzyfhn/uC8f4QccdaOBNQj/c7k8Lrz8CwbVfbIDBYyjYAA32CEoCJ7eW93wlKAaIb4PwdCmA4JSErLH0RjWU4nWLz/7wJW9L4a8rr1D7zRNzp1Pw==; 31:970ao3wKBT7hT6i+pbHlIAD9smWtza3U9wMVx01dHYRN+fgS1zLrFJ/GbiQz0BdGOPRDEcI2TFLmq/powdC/v8Iyw+gf0v1Ava0QAPtLrO8egR+vVX0YxXthWFIUudBktfLjb3iLrZPIcJ89+leipgHoIbN+QcNrYzEmI3teXnHozYFbqX29dwcM1/G+bC31ou5YQw1w//yL7zILkCn80a7rL+nvEdtAQMbs/Rz/dG8= X-MS-TrafficTypeDiagnostic: SN4PR0701MB3838: X-Microsoft-Exchange-Diagnostics: 1; SN4PR0701MB3838; 20:ipRhjtwLHFyOTjDrCtPvRQV9EMhiGkfbQNXgOOtdkqAQTXthm9Y7MYvzRy/8sa4jejrHhaOabAbEps7NStkJOhuq7pLReqfGvet9uCCHmeV0Ph2k6HvRHMVzhAE1nB89K9Ypnid1f2yzhbeT7l795Sw0necLF/qyzOYzvu7cldfK+g2G4ZPGvPn0Pl6cra/8u4AYCnS/mpJ469vav+Jb8wZDMUlSjNM441Ln5vYkSlZx8x42thUMkTtBwYkOJu9N+CwgAOlYOBwpednty6T0ATM6GNMl3qmR8zPQqQv2zzFpiP/Ug9ZIpIgFyZS3OvGkPxcIDpdEKar/MzTfx9YaFLgd30PzmzrwtjNgmINiwHkITGqDENpg+rOzMQ5VH4HZcBjFqUkilcpSQY3Ll+9A7WMHDm8vhEe6Oe0Cw6eDTmn1l1vGYlEGPmqH7YVduGVnGvsImicbzoqBoBhMaBBXMkp7OpW17qfMM5czpFbXHnRzRVsfyH7FtObSK8VcH6Az; 4:9sn7gZFxULvHDiKtk1wBD80NgfFupQ+hh8BD8i8Rq0VlKbjpJyuptPdTEVeOhKcY6UC0hV3o7cDPjcejuB/ACqK63mS8TVrD2V3cl01vJJ7ZGexBd3SiMOfGipqYEQahrzlgiUekqdIB1L7jmBhfWjxU2ZN48lhngBAothhXAt2J5AzlTwyM2RJcrgxrbLJt8XHz4L+RqJAC/ddkB8+Y3V/dU0BtEJkPvVrXP2TVmh2GE6yRReWU92BSP3brtyj2 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)(2401047)(5005006)(8121501046)(100000703101)(100105400095)(10201501046)(93006095)(93001095)(3002001)(6041248)(20161123555025)(20161123562025)(20161123558100)(20161123560025)(20161123564025)(201703131423075)(201702281528075)(201703061421075)(201703061406153)(6072148)(201708071742011)(100000704101)(100105200095)(100000705101)(100105500095); SRVR:SN4PR0701MB3838; BCL:0; PCL:0; RULEID:(100000800101)(100110000095)(100000801101)(100110300095)(100000802101)(100110100095)(100000803101)(100110400095)(100000804101)(100110200095)(100000805101)(100110500095); SRVR:SN4PR0701MB3838; X-Forefront-PRVS: 04359FAD81 X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10009020)(6009001)(376002)(346002)(199003)(189002)(48376002)(33646002)(68736007)(316002)(21086003)(15650500001)(16526017)(16586007)(72206003)(36756003)(478600001)(97736004)(86362001)(66066001)(25786009)(69596002)(47776003)(50986999)(81166006)(8936002)(50226002)(8676002)(5660300001)(7736002)(53936002)(305945005)(81156014)(55016002)(50466002)(76176999)(6116002)(3846002)(2950100002)(101416001)(4326008)(4720700003)(2906002)(107886003)(6666003)(189998001)(106356001)(5003940100001)(105586002); DIR:OUT; SFP:1101; SCL:1; SRVR:SN4PR0701MB3838; H:cavium.com; FPR:; SPF:None; PTR:InfoNoRecords; A:1; MX: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; SN4PR0701MB3838; 23:0UWU71P21rf+0TxTj9Qu067mLdNlTCFS+bmZabK?= rpFJ1RJHZJUXCUj5ldH9p6Hi63oukVmxvfk6rCtGFKRU62OH+y1jH8EdmX4Jz3P/rjAH1hpU2RpDBKK8R+qfJhTgN0QyU4PcsDsMrlsCQE7hM+boJrS3shB0RgxJkoy4B2YpnMOikbzE1CmWpP4ay3FpADoZ2px/2f3K2yRTbz3LeRSDMnf5NbtQHWkjrdYPjymvPLzQVkbfGG8ZzXp9k/cH+3a+D3lrIheuMmlXXmY2tcDh8qBUvCMhJcuU0eBy/nRIa/PJyOqRmFvBnaHtjaJ0HJ/NdciS7JAXuWtx8dZegrfCIf2KdjhVxIrgtmTp+qu8gbdNoYddTg+wkn19uat7haq+dFxJsQQ3j57Ey+3Lu85oslrNV5wkBZLdfHznGqFvlZaMXkFrjhAMcWLJubIyEdTZdr89Aq3al3A50dqRSC8F7y504dgNqzriQP0Rh2PFrELgsgQJj7FoedK3rsR8nI2QYFsM3J956EENyZNp6zJ4v0GB9iSuksSzxqgcYbX/lKADiR2gDElfQO42trIP13nXA57uJ0pXdii5dMKkh7yMefSt+oMZAyQIaPfbZLsCvE/1jLKrZWIwTL6irrWnBWH6uJsgXSMk1i1hdh+fmgXBrHCGIKtDo6O/Pv5tnwySqcJHxfF0ftpFTV6p7RNzxFPxtImwrybCAlE/Y4KBGrtt1VQB5U5eJGSnYhPSuc4tVm9sJR5txW8xxr5zJSu9fQvfH2JFawjyu35cukOA+f46amPOoiBPeJI/yh5+rAxHdPwI25rm+f1tTJTc6xeLfVpmKgyiXcQ/70YZwPAoZcR5nR8B9HvP8mgcvkSMZlKC2zmZ5Y18gymNkyNEUlHPEimitRtF+xwfBEj8GeLBCXP8kCw/+9HfjuCiCdQ3evNs/WwBoaY9L5AJ9YssySUl+8CUPX+tBQ0o6CQ+BpJPLq2ZCsKufDx4X1kEpxLXmr2hLY/6tbuNOtxH1fH2GjqdPkY03oFXLCDd1b2FSxOEHhKoD40A3WGwXFOXlM0/i0c+5mxZXyRS51Py7yboij7IXPQialGo3sk0q9XtjXoFh5SsDII2zZoFeBO1+AW5+aYvXnaVPxl6OqUHutYaLNkiX X-Microsoft-Exchange-Diagnostics: 1; SN4PR0701MB3838; 6:IW6GIQPjq7xHRD/Q0iwROH4l1CPZhuHTLz5fIaJjHMg3i4wgMuRUbJQJjnfyPVockvjVka9MQCAM7A731DUijpDkYmCv/f7h3O2tS9hXzwOU7cqemVsrcU5Llbi+BqvQVxv0exJv0dm3dVpQ0fG6cmfl5BLnD4CL1atMZVhJS6mO5JxJOWxI4Lwck6Tff9BUmMvsJhdsyanNC/HMIg/IqXH5YONxQy9YMovWgEzax7o9AH3zd2a+/yoQo7IKxv/rMNOlZdJI/8upWALXza8v102zc7DQntWeWDH4tI41oBQGJ+Fa0deAAbeQby7eZW9qsRDXeO+YgCCJljsYX+bBEw==; 5:256NXyp4NkNNk9jQ/coMMDLWpD04oO6jxYoAWT3xl156aTv5cgzdyRsarw0P+SN5a/PSuVfKekUwt9zE+hIPBY0O+HPPvHHvVhL+9PzsifqPNfIhvt0B/PK9kaFyVSy+vZrzkCnWhCwmrK5Mk+qH6w==; 24:hyIfQD+uAfJEQCoF4swSuZFilUdAskIfr1qPmmImN+2dVBVqr+7UJh4R0a282nzziY8IFj4xtN9S3pVpnx9DKdTBD0ADLCrOXKghhTTjXCY=; 7:B6rXfbRq1VzgVpspD5x3HBoxoBJwt7gdTM4h9RDT8X+08DMEoMDCF9NXlFWEnoGGIhJkmElPbyZpZ4cvXg+BZmtWhUzCEeI2od/A1QeqaWuvwjERHE10nzuRqRUQa12nFIZ0VqUTwupBUWAXnF6xLGGPmIL4ge+u/VDwErx/+T50zMM1uhFR1kHAYUaMGH4Xd8JbGvxsNkA2QPNfVCJSrmQcqnhiR4lmfyJoQjeU2YA= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-OriginatorOrg: cavium.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Sep 2017 01:31:22.6212 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 711e4ccf-2e9b-4bcf-a551-4094005b6194 X-MS-Exchange-Transport-CrossTenantHeadersStamped: SN4PR0701MB3838 Subject: [dpdk-dev] [PATCH 24/53] net/qede/base: add API to send STAG config update to FW X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" Send updated STAG configuration to the Firmware. Signed-off-by: Rasesh Mody --- drivers/net/qede/base/ecore_dcbx.c | 2 +- drivers/net/qede/base/ecore_mcp.c | 1 + drivers/net/qede/base/ecore_sp_commands.c | 27 ++++++++++++++++++++++++++- drivers/net/qede/base/ecore_sp_commands.h | 12 +++++++++++- 4 files changed, 39 insertions(+), 3 deletions(-) diff --git a/drivers/net/qede/base/ecore_dcbx.c b/drivers/net/qede/base/ecore_dcbx.c index cce2830..e7848c7 100644 --- a/drivers/net/qede/base/ecore_dcbx.c +++ b/drivers/net/qede/base/ecore_dcbx.c @@ -882,7 +882,7 @@ enum _ecore_status_t ecore_qm_reconf(p_hwfn, p_ptt); /* update storm FW with negotiation results */ - ecore_sp_pf_update(p_hwfn); + ecore_sp_pf_update_dcbx(p_hwfn); /* set eagle enigne 1 flow control workaround * according to negotiation results diff --git a/drivers/net/qede/base/ecore_mcp.c b/drivers/net/qede/base/ecore_mcp.c index 733852c..21eea49 100644 --- a/drivers/net/qede/base/ecore_mcp.c +++ b/drivers/net/qede/base/ecore_mcp.c @@ -20,6 +20,7 @@ #include "ecore_gtt_reg_addr.h" #include "ecore_iro.h" #include "ecore_dcbx.h" +#include "ecore_sp_commands.h" #define CHIP_MCP_RESP_ITER_US 10 #define EMUL_MCP_RESP_ITER_US (1000 * 1000) diff --git a/drivers/net/qede/base/ecore_sp_commands.c b/drivers/net/qede/base/ecore_sp_commands.c index abfdfbf..d67805c 100644 --- a/drivers/net/qede/base/ecore_sp_commands.c +++ b/drivers/net/qede/base/ecore_sp_commands.c @@ -398,7 +398,7 @@ enum _ecore_status_t ecore_sp_pf_start(struct ecore_hwfn *p_hwfn, return rc; } -enum _ecore_status_t ecore_sp_pf_update(struct ecore_hwfn *p_hwfn) +enum _ecore_status_t ecore_sp_pf_update_dcbx(struct ecore_hwfn *p_hwfn) { struct ecore_spq_entry *p_ent = OSAL_NULL; struct ecore_sp_init_data init_data; @@ -555,3 +555,28 @@ enum _ecore_status_t ecore_sp_heartbeat_ramrod(struct ecore_hwfn *p_hwfn) return ecore_spq_post(p_hwfn, p_ent, OSAL_NULL); } + +enum _ecore_status_t ecore_sp_pf_update_stag(struct ecore_hwfn *p_hwfn) +{ + struct ecore_spq_entry *p_ent = OSAL_NULL; + struct ecore_sp_init_data init_data; + enum _ecore_status_t rc = ECORE_NOTIMPL; + + /* Get SPQ entry */ + OSAL_MEMSET(&init_data, 0, sizeof(init_data)); + init_data.cid = ecore_spq_get_cid(p_hwfn); + init_data.opaque_fid = p_hwfn->hw_info.opaque_fid; + init_data.comp_mode = ECORE_SPQ_MODE_CB; + + rc = ecore_sp_init_request(p_hwfn, &p_ent, + COMMON_RAMROD_PF_UPDATE, PROTOCOLID_COMMON, + &init_data); + if (rc != ECORE_SUCCESS) + return rc; + + p_ent->ramrod.pf_update.update_mf_vlan_flag = true; + p_ent->ramrod.pf_update.mf_vlan = + OSAL_CPU_TO_LE16(p_hwfn->hw_info.ovlan); + + return ecore_spq_post(p_hwfn, p_ent, OSAL_NULL); +} diff --git a/drivers/net/qede/base/ecore_sp_commands.h b/drivers/net/qede/base/ecore_sp_commands.h index b9f40b7..34d5a76 100644 --- a/drivers/net/qede/base/ecore_sp_commands.h +++ b/drivers/net/qede/base/ecore_sp_commands.h @@ -87,7 +87,7 @@ enum _ecore_status_t ecore_sp_pf_start(struct ecore_hwfn *p_hwfn, * @return enum _ecore_status_t */ -enum _ecore_status_t ecore_sp_pf_update(struct ecore_hwfn *p_hwfn); +enum _ecore_status_t ecore_sp_pf_update_dcbx(struct ecore_hwfn *p_hwfn); /** * @brief ecore_sp_pf_stop - PF Function Stop Ramrod @@ -145,4 +145,14 @@ struct ecore_rl_update_params { enum _ecore_status_t ecore_sp_rl_update(struct ecore_hwfn *p_hwfn, struct ecore_rl_update_params *params); +/** + * @brief ecore_sp_pf_update_stag - PF STAG value update Ramrod + * + * @param p_hwfn + * + * @return enum _ecore_status_t + */ + +enum _ecore_status_t ecore_sp_pf_update_stag(struct ecore_hwfn *p_hwfn); + #endif /*__ECORE_SP_COMMANDS_H__*/