From patchwork Fri Mar 17 12:36:33 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Hemant Agrawal X-Patchwork-Id: 21851 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 [IPv6:::1]) by dpdk.org (Postfix) with ESMTP id 900D6CF90; Fri, 17 Mar 2017 13:44:40 +0100 (CET) Received: from NAM01-SN1-obe.outbound.protection.outlook.com (mail-sn1nam01on0089.outbound.protection.outlook.com [104.47.32.89]) by dpdk.org (Postfix) with ESMTP id 23DBACF7A for ; Fri, 17 Mar 2017 13:37:38 +0100 (CET) Received: from CY4PR03CA0002.namprd03.prod.outlook.com (10.168.162.12) by BN1PR03MB186.namprd03.prod.outlook.com (10.255.200.143) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P384) id 15.1.961.17; Fri, 17 Mar 2017 12:37:35 +0000 Received: from BY2FFO11FD015.protection.gbl (2a01:111:f400:7c0c::192) by CY4PR03CA0002.outlook.office365.com (2603:10b6:903:33::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id 15.1.977.11 via Frontend Transport; Fri, 17 Mar 2017 12:37:34 +0000 Authentication-Results: spf=fail (sender IP is 192.88.168.50) smtp.mailfrom=nxp.com; caviumnetworks.com; dkim=none (message not signed) header.d=none; caviumnetworks.com; dmarc=fail action=none header.from=nxp.com; Received-SPF: Fail (protection.outlook.com: domain of nxp.com does not designate 192.88.168.50 as permitted sender) receiver=protection.outlook.com; client-ip=192.88.168.50; helo=tx30smr01.am.freescale.net; Received: from tx30smr01.am.freescale.net (192.88.168.50) by BY2FFO11FD015.mail.protection.outlook.com (10.1.14.131) with Microsoft SMTP Server (version=TLS1_0, cipher=TLS_RSA_WITH_AES_256_CBC_SHA) id 15.1.977.7 via Frontend Transport; Fri, 17 Mar 2017 12:37:34 +0000 Received: from bf-netperf1.idc ([10.232.134.28]) by tx30smr01.am.freescale.net (8.14.3/8.14.0) with ESMTP id v2HCalI2023358; Fri, 17 Mar 2017 05:37:31 -0700 From: Hemant Agrawal To: CC: , , , , , Date: Fri, 17 Mar 2017 18:06:33 +0530 Message-ID: <1489754201-1027-15-git-send-email-hemant.agrawal@nxp.com> X-Mailer: git-send-email 1.9.1 In-Reply-To: <1489754201-1027-1-git-send-email-hemant.agrawal@nxp.com> References: <1489754201-1027-1-git-send-email-hemant.agrawal@nxp.com> X-EOPAttributedMessage: 0 X-Matching-Connectors: 131342278545126293; (91ab9b29-cfa4-454e-5278-08d120cd25b8); () X-Forefront-Antispam-Report: CIP:192.88.168.50; IPV:NLI; CTRY:US; EFV:NLI; SFV:NSPM; SFS:(10009020)(6009001)(336005)(39410400002)(39400400002)(39450400003)(39840400002)(39860400002)(39850400002)(39380400002)(2980300002)(1109001)(1110001)(339900001)(199003)(189002)(9170700003)(4326008)(5003940100001)(86362001)(77096006)(305945005)(53936002)(2950100002)(356003)(47776003)(8656002)(8676002)(81166006)(110136004)(81156014)(8936002)(50226002)(104016004)(105606002)(106466001)(2351001)(50986999)(5660300001)(6916009)(48376002)(54906002)(38730400002)(33646002)(189998001)(85426001)(2906002)(76176999)(50466002)(36756003); DIR:OUT; SFP:1101; SCL:1; SRVR:BN1PR03MB186; H:tx30smr01.am.freescale.net; FPR:; SPF:Fail; MLV:ovrnspm; A:1; MX:1; PTR:InfoDomainNonexistent; LANG:en; X-Microsoft-Exchange-Diagnostics: 1; BY2FFO11FD015; 1:N5KFQ9VgWWUffWSYwOHkasuJDpmEzXmtVjg9JZVWBIbx1dJWMB1eb1s4bH4Jd5H4+eUtsoV8iMMmyAi7AzKo2mJe1jjKKz9Rcukvqm5Zlx4NKDWUf77tjkrWHn+79T+9E93a/yNNYrdl9vmcp+UO+N2cJqaciB1TKs8frlco9WIMc7b8tQyNsUw1NKsg4tPwTSxI/11U9VOPFFw1MKYeauybmVGccMhl5Vid3gMQv+UX41Yd8P6O282Mm9YZs5/PWRO1Cr59xFe+kMopoL5zxQW8tMdB5JvYRWlEp6s10XFc8PNLHO6Few0WKyln8jPiu62v6By+gHMfZytdcI1dqUGs0/+MeREv5+GeRDHduyWwwmCiQ5fGQTTOrahY2h4pCOJqRyMMIps6h1Atj/N12GUhF+bqRdGG5amlVX7lBG6ghe72HtKI1Ix8LH/nLHtHPAdm7ZqsG18Hb6ta/5lCPY9TIveVadSTgKlJ4hyjwY93Ko64NhufPPb8yQ9XEyc+SS+4PM2jLEs853njoFRoVdfjeiL9J7sWo62QqE3IPEO90BQpqfEUHWrGy1uSZf/IdkyKuGrP86Sn3NeWy0CQXwIjojaTy2StR5E1cc83PoHDlEiMEFrU7zz5Z2WPiq183pNksckwXqNwt/i+2NmXwg== MIME-Version: 1.0 X-MS-Office365-Filtering-Correlation-Id: 770a7475-4c01-4ff3-c708-08d46d32630d X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(22001); SRVR:BN1PR03MB186; X-Microsoft-Exchange-Diagnostics: 1; BN1PR03MB186; 3:kDIEFECegwdZLE02Z8Uat/Sa/4TKAUOKf4pxJne4HloELJ7+pu+Srp/fqId8R+n5D0xGttkFoUNA9Jy8buC5DY63Y2owC7Od7+fMlu9FvNYottJoCn76QHMfZdtelmw9uqIzVdmKqEvsv4OQAhbq5MY/mpXcHhPGTFGV4d2HIDoVG1eaONtLRFNRWVMkwcqGpwoQTwKHaycTCwpISTpIkxG7CH0sCvex1UG41N1IJQYwtw0OyiP2q3/BJE+RlfwLS+V4OoUX5CoBaK2D6N7gEnf+KV1ToRboRmv9+IB5gXdFZ3lmxC4qMBHsefKsjfB89IcXlpeq2cAdh5Lm+OKM3vqE8rOJdcD0YRi2RT1yKP1mpojbSvc4nOlhZEa3+E9Z; 25:86QOy35tAj7STbSOgCoq6029wHV6TJA84Il0lMmyzlx0v0ZGARaiWJeiFtp//JrIoOxF+b1xkdP8l2ztXe5PUZ1bREYfPrlUluzxu4nEJl45tz10M3jKTTjdG3d5PbaO2tBSRiAW6WCYs8QuQnZC3B3bnHDO5LFB04TCpZXjKkDfiYNZllWPfv4IiyLDkB4Tv5rpLUu5BNZLL1Pk5+MefIwqbpT4X/QSIZDmXSOGjXROA4T0uwWpBEOR5xoNlPzfL3RCiCVJCrHNfqfFNMI7HzPI+TF7r9Hjnvq6rAOksbYXbex28SYNGA/lEMmEoeUmtwHhuJb33E78OrTJ1Tzv2FMR9jDW085IOL3FjLye/Fa06646Qu2d2QfLqKLZXibGqtmiJKeCUtSFkmulYgkjNQ48lkNeESMhYETT4zM3BDKpYCpZ3Icobz/sFIzquep6w205tGkO+KXr9I5XeBC+kw== X-Microsoft-Exchange-Diagnostics: 1; BN1PR03MB186; 31:Rwb/S8j1uM7vlz3q4iW4NNSRz2/VNv28WJDI0eEKfpkhZHRk4izlz1AwQDXEkHzSVeBxnCkpWZ0QclfpfggfprPc4SOyO5B6Yjajt54prL1wvkhEHAKG3VZPbnnfDLqI2/CKT8Yt4zp5kh7UA2XNOIWRgcG2fPenLsUWPQ9A+dZIWWYJocDYi1CMRsRP5W4WRN4VQFiFdoEm1YuSPZm436B2sjl+MG9lp7dg36Qdo1T8agW8qZetsjSuseinUJi0e23kkLcUxDVSntuKEqLXox1UTBnnLC556V8JYStssrA= X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(185117386973197)(275809806118684); X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(6095060)(601004)(2401047)(13023025)(13024025)(13018025)(13017025)(8121501046)(13015025)(5005006)(3002001)(10201501046)(6055026)(6096035)(20161123556025)(20161123559025)(20161123565025)(20161123563025)(20161123561025); SRVR:BN1PR03MB186; BCL:0; PCL:0; RULEID:(400006); SRVR:BN1PR03MB186; X-Microsoft-Exchange-Diagnostics: 1; BN1PR03MB186; 4:NK8I50k5pmqqAbYuUM0xlgq1gAWPUuhLlYtlC0HnsDbDUnvOAQZUFWdW1LZ+lZ3Rmu6KNBN5KVwha5vs3xd8tsFzeHr/7dtkhWi5/YKU08VKg9jeZeKWr2e3CXKNK0oStYZG59NkZeGtqBvON09hTdUcQUvJSkKszfGHB3eCAUr8wCqc2UzyRklCTD8B09XF21Yv0dOj1bHaj9aoHT8KE6BDGT4Tv0SBvucyWz+UWsOe7tQeiRWGNrxyXdDoSZWmXCR/7BVh5nlLx9G+GFSoTUaLfSnZcvkf27REvoGRX8ZXDJTBq1KZKpkcERyMpOpdKtN6JVc1R/nCeuL0xs9cKc+z8psjMk3tSFQVJWfATdoCjHx5sQJtpcqdZlGmd5R2LF2ieSkqStvbRl2uw+IMU4LSEVOPYacxab7FXrV8HFFb9odE5d3yTBY51Y7QSWzbQM9KK5viFyT7jP8PjsT9cifGRlhVQFNCRvEa0sRQgy2HYTR9LwAmS4eKjiBk0/nhu6HVRMrlNRI1pKLj84+skwdBZpCCplHzppkWNtIP7J1CbCTCH+OU33V8us54HgqAQoiOyu+DyEyiVx7ff7YE7EEINiKM0rQSjIDtIGHEAGLML+dlaM1kvt0lnG/iIDhQS1LARzapg7Umzm+7Kv51liNY3ArEIqBhErzFwUC7lgAUYwOVc9p7vY0LBaaPmrBCA23lgFwRZPRDfxwdX1jzmIBOOtO9tNHUS3FxORKreGv1Gvb7Ey6cYFRzV5oFd/1Hd94Uw3LLyhN+4egNqgdH0w== X-Forefront-PRVS: 0249EFCB0B X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; BN1PR03MB186; 23:iMNoo6XV2cWfzuyuVqMFDTdC8taXKKiINq3DY3k16o?= mAhqAh8unXUPBFvqEOwGmLWiAKPWuQqptmr206bMyEygHsxBOnGLtBrgH4mUIUlpAZHMZwoz6z95/ryg2Hz7W8z0JouG6JLe/QyajxA/AloW9tNI5wtD6Nz4DFZlGv9Q+6C8fVrZ5odPj54aRDBnb0Rqofgknxhvdj2anjHPxEXxc0C6tQbZsdKgQdzcqacokUtxEpigBuLx6lfDkltaz5kC3wb98En0ucwU46b9/FzkhKpELQqsSeRZZblm4RRyUAk9/eK192wptuJjuUWXbOfESnrnYmYl9811jQEzSPGsarc+SvvKMN4b4B/R5vejZulNZR4Qv/vc03uwnl3dDict9oVGFvuUcKe/BgQH+esoBKJd+DCJShLMAK36NmIZntpQhh0K8sDgGnYHscG433AjXIzn70kF6992YuEezi/ZODcmJjfQzD4IElkjro2nIgVAAp5WqL7Olibw0e1caENgSAVl8JymvPgtm2p8H5oi/acold77lhok6sfQF4UrJjnha+eniQ9vIUKFxsYP65bCigwD0qmTQhRJSR/icHowpoEeiWUHPG4q3+jKcZ7IN3UqA8CyhYvdjagnDzxIK97+m8iNuGMUUPROvX0WSgAkZ42xhrStFu5T0OC6jTcAhCT3oAlBc5rvJ5rCuuSCPQ4GXfxu0il9GgVG/HdVzgKDlWz8ZuhTmT1udS4nX05rzuaUEKkDILY8qE8nO6OC+op+AkBWkabjimBSLs2BPzGMNv0dvG1LBLrCiwf1Ah25/gUAyCxY49UYXvO1s52m+0qIoypqGL2M4TFzZ8eyftgN66Ut/EDt5SxByAq2EWy8aW7aDCysEcxzlqdpcNWxp3ezUAI52+TI+7zHnQAzRK0qvMQREN8RaLXVBNJhMhg33xS6i+Cpem0/mTTIcC2ldA44tqXIKHJ0xY5JHth7dLcmtakXbk8fDBEtWzYfnTB2vdPcrcTmbPfMRa1fMoHAHoDP+EDhW2JttkTdmMFMKs1N0VzBoxWpXMb4dhZVtlRpewO6ZpgNJ5E9gCRNmAbYMNhvYmVBS/GRezYAVuvpp3CjB5UbTVxo+4So7Cfo842pmifyWQ2G05LZ9A1m1qSwIfWjmF14OFO1B0NNj4G7sIr/7dMzglHFtsRmQkpF1GoRSSyr11z+momofBjU5aOkcLeeBc6ycqtSxuv6q5+GqlBQ== X-Microsoft-Exchange-Diagnostics: 1; BN1PR03MB186; 6:xZxYAjvAitVZJeH6P6qeiZyot0+z7nD2eKqHOhqiRk4pyjYvcPSAdVR/cI5Xq5HTDo3Q0d342C47vdRhkRm7Hct+MWiwu4JoDOn5kdlG3z3GSI9Vq5PDXI1OI08rZVavEgLFFu7vbb2CYr47VpyDtw/P8oRlu+JZC6AVUGtWmV3qWDSBBk7JDfPdar9qSOv8CpcqrSQkgVo+7v0+6o11zRituAFfEH4prnBdxcPujuVRdQLvrPlF/VsGcNquaYnqwnpmkjqsP0RzHketHxX8itNuEIl3Cf10zARXEMEroBycQhPs7v1RdNHXWLjrYXiUgR9w8HzSAzbTERv//jbxVcnRv08OuIpz4213nzBXZD3Oln3ZjN2veT85TWx/czVyblG73VG/UuxgO2+WF3UDKXtnANUSl3PhBlWWQvEWo8M=; 5:/PdilYPf/EzjZ17OBc3OpaaEbr9tBwXA42/CWPCHdOjeZWq5xKuhn9SUFebPyp1zEwCzsmLSRyV+YtZv+jxsAjyolsLqaxveTia6pXhdw2gnfNHmBX2v8ax6KQBwOw/L82G5CKyL/xnd0nEg3tJ7u+5aZuRhhR8M9TiAlqwI+NoQCHyPpZBKR/e+eq2Tj6LT; 24:ebdh+TsgCL2p0bL1yI6uS6IUTBu+fuOwOG6QAquynHCIKmDj1/SlM6OiuguF3fiYaHVDuR1MI33JeXPM//NsV9Ezd3h+38p0KYig3gU7vyw= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; BN1PR03MB186; 7:Hl3gFkIf7BMU21c7a5cJ0VK/z+cB5GLw3gCEdf2Q8yi12nMgO9uClG6tOAwE+LxRpseVg9zabrVZWiIQsKRiyZbxy5oqhCR8oNblzfQbmwPwGHdT0rPb6pCIc+N2heuq7ZkR9ZJ7/Z9/P3i7ggM951B4UaE2GTurrordjT6gzVXlKK9S99YqE7yueAH4l6TBLWmrHPjcR2iqq7S9r60pop0rNHXy+ZHpI9OgoWCk0XBQjKoKBuT2X6sUaCPpgLhXBerpe+8WTJ1ETwizSHgDXjnKQA8Y56EuJNw5Vq1X1IpqZ1uI6xEhfAPzT5oun8VzRC0BZjCOWhK2TQjxRMDx+A== X-MS-Exchange-CrossTenant-OriginalArrivalTime: 17 Mar 2017 12:37:34.1850 (UTC) X-MS-Exchange-CrossTenant-Id: 5afe0b00-7697-4969-b663-5eab37d5f47e X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=5afe0b00-7697-4969-b663-5eab37d5f47e; Ip=[192.88.168.50]; Helo=[tx30smr01.am.freescale.net] X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN1PR03MB186 Subject: [dpdk-dev] [PATCH v1 14/22] bus/fslmc: affine dpio to crypto threads 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" Signed-off-by: Hemant Agrawal --- drivers/bus/fslmc/portal/dpaa2_hw_dpio.c | 45 +++++++++++++++++++++++++++++ drivers/bus/fslmc/portal/dpaa2_hw_dpio.h | 3 ++ drivers/bus/fslmc/rte_bus_fslmc_version.map | 1 + 3 files changed, 49 insertions(+) diff --git a/drivers/bus/fslmc/portal/dpaa2_hw_dpio.c b/drivers/bus/fslmc/portal/dpaa2_hw_dpio.c index dd6de4c..bd1f643 100644 --- a/drivers/bus/fslmc/portal/dpaa2_hw_dpio.c +++ b/drivers/bus/fslmc/portal/dpaa2_hw_dpio.c @@ -276,6 +276,51 @@ static inline struct dpaa2_dpio_dev *dpaa2_get_qbman_swp(void) } int +dpaa2_affine_qbman_swp_sec(void) +{ + unsigned int lcore_id = rte_lcore_id(); + uint64_t tid = syscall(SYS_gettid); + + if (lcore_id == LCORE_ID_ANY) + lcore_id = rte_get_master_lcore(); + /* if the core id is not supported */ + else if (lcore_id >= RTE_MAX_LCORE) + return -1; + + if (dpaa2_io_portal[lcore_id].sec_dpio_dev) { + PMD_DRV_LOG(INFO, "DPAA Portal=0x%x (%d) is being shared" + " between thread %lu and current %lu", + dpaa2_io_portal[lcore_id].sec_dpio_dev, + dpaa2_io_portal[lcore_id].sec_dpio_dev->index, + dpaa2_io_portal[lcore_id].sec_tid, + tid); + RTE_PER_LCORE(_dpaa2_io).sec_dpio_dev + = dpaa2_io_portal[lcore_id].sec_dpio_dev; + rte_atomic16_inc(&dpaa2_io_portal + [lcore_id].sec_dpio_dev->ref_count); + dpaa2_io_portal[lcore_id].sec_tid = tid; + + PMD_DRV_LOG(DEBUG, "Old Portal=0x%x (%d) affined thread - %lu", + dpaa2_io_portal[lcore_id].sec_dpio_dev, + dpaa2_io_portal[lcore_id].sec_dpio_dev->index, + tid); + return 0; + } + + /* Populate the dpaa2_io_portal structure */ + dpaa2_io_portal[lcore_id].sec_dpio_dev = dpaa2_get_qbman_swp(); + + if (dpaa2_io_portal[lcore_id].sec_dpio_dev) { + RTE_PER_LCORE(_dpaa2_io).sec_dpio_dev + = dpaa2_io_portal[lcore_id].sec_dpio_dev; + dpaa2_io_portal[lcore_id].sec_tid = tid; + return 0; + } else { + return -1; + } +} + +int dpaa2_create_dpio_device(struct fslmc_vfio_device *vdev, struct vfio_device_info *obj_info, int object_id) diff --git a/drivers/bus/fslmc/portal/dpaa2_hw_dpio.h b/drivers/bus/fslmc/portal/dpaa2_hw_dpio.h index 682f3fa..b1a1b8f 100644 --- a/drivers/bus/fslmc/portal/dpaa2_hw_dpio.h +++ b/drivers/bus/fslmc/portal/dpaa2_hw_dpio.h @@ -56,5 +56,8 @@ struct dpaa2_io_portal_t { /* Affine a DPIO portal to current processing thread */ int dpaa2_affine_qbman_swp(void); +/* Affine additional DPIO portal to current crypto processing thread */ +int dpaa2_affine_qbman_swp_sec(void); + #endif /* _DPAA2_HW_DPIO_H_ */ diff --git a/drivers/bus/fslmc/rte_bus_fslmc_version.map b/drivers/bus/fslmc/rte_bus_fslmc_version.map index 3d5c1ad..ed445e2 100644 --- a/drivers/bus/fslmc/rte_bus_fslmc_version.map +++ b/drivers/bus/fslmc/rte_bus_fslmc_version.map @@ -2,6 +2,7 @@ DPDK_17.05 { global: dpaa2_affine_qbman_swp; + dpaa2_affine_qbman_swp_sec; dpaa2_alloc_dpbp_dev; dpaa2_free_dpbp_dev; dpbp_disable;