From patchwork Fri Jan 11 11:58:19 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Shreyansh Jain X-Patchwork-Id: 49687 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 B8FCD1BA56; Fri, 11 Jan 2019 12:58:22 +0100 (CET) Received: from EUR02-AM5-obe.outbound.protection.outlook.com (mail-eopbgr00049.outbound.protection.outlook.com [40.107.0.49]) by dpdk.org (Postfix) with ESMTP id 9EC621BA9A for ; Fri, 11 Jan 2019 12:58:21 +0100 (CET) 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=OBJWLXiD8twuKIB85solppzG0bxZdLEnvtTQped+mn4=; b=to0K895w7m1bZZvKbTippDyh/6NdfGsgcvUc7NdNXUKBsgelAWYFzU5jryIyYVTvQgZEddcerYTGF3mDtx656OP2NZ/NTvKXKOP/9KT+WIXtlWf2nEPP3Wi9qz07CzU0zEetrG5xbKWwZlnHHsDw1NMOUxyiGsmIGWn8jCQMzGY= Received: from VI1PR04MB4688.eurprd04.prod.outlook.com (20.177.56.80) by VI1PR04MB6173.eurprd04.prod.outlook.com (20.179.27.202) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.1495.11; Fri, 11 Jan 2019 11:58:20 +0000 Received: from VI1PR04MB4688.eurprd04.prod.outlook.com ([fe80::b1eb:7e7e:7b90:7b4]) by VI1PR04MB4688.eurprd04.prod.outlook.com ([fe80::b1eb:7e7e:7b90:7b4%4]) with mapi id 15.20.1516.016; Fri, 11 Jan 2019 11:58:20 +0000 From: Shreyansh Jain To: "dev@dpdk.org" CC: "ferruh.yigit@intel.com" , Hemant Agrawal , Youri Querry , Nipun Gupta Thread-Topic: [PATCH v2 09/20] bus/fslmc: upgrade to latest qbman library Thread-Index: AQHUqaTxoOFOgWVjg0+elI/tOmTBxg== Date: Fri, 11 Jan 2019 11:58:19 +0000 Message-ID: <20190111115712.6482-10-shreyansh.jain@nxp.com> References: <20181227062233.30781-1-hemant.agrawal@nxp.com> <20190111115712.6482-1-shreyansh.jain@nxp.com> In-Reply-To: <20190111115712.6482-1-shreyansh.jain@nxp.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-originating-ip: [14.143.254.130] x-mailer: git-send-email 2.17.1 x-clientproxiedby: TY2PR01CA0030.jpnprd01.prod.outlook.com (2603:1096:404:ce::18) To VI1PR04MB4688.eurprd04.prod.outlook.com (2603:10a6:803:71::16) authentication-results: spf=none (sender IP is ) smtp.mailfrom=shreyansh.jain@nxp.com; x-ms-exchange-messagesentrepresentingtype: 1 x-ms-publictraffictype: Email x-microsoft-exchange-diagnostics: 1; VI1PR04MB6173; 6:98O2m1vtrUjfkFq46V6U3p9iTmRQ6cegCrwSjkaFw01RX6h2bNO2zullBNEHnsOLnb9Ath0RexTmehBoip3xke8lXA4b7I6B3sgJI5dOp43OF8FZLW4rnjTb4WunO+eg+PgpSnvbSV7ruDcyl5d2E7sRNIJv1arSqvNi7wvYyFBQoy0yPZyJnaKgsaP0loyKsFDmhP1X30V1Pj8B1B/1ObIPct3XJA3mZHNOAE1feg6qtXf5yu/aoED2znrkftxexuyipJ7mBx7r6ZqrNEJj0VkQcdzKCe8YOq/E+oFpGJCELk25J8vYGfd8Lm2iTt+eS5NGoA7qy8iWwt4oCVP1uoZe1vEL2hmLjlt94yI+cncMyO1AH578QOBCekgYPWok2IlJIKFNiARrg89PtvntCx/sfPzKclQUWughYw0eg33N4BVWPhYAKzQibOI1vmTviHt3Sguqan25YN5o+hyEXA==; 5:El5Tgki9tLplfUM8NnvGqmLEiOv2N2b658pkYPa8tjpEXjXr0mlu3Ls+UP7BEwXgp23jDLP1ntXatKnSQSfaurfofJ+zFZmBfIfh0Gch/OngoXOT+f7cgCj4j+gvdmoce05QIuy17LLoPqdrC5yXM9P6CAZpO06pVh5G96Aj9GAKbx1PlrmaaNzTGOwyAMx9hKLYrjpGFNtFkTC0uk9YEw==; 7:ElQO2WTJkAQRN2cSOZhxso5GzGA2k9yZP3u0R6k2UipMAsVb3YewfV54FSUo+sc5deQ3UZ/RAAZ0EVyNrUZUdaSYnysZ61CrStcE+qf+Z6YnaSBdUpCcS2RrGPo1xWONXexG9wDVzoMc/c+pfNO1dw== x-ms-office365-filtering-correlation-id: 426f23ed-d412-4901-14cd-08d677bc1420 x-ms-office365-filtering-ht: Tenant x-microsoft-antispam: BCL:0; PCL:0; RULEID:(2390118)(7020095)(4652040)(8989299)(4534185)(7168020)(4627221)(201703031133081)(201702281549075)(8990200)(5600109)(711020)(4618075)(2017052603328)(7153060)(7193020); SRVR:VI1PR04MB6173; x-ms-traffictypediagnostic: VI1PR04MB6173: x-microsoft-antispam-prvs: x-forefront-prvs: 09144DB0F7 x-forefront-antispam-report: SFV:NSPM; SFS:(10009020)(376002)(346002)(366004)(136003)(39860400002)(396003)(199004)(189003)(6512007)(25786009)(1076003)(26005)(68736007)(3846002)(66066001)(6116002)(11346002)(6916009)(6486002)(486006)(54906003)(5660300001)(6436002)(2906002)(53936002)(36756003)(44832011)(316002)(14454004)(256004)(106356001)(446003)(105586002)(97736004)(102836004)(476003)(2351001)(2616005)(6506007)(50226002)(386003)(99286004)(86362001)(478600001)(52116002)(76176011)(55236004)(71200400001)(71190400001)(78486014)(81166006)(186003)(14444005)(2501003)(8676002)(1730700003)(8936002)(4326008)(5640700003)(81156014)(7736002)(305945005); DIR:OUT; SFP:1101; SCL:1; SRVR:VI1PR04MB6173; H:VI1PR04MB4688.eurprd04.prod.outlook.com; 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-ms-exchange-senderadcheck: 1 x-microsoft-antispam-message-info: sF2D1qFUuU40bfbn7K7QQbDTbrt/kyVaMHzr0Fdm8dXcgEegg0NRO86RUNGVQyT/ycPlPPyZFlV9UGZpErDCAVHKFuf8E9KoPQpDkQbopSw8FUOYJAboqaDhXZuhKAS0VdcWDnOLxKuQVJknckQVAD9/oh8+RSOz3ppUvfEcwfJODNckvneoFQ5ZTsNLJp1eoHiGy/ECB0quo/2VGmc5MNrItLk8Y544KBn++WAOBKoP0P177w9YezUfXoPf+uGQVI0l2TG0JG03otFm0Ne1WdjGbeXYm1IWZUti34OizVW6CbixIL2ONg7iDtEFjV7zMGo51M0YZxvCoMbqQbFK0s2B+zp1i7dX2SVgkD9uBoYnXi6JjpZ2EgW3DVXSmKXz0dV9jh+0oluDdo+sRk7ys8ynJHiLqWQI+mIngclnt3U= spamdiagnosticoutput: 1:99 spamdiagnosticmetadata: NSPM MIME-Version: 1.0 X-OriginatorOrg: nxp.com X-MS-Exchange-CrossTenant-Network-Message-Id: 426f23ed-d412-4901-14cd-08d677bc1420 X-MS-Exchange-CrossTenant-originalarrivaltime: 11 Jan 2019 11:58:16.3995 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 686ea1d3-bc2b-4c6f-a92c-d99c5c301635 X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR04MB6173 Subject: [dpdk-dev] [PATCH v2 09/20] bus/fslmc: upgrade to latest qbman library 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 This patch upgrades and sync the dpdk based qbman code with new version of qbman flib. Signed-off-by: Youri Querry Signed-off-by: Nipun Gupta Signed-off-by: Hemant Agrawal --- drivers/bus/fslmc/qbman/qbman_portal.c | 8 ++++---- drivers/bus/fslmc/qbman/qbman_sys.h | 17 +++++++++++------ 2 files changed, 15 insertions(+), 10 deletions(-) diff --git a/drivers/bus/fslmc/qbman/qbman_portal.c b/drivers/bus/fslmc/qbman/qbman_portal.c index bbea37efc..2f572a08b 100644 --- a/drivers/bus/fslmc/qbman/qbman_portal.c +++ b/drivers/bus/fslmc/qbman/qbman_portal.c @@ -201,7 +201,7 @@ struct qbman_swp *qbman_swp_init(const struct qbman_swp_desc *d) p->vdq.valid_bit = QB_VALID_BIT; p->dqrr.valid_bit = QB_VALID_BIT; qman_version = p->desc.qman_version; - if ((qman_version & 0xFFFF0000) < QMAN_REV_4100) { + if ((qman_version & QMAN_REV_MASK) < QMAN_REV_4100) { p->dqrr.dqrr_size = 4; p->dqrr.reset_bug = 1; } else { @@ -1315,9 +1315,9 @@ const struct qbman_result *qbman_swp_dqrr_next_mem_back(struct qbman_swp *s) */ flags = p->dq.stat; response_verb = verb & QBMAN_RESPONSE_VERB_MASK; - if ((response_verb == QBMAN_RESULT_DQ) && - (flags & QBMAN_DQ_STAT_VOLATILE) && - (flags & QBMAN_DQ_STAT_EXPIRED)) + if ((response_verb == QBMAN_RESULT_DQ) + && (flags & QBMAN_DQ_STAT_VOLATILE) + && (flags & QBMAN_DQ_STAT_EXPIRED)) atomic_inc(&s->vdq.busy); return p; } diff --git a/drivers/bus/fslmc/qbman/qbman_sys.h b/drivers/bus/fslmc/qbman/qbman_sys.h index 0571097ab..e3bd1c5e6 100644 --- a/drivers/bus/fslmc/qbman/qbman_sys.h +++ b/drivers/bus/fslmc/qbman/qbman_sys.h @@ -387,6 +387,10 @@ static inline int qbman_swp_sys_init(struct qbman_swp_sys *s, { uint32_t reg; int i; + int cena_region_size = 4*1024; + + if ((d->qman_version & QMAN_REV_MASK) >= QMAN_REV_5000) + cena_region_size = 64*1024; #ifdef RTE_ARCH_64 uint8_t wn = CENA_WRITE_ENABLE; #else @@ -396,7 +400,8 @@ static inline int qbman_swp_sys_init(struct qbman_swp_sys *s, s->addr_cena = d->cena_bar; s->addr_cinh = d->cinh_bar; s->idx = (uint32_t)d->idx; - s->cena = malloc(64*1024); + s->cena = malloc(cena_region_size); + if (!s->cena) { pr_err("Could not allocate page for cena shadow\n"); return -1; @@ -412,12 +417,12 @@ static inline int qbman_swp_sys_init(struct qbman_swp_sys *s, QBMAN_BUG_ON(reg); #endif if ((d->qman_version & QMAN_REV_MASK) >= QMAN_REV_5000) - memset(s->addr_cena, 0, 64*1024); + memset(s->addr_cena, 0, cena_region_size); else { /* Invalidate the portal memory. * This ensures no stale cache lines */ - for (i = 0; i < 0x1000; i += 64) + for (i = 0; i < cena_region_size; i += 64) dccivac(s->addr_cena + i); } @@ -425,12 +430,12 @@ static inline int qbman_swp_sys_init(struct qbman_swp_sys *s, reg = qbman_set_swp_cfg(dqrr_size, wn, 0, 3, 2, 3, 1, 1, 1, 1, 1, 1); else { - if ((d->qman_version & QMAN_REV_MASK) < QMAN_REV_5000) + if ((d->qman_version & QMAN_REV_MASK) >= QMAN_REV_5000) reg = qbman_set_swp_cfg(dqrr_size, wn, - 1, 3, 2, 2, 1, 1, 1, 1, 1, 1); + 1, 3, 2, 0, 1, 1, 1, 1, 1, 1); else reg = qbman_set_swp_cfg(dqrr_size, wn, - 1, 3, 2, 0, 1, 1, 1, 1, 1, 1); + 1, 3, 2, 2, 1, 1, 1, 1, 1, 1); } if ((d->qman_version & QMAN_REV_MASK) >= QMAN_REV_5000) {