From patchwork Mon Sep 17 10:36:21 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Shreyansh Jain X-Patchwork-Id: 146842 Delivered-To: patch@linaro.org Received: by 2002:a2e:1648:0:0:0:0:0 with SMTP id 8-v6csp3602611ljw; Mon, 17 Sep 2018 03:37:55 -0700 (PDT) X-Google-Smtp-Source: ANB0VdaK8gdcKkHSGN9qHiePBzAe/pAFNTIHkPOinYrhwHpxFBAYXACwbS8G1osUJq3LeFyKViiQ X-Received: by 2002:a1c:9d02:: with SMTP id g2-v6mr10436062wme.122.1537180675379; Mon, 17 Sep 2018 03:37:55 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1537180675; cv=none; d=google.com; s=arc-20160816; b=w0yR9SbPhPEBBMPcdA+4sXSKzlluB0+G42l6GTzrHCCtnfU0koQRPDrvoamLy3uR6L pyAjavwERW0uU7D8pWIVUypzoeu0aMj0A/b1fLrFDMdFnyFuUrdraVywW9SW09ac+uba TSgt2+XctOnLy/VRPUrYJc1QozTOKWt0YDYhmB5cH/SWSltbmK9i4KlYF1YKtRpNw3qS CHXaqCrUz2o8ixqMoJ8APybZK5crrLqNYL3ysmeUfvj6CPlDv7mloIP5yfSE5i+8YlrY H6wCMl8aNMCXTda2UbkH+24xSviPPuLkye+SMxD/0cYcfBt6mc8h02ygsRKrk+CRArHg K4pw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:list-subscribe:list-help:list-post:list-archive :list-unsubscribe:list-id:precedence:subject:spamdiagnosticmetadata :spamdiagnosticoutput:mime-version:references:in-reply-to:message-id :date:cc:to:from:dkim-signature; bh=QQKvPT6RlMt5xy+nZMqgY8XWnFSu6xuQQSk68qwvrdI=; b=sF+gnnGDt7jDhpgArOs9PHrKD7D1QPVUWXifU6urEewA53tbdM3JaXitO9b2nMRwsI I43hY4cCTg37+Yc11OUyLEIgwgH7elhmKF25dzSVjy80xEgSjj/25AiK8L6OIi+JKs/r 6rTV7fphAxPYNFnGf5dKuVVN/nKO0R6WrhKcD2AFSrE8pGIzq/y9+Haj72wWlHaZqoAC kFkWkLChoT6oSzUOZmzH8f6rddQsWoJO4BvlT1/lvup51DIv7JtdbjQGMfyjvwvVcx/3 XBia4QC1Ojc5pA+xprabI6CVrrXjrNH/5tqB4D934DkJrWHwDqPDwybzYhV3Ujk0ItsA 19Zg== ARC-Authentication-Results: i=1; mx.google.com; dkim=fail header.i=@nxp.com header.s=selector1 header.b=aaIpK5ro; spf=pass (google.com: domain of dev-bounces@dpdk.org designates 92.243.14.124 as permitted sender) smtp.mailfrom=dev-bounces@dpdk.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=nxp.com Return-Path: Received: from dpdk.org (dpdk.org. [92.243.14.124]) by mx.google.com with ESMTP id e144-v6si6494378wme.57.2018.09.17.03.37.55; Mon, 17 Sep 2018 03:37:55 -0700 (PDT) Received-SPF: pass (google.com: domain of dev-bounces@dpdk.org designates 92.243.14.124 as permitted sender) client-ip=92.243.14.124; Authentication-Results: mx.google.com; dkim=fail header.i=@nxp.com header.s=selector1 header.b=aaIpK5ro; spf=pass (google.com: domain of dev-bounces@dpdk.org designates 92.243.14.124 as permitted sender) smtp.mailfrom=dev-bounces@dpdk.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=nxp.com Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 4CB424F90; Mon, 17 Sep 2018 12:37:51 +0200 (CEST) Received: from EUR01-VE1-obe.outbound.protection.outlook.com (mail-ve1eur01on0048.outbound.protection.outlook.com [104.47.1.48]) by dpdk.org (Postfix) with ESMTP id A26A811A4 for ; Mon, 17 Sep 2018 12:37:48 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nxp.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=QQKvPT6RlMt5xy+nZMqgY8XWnFSu6xuQQSk68qwvrdI=; b=aaIpK5rovLp/ruGkSurFjLFTem/3pQlj90qzPGeKMUub4bwTBkrp2jKxL8xsdeQcLqincyDJ6Twd6mtOR3gIZTNKIHYs1clQO+jzGYdE+SWfBemA3Tfd6Ye7R76buSUmD1zZM75Q16Ykm3MHUhFViGSTFG03ejup/7vRMTFb7VQ= Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=shreyansh.jain@nxp.com; Received: from Tophie.ap.freescale.net (14.142.187.166) by AM0PR04MB4673.eurprd04.prod.outlook.com (2603:10a6:208:75::15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.1143.18; Mon, 17 Sep 2018 10:37:46 +0000 From: Shreyansh Jain To: dev@dpdk.org, ferruh.yigit@intel.com Cc: Hemant Agrawal Date: Mon, 17 Sep 2018 16:06:21 +0530 Message-Id: <20180917103631.32304-2-shreyansh.jain@nxp.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20180917103631.32304-1-shreyansh.jain@nxp.com> References: <20180917103631.32304-1-shreyansh.jain@nxp.com> MIME-Version: 1.0 X-Originating-IP: [14.142.187.166] X-ClientProxiedBy: BM1PR01CA0092.INDPRD01.PROD.OUTLOOK.COM (2603:1096:b00:1::32) To AM0PR04MB4673.eurprd04.prod.outlook.com (2603:10a6:208:75::15) X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 5d303685-9330-4624-b618-08d61c899c3e X-MS-Office365-Filtering-HT: Tenant X-Microsoft-Antispam: BCL:0; PCL:0; RULEID:(7020095)(4652040)(8989137)(4534165)(4627221)(201703031133081)(201702281549075)(8990107)(5600074)(711020)(4618075)(2017052603328)(7153060)(7193020); SRVR:AM0PR04MB4673; X-Microsoft-Exchange-Diagnostics: 1; AM0PR04MB4673; 3:uc/dScj9FX3lB+s448E1UX8vwXTYHgkkEVEpEQZY8HBu9zr0AS5TXLa0ltYxXuC0dFX8pnVGfiXLGktrdXFJYJMuSHQwzC3mxlot4/grW243aBnp8mIbxRkKngFhgj/Qx+vnI4S1zWCBNK/lN9P7P5cPw5c1kX0wYNXyx/PzuU5F+GxZG4yPasE+N5odEFqnQzrQlhaZ/umkl6r262w6hMAou8Ci6bzfM2UrnC5HX4cCV2+r0sxEV2rc+pLxzJUV; 25:IcxDVr91t7Zy5tUX/p+buEXfp0OijVJHV2PDNJV2pZ98hSkX7SJsYAylsjZocG9D8eVgpTau5t9pOH6m2ZWo1dbvYAg+RXi8ByVk2zh2kvK9S3E4Hsbz0arC4Ae2NVAy9MfvBDDQ4Jsw7MWLAuTEnsA7D9mgkTVZFRj7qF7uQ4A/Lwxojal7aQUQGISFiCsom0R7VWTSRP4uEzvcKLSQ33N0xxYgQ2tzFSf9zUrYFeBbTr/H1gpzKm+pL+7GSstDDLoIjIrXBwfmWUALTpGqCLZl3Ipx0LTOr/QoaW4+Lq3kPnyzA5weZ+aS5VFzuy0mh5HKf6ihvDkkj0Jqsc6WMA==; 31:PZjwASTJT/xQ94QtiHdZuOq1IdvUwJ7wEC++5YdYqEZclCrvGJ8VDEQylz14S2UyleB0e4EysL7B7jxEYCZXC3a8F5GWDzRQXbrxpy2ckEhm5pP/L/G7Us+N+RwGlQME+FtWUoJzu7miqq4XUldPWmZc8qXX98MvH4cOQS+b19Mp/SrBTRFW0DuKTKN2SazSVDX96/myTE20hCneGg4YoZG1eKsoC7JWOf1KqjDM034= X-MS-TrafficTypeDiagnostic: AM0PR04MB4673: X-Microsoft-Exchange-Diagnostics: 1; AM0PR04MB4673; 20:dlvaInYRtUKhrFbSKOiFMRgvgEdkOuTiRfY3R39KS25JX4aeTrdw+FzbBvHHM4S/tpUOIZe6rQ80tiKbZ8EixHwr9bE1cJpD3qV3qdMRsqyYkv6NDUigfJIwxXyjKkUtKc5Db8RELWA7fbKU6gaFXsSCFlBeC+wFL57UTQKIXpE3h2jsC4RbvmW8L4jKMArd9CxAIf0t2pqgqSjqUKldYRtzSzLSnP3KfCKiAVAFQqIxgdCLLdfpuZyPISkKH6t2zhRe/9IrnTeOCqTbWvwJW5u4Io6ERgYjH8JQ1KBZjf3DAMfav79WmKc6nCBG8LTKg0pUARGbhakWaebBmFVMAPGZtI1gFqrjl/aR8It6QqCI84WyQQtF4gJYLtme/2Ql3jzhzWC25C3O9C3qXNV9xKIBea0zlx/HDCEwN1HB7k4TyFPYTtX4itiepxERom1PgS372Xr9FM5M9ka2qsWF46j7pc7JxO1mUTlw+T6HebYpkCdBxJOO+3RDOgfoA+m7; 4:umRwSOR8jEm5W1hD34mJ7pCgzG3KQ9qSfznVtFuwZBz+JiZHa0UHQsyuh/g5+x0b4VASZBOX9eBA6bxvjBbKx+oa+JANRKH1PkJPZbrJTd3r6rsbb2LpcvKnun2b804VSfwKqDYPbA3jNOAQc86Omicmb/XbwhsVRLfBraMhmxVYF5ds9MjGetT7A0lnaTVdFr83PCT8DEhG+8wrc2zQUMtpcDlBrU0wRrKN7ypfvzYy3W4TZj0aYlBuX+AKEQKZWnb1uXI0RbeGeTKcIb+cZRe61qLsi0XusXJcH6Lamba2FYXzjFYqr0NSM3QoGgp6aohzT30xJb9IOzsEv65QCxB9/FftE1GBpKiySlDrkIo= X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(185117386973197)(275809806118684); X-MS-Exchange-SenderADCheck: 1 X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(8211001083)(6040522)(2401047)(5005006)(8121501046)(3231355)(944501410)(52105095)(10201501046)(3002001)(93006095)(93001095)(6055026)(149027)(150027)(6041310)(20161123564045)(20161123558120)(20161123560045)(20161123562045)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(201708071742011)(7699050); SRVR:AM0PR04MB4673; BCL:0; PCL:0; RULEID:; SRVR:AM0PR04MB4673; X-Forefront-PRVS: 0798146F16 X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10009020)(136003)(396003)(346002)(366004)(376002)(39860400002)(199004)(189003)(16526019)(48376002)(186003)(1076002)(3846002)(5660300001)(486006)(6506007)(386003)(16586007)(316002)(36756003)(14444005)(44832011)(5009440100003)(52116002)(6116002)(2616005)(76176011)(446003)(51416003)(11346002)(956004)(476003)(6512007)(47776003)(106356001)(25786009)(50226002)(2906002)(68736007)(105586002)(81156014)(81166006)(7736002)(6666003)(305945005)(8676002)(8936002)(4326008)(86362001)(97736004)(6486002)(478600001)(50466002)(66066001)(26005)(53936002)(110426005); DIR:OUT; SFP:1101; SCL:1; SRVR:AM0PR04MB4673; H:Tophie.ap.freescale.net; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; A:1; MX:1; Received-SPF: None (protection.outlook.com: nxp.com does not designate permitted sender hosts) X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; AM0PR04MB4673; 23:7bU5Ev9bjNRjmUK4LvrIPL1UdHlKq8yjw2zt+SkNE?= WEC9+Tc8V2n1Ovb+FWUx0Q6mZ2oeFWhAQsVa1LcwBBmIxk3xKCaaaFXDAjjWnYNUO8AkHvC7VP7vx2S4/J9Sg4AcjzJhbw0mnYpVXxK9pFd4Yv7jRqzOVA1RoVw1GFJ4/roE3zhKyzhVfdnxawbqNoK4A1pSZTq/PengHRFzm3OqzU5BV0TuPUF7NTO5Jrsxb0NhULMtZ9EpYOSI1aTf/SDHrItlcppIMDT4oFR9gMx9IOYKwXkRq8PIVMQ9xDvcCb4liHx/oaYxz9LO9KS8xhp5pUuOQRh6JUMdXql6z06oY2XtKSpVCliLwdulLy3JVg5BPi/fE93pVFhz7/ritFjw3Q38FKb1D3FQ2eWx6DDKTW9JsEsf+I+H+p7nfDwXZh3Va+Ushg70/KrAQwfcmCMfvqh7Di7j7FVz2GTyInbCOvax7Z812+GkuzVv7r8VAAmG3TEyhojdiXPRXXsWtr4+BDJQ7bbSaVvDEOyi1JHpYVycUT5V9Xr3hUTbG90C8fswUhCNtc0rtVksnYkecoCN6EG1vVPrsKi+0hSP/wtl9EEFIsP/kmiETOs8WMLCtCSYlbGvuVS5ynttve4aoc0jA3R5Aja7RK8E0megngEeq/S1PjHR/FmPQ7WQRensPmJI3ZWuVvGAhxUIb6KAreFwlCHl1iMfcU3Gyisyq0EogpsyxtuBM1jdWARzdP9CgnXAdIUh7UgjcZ6wMhWFjeyz36Pl6aqd6ZQo7PgCRYRbgzoL1yuayc0m2f8UrvuoAh19cpHOLcjER3QEJDlfUIm5BWASYvPuppDkDMs/AXP/Hf/DhTdsSnw8js9h9IdhUX49lYRObH5uskKNNsVNU+J1EIsCzb1rJbeKFNf0olKGvwxwxJ3t12lyGLqV/JmyWGSFhKQkYWtfm6rYi2kxvz8AeRTMevBz/ivQ/x4gfzAmw4OKsltbhtyBAMFdIzZS1OVTq2tBSJba03pXdeF1BLzAfTeRzxKp2wxlB3hSvFoE4eT1ABWqGaeDjrKk1UPNf9hBrE6XWr6q3R+1g5JIz4kf5b5dKxvRMwoLX/Cj3ALtNN2Rgil8Rl8wMgk0zmVhQBA0gMSE6AtVJynNEF60mHy+r1V/6n9uIo8e7H9215KwibzU8qQmNXCSCper4x3/2Ye48t5tXu3OJX6n6Ndne+tj1vkmWva1obzO+89c2Oh6+NcL6Uxkb6HCSa28EK64IINPM1RfsWET/ATn1htP2sz X-Microsoft-Antispam-Message-Info: t8MsOm8xnF6spnHwvsNOreGLrrhof4ybegcQEozp6n8RhUnewO5qQB51R8h1xRtPPhKytQB9XVXEDOWp4QAtRXC98KSHOjvhM9eNWX0JIJx1Xh3cQoe3W8V2mLqq7H1HBc/IdtXMKXiPmaVX4WuJs8gPjqTVFE++6X/4cr+1XT9tKZxzBPNZpOHvlbh7RP/hHoi3adEbKbEjNQvTz1p+da99S2dCMzCDXNJhNsEoOo4tm4vFH9y/PeiS8e2Z6++Z5GnlbJSVYyUthsFVZD/RHEHVZg7E+d7OvHR/TYgpvb6Sy+PgJXg4/wzGcv+jwzwaLxwiyMITnzw0hCJaaXFe324fknMzzBPp0XxFgM7xpvg= X-Microsoft-Exchange-Diagnostics: 1; AM0PR04MB4673; 6:qQGEc4IQ/gQvw7hj5ku92BI/FSE67qHwTfqrUfeNqqOoCcAcTZMFx87tFJcV6UOPfT02LL8KblFnn6OBFOGyG6V6Kz3vWAHDJUVPe8wzHJgIkHC0+v5uancXrGObkYVVgM3fGsOpPzQyTZ5CnHBa33PKVaS8agWksqomyam0uSkpURzj9auac03FMKMXZppWEfUf91cAkqHQCKz2qa+qLHLi/8PQVgDnsuB0OnJ/aMqjGlVRjbTeRTY6q0aEtMX74RgTClhybnTepHlPjM3bfrgpKxtFqEqryo+ixZ335mUgC7s8ioZDbwaaIhLNFmAj9hZvBUUpoF2LJ5sP4oGzwMT6UmZcqaEzGSsZr87cDYgyTpvPW99auiZJVx2dqu//wUEza0E4Wj5PRM0y5ruFCbhdF43TcxdWr6DiOBEc6eoTQGdic1+YjCA1RKdAfntzvVpT79LDH/BzvM5IgJdLsw==; 5:ICMdqnk4bFt50Ioxp1At8kWw6gh8SrKhfSibsJr5QrRhgFctEe+s9aqSkZyPBj3+6vCHjkSPj7jWsHTBSE9fIqFcV85i3SN4XATNyIAcvcZozqOCwMPPJ1WCmP6YGIxZ1TSDcD0QdWlxnz120Ujtn9FGooE/rfwEHE+igw0kuGc=; 7:U9dpk6VF564uTKceWwE1sDs1PawMOobClkpt9WCgWgv0wkwa8v7qhqDGAwZJl/G6NlqPgvMWZxpyORSfadLejVtrR/yvt/4oYExX/SunUuGMwSBoyiOVLi6y/lD07WxLOIhoGI1QdOorM3MyoS98kaVQ8yaP8WbAeV404Y52HLLRW4/pdVv6tA4bHRWqU6072dByWr8LhyOCxvQf/gTixDo06j+7Dp2JopsYiU2NRVlzzytRxZG9cjP9+AoLtcl5 SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-OriginatorOrg: nxp.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 17 Sep 2018 10:37:46.9612 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 5d303685-9330-4624-b618-08d61c899c3e X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 686ea1d3-bc2b-4c6f-a92c-d99c5c301635 X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM0PR04MB4673 Subject: [dpdk-dev] [PATCH 01/11] bus/fslmc: upgrade mc FW APIs to 10.10.0 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" From: Hemant Agrawal Signed-off-by: Hemant Agrawal --- drivers/bus/fslmc/mc/dpbp.c | 10 ++++++++++ drivers/bus/fslmc/mc/dpci.c | 25 +++++++++++++++++++++++++ drivers/bus/fslmc/mc/dpio.c | 9 +++++++++ drivers/bus/fslmc/mc/fsl_dpbp.h | 1 + drivers/bus/fslmc/mc/fsl_dpbp_cmd.h | 16 +++++++++------- drivers/bus/fslmc/mc/fsl_dpci.h | 10 +++++++++- drivers/bus/fslmc/mc/fsl_dpci_cmd.h | 4 +++- drivers/bus/fslmc/mc/fsl_dpmng.h | 2 +- 8 files changed, 67 insertions(+), 10 deletions(-) -- 2.17.1 diff --git a/drivers/bus/fslmc/mc/dpbp.c b/drivers/bus/fslmc/mc/dpbp.c index 0215d22da..d9103409c 100644 --- a/drivers/bus/fslmc/mc/dpbp.c +++ b/drivers/bus/fslmc/mc/dpbp.c @@ -248,6 +248,16 @@ int dpbp_reset(struct fsl_mc_io *mc_io, /* send command to mc*/ return mc_send_command(mc_io, &cmd); } +/** + * dpbp_get_attributes - Retrieve DPBP attributes. + * + * @mc_io: Pointer to MC portal's I/O object + * @cmd_flags: Command flags; one or more of 'MC_CMD_FLAG_' + * @token: Token of DPBP object + * @attr: Returned object's attributes + * + * Return: '0' on Success; Error code otherwise. + */ int dpbp_get_attributes(struct fsl_mc_io *mc_io, uint32_t cmd_flags, uint16_t token, diff --git a/drivers/bus/fslmc/mc/dpci.c b/drivers/bus/fslmc/mc/dpci.c index ff366bfa9..ab5a123dc 100644 --- a/drivers/bus/fslmc/mc/dpci.c +++ b/drivers/bus/fslmc/mc/dpci.c @@ -265,6 +265,15 @@ int dpci_reset(struct fsl_mc_io *mc_io, return mc_send_command(mc_io, &cmd); } +/** + * dpci_get_attributes() - Retrieve DPCI attributes. + * @mc_io: Pointer to MC portal's I/O object + * @cmd_flags: Command flags; one or more of 'MC_CMD_FLAG_' + * @token: Token of DPCI object + * @attr: Returned object's attributes + * + * Return: '0' on Success; Error code otherwise. + */ int dpci_get_attributes(struct fsl_mc_io *mc_io, uint32_t cmd_flags, uint16_t token, @@ -292,6 +301,19 @@ int dpci_get_attributes(struct fsl_mc_io *mc_io, return 0; } +/** + * dpci_set_rx_queue() - Set Rx queue configuration + * @mc_io: Pointer to MC portal's I/O object + * @cmd_flags: Command flags; one or more of 'MC_CMD_FLAG_' + * @token: Token of DPCI object + * @priority: Select the queue relative to number of + * priorities configured at DPCI creation; use + * DPCI_ALL_QUEUES to configure all Rx queues + * identically. + * @cfg: Rx queue configuration + * + * Return: '0' on Success; Error code otherwise. + */ int dpci_set_rx_queue(struct fsl_mc_io *mc_io, uint32_t cmd_flags, uint16_t token, @@ -314,6 +336,9 @@ int dpci_set_rx_queue(struct fsl_mc_io *mc_io, dpci_set_field(cmd_params->dest_type, DEST_TYPE, cfg->dest_cfg.dest_type); + dpci_set_field(cmd_params->dest_type, + ORDER_PRESERVATION, + cfg->order_preservation_en); /* send command to mc*/ return mc_send_command(mc_io, &cmd); diff --git a/drivers/bus/fslmc/mc/dpio.c b/drivers/bus/fslmc/mc/dpio.c index 966277cc6..a3382ed14 100644 --- a/drivers/bus/fslmc/mc/dpio.c +++ b/drivers/bus/fslmc/mc/dpio.c @@ -268,6 +268,15 @@ int dpio_reset(struct fsl_mc_io *mc_io, return mc_send_command(mc_io, &cmd); } +/** + * dpio_get_attributes() - Retrieve DPIO attributes + * @mc_io: Pointer to MC portal's I/O object + * @cmd_flags: Command flags; one or more of 'MC_CMD_FLAG_' + * @token: Token of DPIO object + * @attr: Returned object's attributes + * + * Return: '0' on Success; Error code otherwise + */ int dpio_get_attributes(struct fsl_mc_io *mc_io, uint32_t cmd_flags, uint16_t token, diff --git a/drivers/bus/fslmc/mc/fsl_dpbp.h b/drivers/bus/fslmc/mc/fsl_dpbp.h index 111836261..9d405b42c 100644 --- a/drivers/bus/fslmc/mc/fsl_dpbp.h +++ b/drivers/bus/fslmc/mc/fsl_dpbp.h @@ -82,6 +82,7 @@ int dpbp_get_attributes(struct fsl_mc_io *mc_io, /** * BPSCN write will attempt to allocate into a cache (coherent write) */ +#define DPBP_NOTIF_OPT_COHERENT_WRITE 0x00000001 int dpbp_get_api_version(struct fsl_mc_io *mc_io, uint32_t cmd_flags, uint16_t *major_ver, diff --git a/drivers/bus/fslmc/mc/fsl_dpbp_cmd.h b/drivers/bus/fslmc/mc/fsl_dpbp_cmd.h index 18402cedf..55c9fc9b4 100644 --- a/drivers/bus/fslmc/mc/fsl_dpbp_cmd.h +++ b/drivers/bus/fslmc/mc/fsl_dpbp_cmd.h @@ -9,13 +9,15 @@ /* DPBP Version */ #define DPBP_VER_MAJOR 3 -#define DPBP_VER_MINOR 3 +#define DPBP_VER_MINOR 4 /* Command versioning */ #define DPBP_CMD_BASE_VERSION 1 +#define DPBP_CMD_VERSION_2 2 #define DPBP_CMD_ID_OFFSET 4 #define DPBP_CMD(id) ((id << DPBP_CMD_ID_OFFSET) | DPBP_CMD_BASE_VERSION) +#define DPBP_CMD_V2(id) ((id << DPBP_CMD_ID_OFFSET) | DPBP_CMD_VERSION_2) /* Command IDs */ #define DPBP_CMDID_CLOSE DPBP_CMD(0x800) @@ -37,8 +39,8 @@ #define DPBP_CMDID_GET_IRQ_STATUS DPBP_CMD(0x016) #define DPBP_CMDID_CLEAR_IRQ_STATUS DPBP_CMD(0x017) -#define DPBP_CMDID_SET_NOTIFICATIONS DPBP_CMD(0x1b0) -#define DPBP_CMDID_GET_NOTIFICATIONS DPBP_CMD(0x1b1) +#define DPBP_CMDID_SET_NOTIFICATIONS DPBP_CMD_V2(0x1b0) +#define DPBP_CMDID_GET_NOTIFICATIONS DPBP_CMD_V2(0x1b1) #define DPBP_CMDID_GET_FREE_BUFFERS_NUM DPBP_CMD(0x1b2) @@ -68,8 +70,8 @@ struct dpbp_cmd_set_notifications { uint32_t depletion_exit; uint32_t surplus_entry; uint32_t surplus_exit; - uint16_t options; - uint16_t pad[3]; + uint32_t options; + uint16_t pad[2]; uint64_t message_ctx; uint64_t message_iova; }; @@ -79,8 +81,8 @@ struct dpbp_rsp_get_notifications { uint32_t depletion_exit; uint32_t surplus_entry; uint32_t surplus_exit; - uint16_t options; - uint16_t pad[3]; + uint32_t options; + uint16_t pad[2]; uint64_t message_ctx; uint64_t message_iova; }; diff --git a/drivers/bus/fslmc/mc/fsl_dpci.h b/drivers/bus/fslmc/mc/fsl_dpci.h index f69ed3f33..04ee93e66 100644 --- a/drivers/bus/fslmc/mc/fsl_dpci.h +++ b/drivers/bus/fslmc/mc/fsl_dpci.h @@ -17,7 +17,7 @@ struct fsl_mc_io; /** * Maximum number of Tx/Rx priorities per DPCI object */ -#define DPCI_PRIO_NUM 2 +#define DPCI_PRIO_NUM 4 /** * Indicates an invalid frame queue @@ -153,6 +153,11 @@ struct dpci_dest_cfg { */ #define DPCI_QUEUE_OPT_DEST 0x00000002 +/** + * Set the queue to hold active mode. + */ +#define DPCI_QUEUE_OPT_HOLD_ACTIVE 0x00000004 + /** * struct dpci_rx_queue_cfg - Structure representing RX queue configuration * @options: Flags representing the suggested modifications to the queue; @@ -163,11 +168,14 @@ struct dpci_dest_cfg { * 'options' * @dest_cfg: Queue destination parameters; * valid only if 'DPCI_QUEUE_OPT_DEST' is contained in 'options' + * @order_preservation_en: order preservation configuration for the rx queue + * valid only if 'DPCI_QUEUE_OPT_HOLD_ACTIVE' is contained in 'options' */ struct dpci_rx_queue_cfg { uint32_t options; uint64_t user_ctx; struct dpci_dest_cfg dest_cfg; + int order_preservation_en; }; int dpci_set_rx_queue(struct fsl_mc_io *mc_io, diff --git a/drivers/bus/fslmc/mc/fsl_dpci_cmd.h b/drivers/bus/fslmc/mc/fsl_dpci_cmd.h index 634248ac0..94e253347 100644 --- a/drivers/bus/fslmc/mc/fsl_dpci_cmd.h +++ b/drivers/bus/fslmc/mc/fsl_dpci_cmd.h @@ -8,7 +8,7 @@ /* DPCI Version */ #define DPCI_VER_MAJOR 3 -#define DPCI_VER_MINOR 3 +#define DPCI_VER_MINOR 4 #define DPCI_CMD_BASE_VERSION 1 #define DPCI_CMD_BASE_VERSION_V2 2 @@ -90,6 +90,8 @@ struct dpci_rsp_get_link_state { #define DPCI_DEST_TYPE_SHIFT 0 #define DPCI_DEST_TYPE_SIZE 4 +#define DPCI_ORDER_PRESERVATION_SHIFT 4 +#define DPCI_ORDER_PRESERVATION_SIZE 1 struct dpci_cmd_set_rx_queue { uint32_t dest_id; diff --git a/drivers/bus/fslmc/mc/fsl_dpmng.h b/drivers/bus/fslmc/mc/fsl_dpmng.h index afaf9b711..8559bef87 100644 --- a/drivers/bus/fslmc/mc/fsl_dpmng.h +++ b/drivers/bus/fslmc/mc/fsl_dpmng.h @@ -18,7 +18,7 @@ struct fsl_mc_io; * Management Complex firmware version information */ #define MC_VER_MAJOR 10 -#define MC_VER_MINOR 3 +#define MC_VER_MINOR 10 /** * struct mc_version