From patchwork Fri Mar 3 12:46:37 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Hemant Agrawal X-Patchwork-Id: 21199 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 E834AFA58; Fri, 3 Mar 2017 08:14:45 +0100 (CET) Received: from NAM02-SN1-obe.outbound.protection.outlook.com (mail-sn1nam02on0066.outbound.protection.outlook.com [104.47.36.66]) by dpdk.org (Postfix) with ESMTP id 7DE3EF95D for ; Fri, 3 Mar 2017 08:14:12 +0100 (CET) Received: from DM5PR03CA0005.namprd03.prod.outlook.com (10.175.104.15) by BN1PR0301MB0722.namprd03.prod.outlook.com (10.160.78.141) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P384) id 15.1.947.12; Fri, 3 Mar 2017 07:14:10 +0000 Received: from BN1BFFO11FD031.protection.gbl (2a01:111:f400:7c10::1:177) by DM5PR03CA0005.outlook.office365.com (2603:10b6:3:118::15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P384) id 15.1.947.12 via Frontend Transport; Fri, 3 Mar 2017 07:14:10 +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 BN1BFFO11FD031.mail.protection.outlook.com (10.58.144.94) with Microsoft SMTP Server (version=TLS1_0, cipher=TLS_RSA_WITH_AES_256_CBC_SHA) id 15.1.933.11 via Frontend Transport; Fri, 3 Mar 2017 07:14:09 +0000 Received: from bf-netperf1.idc ([10.232.134.28]) by tx30smr01.am.freescale.net (8.14.3/8.14.0) with ESMTP id v237D50N005035; Fri, 3 Mar 2017 00:14:06 -0700 From: Hemant Agrawal To: CC: , , , , , Date: Fri, 3 Mar 2017 18:16:37 +0530 Message-ID: <1488545223-25739-21-git-send-email-hemant.agrawal@nxp.com> X-Mailer: git-send-email 1.9.1 In-Reply-To: <1488545223-25739-1-git-send-email-hemant.agrawal@nxp.com> References: <1487205586-6785-1-git-send-email-hemant.agrawal@nxp.com> <1488545223-25739-1-git-send-email-hemant.agrawal@nxp.com> X-EOPAttributedMessage: 0 X-Matching-Connectors: 131329988499849434; (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)(7916002)(2980300002)(1110001)(1109001)(339900001)(189002)(199003)(9170700003)(8656002)(86362001)(8936002)(305945005)(5003940100001)(356003)(2906002)(81166006)(5660300001)(8676002)(77096006)(189998001)(76176999)(50986999)(104016004)(626004)(50226002)(105606002)(106466001)(2351001)(36756003)(92566002)(85426001)(48376002)(6666003)(2950100002)(54906002)(53936002)(33646002)(50466002)(47776003)(38730400002)(6916009)(4326008)(110136004); DIR:OUT; SFP:1101; SCL:1; SRVR:BN1PR0301MB0722; H:tx30smr01.am.freescale.net; FPR:; SPF:Fail; MLV:ovrnspm; MX:1; A:1; PTR:InfoDomainNonexistent; LANG:en; X-Microsoft-Exchange-Diagnostics: 1; BN1BFFO11FD031; 1:BtZKhZNsYo99I3dYkIdAJdAek1ZZlh1p+aZFOTx8iINL11NBGAjBlE/SSmANi3+J8VQKvP4LKnO4mD0q1LNFqnpUdCkNZc432NeeAQU8/9LWs4NyPWToJO3Y+Lc9Lp8mdUNOSXToAT+Xn65aX8Smt0Gblh8tFVRmRGNYnBBKY6kBPZXT8H+AqdVIhpyOc3K2AC2NXs+gllUaJkpI9MWEhL9k5pA3QMcd8Ew0rIi5O3iH1gSetVct8Odkt7mDXaYjlpZGWNNQaPnUzl8ptw8vqJ6xBKf2boxCFbVRj2NxuiMNTEgKesA/Kfz5dv+UySA63J1x8HpejaDsNCN7vlcdwzW430klr/2oEdlqHXVGS/SlxFmsHibcBTpIXVHp18uLsSxuND4l5tg1j35h2EfnZ8P/h67N6J573767BfZgJxG1nmNVSQxFlAgsuZWKaKKCHfG2sRAbczAd0i1PlPPZcmqXm/bw22RdiQYOskgs7kAZcZTIhxAHajjLn/cAvN/RjRumNEQG9kE37+Hd9yrJDAddZCAtL0hFvE+LMrhQU/t6miiK7ykDygSJ+5EDYG/aPs3mBye6FxmxBn1ePtQJHxtIWVTWt1E1TLecCWgHgdLRbV1VwcrklVpOYzN5PoDKf/eYmZvIDf9iwPikO/9/1w== MIME-Version: 1.0 X-MS-Office365-Filtering-Correlation-Id: 226885e6-e413-4f01-b5d2-08d46204e347 X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(22001); SRVR:BN1PR0301MB0722; X-Microsoft-Exchange-Diagnostics: 1; BN1PR0301MB0722; 3:Njj6W/ZA2/x3TNJLxj28B1hnAaFB7fvKzWcmWHekZgpDOeNEBra4BmTjWr18e3Xi6euKsR9jafsaW046PuolN4jbpfdl3xm81XgQ2vr9Ct5lsnYprq2eth5pz1IYgAmsCmeCKMs1JjA8fnj8+zrcNzmUuCL/tW+fGlgonTsj6tUPFrdFkSmeLO9u3WN89g1Lbt5tcG/0Tq3l7KDwp+DLTtb7X7rEcB3y9chVQ5ov22zcNX7aZBD9B4ff0sWBZeVtsR8Ehvjhz8W5KBqIWuwQ61R1Fw0e8dczIBZlPwDzaWp2wxm9T90Wbmb77Q16qRVXDwRn57eGalQ5900+fM1cWWDpXXLwJhxxhJ2tioOvfmGI1ESPCVTTTvH7nfuTwZiP; 25:jlX9BqHYbFkAifwVpf/zCXY8uQeGcHRykpK46jY196N3NlBRuXRFZpNL5jo7uifiavMd9bpChvAFSyh9SR8AwWgsc1JrbgCO+ZrXgb4w/lPElhSEr5eKXLt/lqjZ1wr+wd4mRF1Lkr0+qxWw659pUPjY5OehHL7W7px9eCI+iBNGKLSOMlsRciXEKusZ3npT9sVa5q3ylIhk9hxzvPIn2ojawAUJDLkhubEuE7Ony5DLK28Djw2PV5LR0yKu6u0gEGyLMANn6OO9/kALNzwDojXf4vv4HbMRkRnf20s/bXlqMN3gCr1Uo5M4mHmGTWeLTJc5FxwgVLC3yQxMJ7FIyBS45GCAbC267QJ7+MJjyNWhtJAInwrUpMPqWLvpHF6pLM13YMqfuogQw4Bmd7JYOSBSMDByO3tGBNEVUXLIJtvu2N7YCCY1O7E6vmXcBQ5zhWRIWpVwbf3EujYk3EeP6g== X-Microsoft-Exchange-Diagnostics: 1; BN1PR0301MB0722; 31:XTQpyx7JchRD6TdfY6x5o+OLRlPeOIA+CnQFjt7e6deY56f2KJo+4Auwf1DiNf+W4iFt/XCWzbbKcvLkZpK6VmBZ27yIgkyltwUSEEClrErGj873Z9rA8l6rfbv+X8UWLEeXv3ORV5NA0tdtnvthRD44IzLvc0oVtkMiY2uHdwlW3M7tnepddlm3eArg4KDb8LccHsvncgZB/U1dHEo8yRsbdOuTFgJRFcjpjCrR0MaMu/wfg/ZDhAwMIVPWY6qTXtzaStrsAuIHADvshHzjeg== 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)(13015025)(13017025)(13023025)(13024025)(8121501046)(5005006)(13018025)(3002001)(10201501046)(6055026)(6096035)(20161123563025)(20161123561025)(20161123559025)(20161123565025)(20161123556025); SRVR:BN1PR0301MB0722; BCL:0; PCL:0; RULEID:(400006); SRVR:BN1PR0301MB0722; X-Microsoft-Exchange-Diagnostics: 1; BN1PR0301MB0722; 4:Z0wk7zkWTSXD63ZT/OcQFMpxI109VhoEwT2TNd0I/pfyqaKr105qG+YTRgH8hr/+ro/b46CjmrNGOhRihq50JxheTFMBdZmxCjIrE78SoIhLzHtI0IRR/k2/GaKzIJG8PuPTsl4x0qAUtJ39ZQhULTvUg8IzoddrXgSlYxbsZHrzjvHIbbOF14srlXWnUNvswDeI+IJkjOVJbOyTXlLsDShvmtV/xkaONn0Yeg4j1osWuDAnxOZ0TufxtbNAJf7m1ggEcesKo3QLWXh3HR1UfNIA/SVNJGau4aiaoNJKwJoUQaUz6OWkQ80MDWZ8Pwb2sRdCXimEcSzV8bQNbQNVJIX25Pf/pDX0qTsosSfAPuPeIehC1a8mnYGQGKp9NXT6n1acit5sK1RUjviUp31f6Lik1FP9A6EcaVa7gRIkrG98ZY3fgDef+YsK0mfra5UGHGzYqNYxqnZLMoDBcbX5w8lnSO8+aLJvwTcmgcUl+cl2MTAyYM2P6jdCHj25h4d1yHp/uXHn3zZA0J/ppDW+jxHTEFL9TC3MWoBmwGXaLcnnUYpprk7JMbG3R0bFl2dbuK9b5MeroAfFuzv33weZBEfA2GW5Qoddo73r564F7U0g1Ujo33ALAIrMtXOKYnzF6vl9QpKYViqY+6ASFH8jKtMI5aGnfKkzCdKUo4bTrG5dBAxMJioiz9wIEhkFPH/P6L0RjsCpfj/UFNWKwbVpj1Nret3EK4pK0/g+9/BqFI0nrGvE7TnLseAz5qjq/jT4fGMOkahbOVAQJTmOadccAA== X-Forefront-PRVS: 0235CBE7D0 X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; BN1PR0301MB0722; 23:lzRnCDln8z9R003rONtOP719DU0z8B3zsPQ1FAc?= 8hWJ+/v/Wu+gJLtLlR0ytigxmIpW8GD26QCBObDkZL0tymQq+INnbwNhID7/Rk1c8/g954n9YmQgxnXMwAT7XxkOeoeLKJKzCpuIoSSwa4u3b9ZCJ+82nNHDAii8n6fBg7COq893ojlbBFmNdNYnwkqFHQJw9oeivyNwsElzUtrlzBSHoCJYD68NFzkH/fGfOe4pF1Jaql3GRmsSyqAyxxi+EHeQtqWnGiyRd7BBlkVhZlvitLxapNrBn9e3xTUWW0LN1HMvRm8VVsN7ZznnvXFZjmf23JlouABYp92eUYFCrdP+khqu64cYuTmvvEx5R1CMs64M7wwfNi0xbK8aStHmoDGE/NycuCkQcg5oOCH7UeQpDRx7/+4I7mY7I1lP7RnQUyVFqr5uzGYVsk31YdgK9rhoDkbrI23XLMxxyn8Txsf0Ux2BA2Ty7xgRuxuNMlDx4dOGNlCFWA1PS+0pD/NHmGZXuyL+A5qllHV5dthJQJ2HuFbtg5h2OvoMD1qwogYWZEXitlqoLfVc+dUEbg+7ysV8pzlNHDjngpdFr09/+gewBPW/hShda5O/IvyyQDx7/X8Oa7F6FfiWFE2alIq2UZLfJzFDQqOuzqMM++I6d9Ynlyc917gpxx6RXeS6BDSIXDxZRuLWdgxrEp9RbGmTsZi7xtzbrdxju3Tnph0ScV1L6nCl4at7bF6mXQQMTWT+KlXcaKz9IQtuY2tqqEX0k+QNB5b74cEmy7VRRS4NYtmDhjIXpx9Bv3Z/K/n0xYbMPvVmvqImnQQxsWWJoRq7kb2VoSDFRhrWn6jFWt3h3R0oI1BGppiTLva83vW63FlHH6RTrXKdG3uH3tHfpdy71g7lV+izEAyaqC/ZpKCO+GhtUUmuY5H5xVZnXtwDWKOQ1gsPERkGLyk4rVNchekf5on0FqFgVc40k/O5kG9yOixOxUTcjxADTHdDkcLUZo8GIgnw04iBFsCEJ4l1mPXDdv1n/oNH4G6H5hfutU5KEaiW0SfVCP+n9/G6AWgSfh2KJeP5sMPB4xfCMmgb4AyE2 X-Microsoft-Exchange-Diagnostics: 1; BN1PR0301MB0722; 6:mecFWCzwWgrgmbt/USVRoVr76FDOSH1bXAOFRQ8w5cpjKN8qkgx9Y214na067FF3ihpWLUQWG20dtPNFTNGgfLMYQ6SyniHlyDuXDbECub5xphtNq9Dx4MPsEs5oZn0YCp5n86D6nTLJoiBk20VI+EmnjZXGgzlhWU2y7ss0s7yyGTATGkFVqL6oVYxnYbs93D+P/174QAoVHH0SkHIGIdyEhYNCFQ/HOa4yOR0pnyoUtIdTPIC2xEYD9cB53loWISTgXSVHke1vnaDb3iVc2nO0IzcyUljsRzKCx5HpSujxwYWWyEGZBb7G0PjlpJPjr7gTc+ggBx2C3qvIABc0rUCvLOUzCt5uLL0eBz8kREtG89OX5skFUkBtOVwz5gPVUAG9nwtYff73XWGeTDRHCyyccbFDVDqzC1dK0z6xclA=; 5:+8X3G1MWyiYuLWhNEwu01fvI+qJ3T2lfXJtoMCg0ygwMyEGHnW+ZGUgR/wTCSoSSnwpwhCfJQfaSM+w/YTImKixsln6YTLYYM5HIOKzBzLyOLjrF3mH0L24M0F6NxRz8Z5OzJHFZYNncekR/kCfoJ08W9Gyafqz9X53KnN5FxvJgMf3Ike6Mff/YEeTO3Wly; 24:Uu5T6KP/egbwXRgLVB26GPgy89TNor4fcZfgVVhh4zfgQQQ2yclEgCqRKo97l41bEmk/VBU3jddiZs3Lk0g9BEiycILKYjWEGYD/nY1+lhY= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; BN1PR0301MB0722; 7:17SY+Xyr6NSqzpVnGpkj2K7wR/16929XQ477z/SBhy3N4G4n6ezWSpmyFzZcTCjoGNEEF0XBDRWjQFFnn/CcbqtDWljegrCGaqQJ8CZfL1H6gqoiMpNQd13QGy6q3hctJTM5Wbd7r1XQjGD7Nv+MUJN41EDNunrAso0HrKfnRzIGauaZtiQV2az0sgynSvXxxcS3E6zWZFH5JTWS5rykUMn4IbQZaAPkO8V8djFowlUEzcxg7x0bj/A6Tjj3tGIcaXeBpqMYfT2qki91kI2PcMWJ8EZoHwnDPeCwkvNAyYQx7Rxxwp9syhRusjSzv6yTfaVsxlBmImzr0Xk5Vy6uxA== X-MS-Exchange-CrossTenant-OriginalArrivalTime: 03 Mar 2017 07:14:09.6573 (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: BN1PR0301MB0722 Subject: [dpdk-dev] [PATCHv8 20/46] 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 66840b1..0c3f3c2 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;