From patchwork Fri Mar 17 12:36:41 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Hemant Agrawal X-Patchwork-Id: 21859 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 524EECF9E; Fri, 17 Mar 2017 13:53:08 +0100 (CET) Received: from NAM01-BN3-obe.outbound.protection.outlook.com (mail-bn3nam01on0067.outbound.protection.outlook.com [104.47.33.67]) by dpdk.org (Postfix) with ESMTP id 8FE81CF7A for ; Fri, 17 Mar 2017 13:38:00 +0100 (CET) Received: from BN3PR0301CA0082.namprd03.prod.outlook.com (10.160.152.178) by BLUPR0301MB1955.namprd03.prod.outlook.com (10.164.21.25) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id 15.1.977.11; Fri, 17 Mar 2017 12:37:58 +0000 Received: from BY2FFO11FD038.protection.gbl (2a01:111:f400:7c0c::174) by BN3PR0301CA0082.outlook.office365.com (2a01:111:e400:401e::50) 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:58 +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 BY2FFO11FD038.mail.protection.outlook.com (10.1.14.223) 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:57 +0000 Received: from bf-netperf1.idc ([10.232.134.28]) by tx30smr01.am.freescale.net (8.14.3/8.14.0) with ESMTP id v2HCalIA023358; Fri, 17 Mar 2017 05:37:54 -0700 From: Hemant Agrawal To: CC: , , , , , Date: Fri, 17 Mar 2017 18:06:41 +0530 Message-ID: <1489754201-1027-23-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: 131342278779465904; (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)(39450400003)(39840400002)(39850400002)(39410400002)(39400400002)(39380400002)(39860400002)(2980300002)(1110001)(1109001)(339900001)(189002)(199003)(9170700003)(77096006)(106466001)(2906002)(81166006)(86362001)(50986999)(53936002)(50466002)(54906002)(8656002)(76176999)(104016004)(48376002)(81156014)(8676002)(110136004)(38730400002)(33646002)(105606002)(2351001)(47776003)(6916009)(2950100002)(85426001)(6666003)(5003940100001)(305945005)(4326008)(189998001)(50226002)(5660300001)(36756003)(8936002)(356003); DIR:OUT; SFP:1101; SCL:1; SRVR:BLUPR0301MB1955; H:tx30smr01.am.freescale.net; FPR:; SPF:Fail; MLV:ovrnspm; MX:1; A:1; PTR:InfoDomainNonexistent; LANG:en; X-Microsoft-Exchange-Diagnostics: 1; BY2FFO11FD038; 1:zrzeIBDW6m/w5QCGMc11s24rl462/dFNUZnCfvnZgM1KJThDievI4j1XrXrRlvIoyV35nQSblKaCespINBe+i0ccMmvpV3E13Oynxss+FETlglD1xA7uPZqdzE4mvU//4YM8cKI+/vkFOatfy6bffZAFlPIAZ7WlV5g8tjNJw8uvZy6+3Z1mlZHLDEE1jyxARVePzGj5sn91GfsV8oonHDVbCEloG+Gk7j/WzUYRoMfWH1Z4s/dT8Xau+LN768lxpYpnrySaJ1JYh098BMQA3kWmZ9kzalS3Psty27K9puzzEHx3uuFeJk6vbS+o4c/VcM0uWKOPXsDpvCLyqQmnpY8Wo/QVkwpm9u1cYgqQwqa7dbg48cyyKBeMWEbnfmESsmJNglNcBbH+eA/mklsBiHfTKOmBfvjwVf0mdWmU7lLuOyr8F6rEamr07fICzLsiu37d0IOAUfQwNuby9XJFmYm5CXms6mK18PPq5/Hn6jRHnFwm5GAm2482pFrNtFeEkDEqtl0RpP011QoDJFKZePWppry9B1jrRNJpfaxXDn1LhWjc6kbvwkFQQucQ6lG4FCiomhqj9v+4fxvgkQb4xmNSB444U6OtFyPe8vz8KeaijwuFbI1ungzdhCvn1EmXOVb21SBSjbMbEn3BY3xQvA== MIME-Version: 1.0 X-MS-Office365-Filtering-Correlation-Id: f44472e3-bbfb-4e5f-f0b0-08d46d32711a X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(22001); SRVR:BLUPR0301MB1955; X-Microsoft-Exchange-Diagnostics: 1; BLUPR0301MB1955; 3:BqAGvE2fFk6b/S09gvzvY8299/z9Ht6GxRk25Z/eTBYAMYvXBEC595cfzG9D0w33VKS+78EfBkd+dVEzY0sbMjd5TmKikiJ3wwFzRiXzIlGpzzvuEDEYbXm8XKRbXM6Q1vNj6E13YupoZvB7GP8qKzTiqCoQf65JBdiP+KpRi8ugJmNSCp1bgAygZyt5+kbd3BMDlVp8xKQ8rKQEBi2m08Pp79ej8oVmDMJqURSjcHRtIYiuF9HKwSY2bdVytaXnC8AMmP/B2RlMQrDtUuJjOpOvws15zCZWrgB650mh72s4VBb9+YKIp+NmwIYkRhelmNtjGSRr4nMWsV4Ly6PYYWUi/RI/FIn1fMzRAXkkeKjt9JgTFzcNwIcy5/XPU9xd; 25:diFBkSbC2yy8ts7F3MmMQBaCNsxc/u0pYV5PLY4mWrzndecSrXUKrhmvdH6jgSYWC3fB6ExzGYW2J1lxbhRciQnIaJDvfuiK9KO58DqAFrCQPJ9t/DwGgks81YHCJLN7uGkPmPSFy1F8yZwouN9oUjA7xRMsvalXhQs+wOk5Mhlj8c4OfUAiVqGhM/D8wWSIM57GiAlIQYSg+0m7CAHs+/8fZJ0uHgxbQk7TtGIfMoud6gmYQpGaKW4APy8yt9+RnX/IMDfA5dcAXH7XC2+2QuSV+UfwbEScAwLx26Y16Sr2CbJGMAynifiNqIsP1njG9mT2A5nX6GNfmJSi6JC96y497myL1dErvtlJ2nhI7Ou9pWbjZmQkLbPR+o1tJP/AzimUArIfB+OE1cvq8JsRgTs6SXSsID5zwPTKisbBFFVaRlqR9CbJF/YZrLJpc9V53ZBCjJpJ2qESfxCqpPU8Cg== X-Microsoft-Exchange-Diagnostics: 1; BLUPR0301MB1955; 31:+p/TaFw37+CaFANm0KkDZgHW8A759xSClXs5lLKqwt1pJcw3CQkSvJi8qS1ovSrYjslC5mVoT/5tbDo+RrIMwJyu7yeYRmEUESb/2Ft7jWMM+sve4WCV6fXToFzzeZX/WQp0aYTghODO3poVItbvDMsXwdp3Adzl1QZ07j40seOtLPIcwambBRr5iQ+scXoJhoD6IGNMRsw9pE6M2uzfsLVg4rKfpESlnurTSzcMsjJ9BS+tTGfNh7CsEvKM0eRbdtWKo40H05uOLKAnozXG6A== 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)(13018025)(13024025)(8121501046)(13017025)(5005006)(13023025)(3002001)(10201501046)(6055026)(6096035)(20161123559025)(20161123561025)(20161123556025)(20161123565025)(20161123563025); SRVR:BLUPR0301MB1955; BCL:0; PCL:0; RULEID:(400006); SRVR:BLUPR0301MB1955; X-Microsoft-Exchange-Diagnostics: 1; BLUPR0301MB1955; 4:g9m1JfnYk1MqcMAe7YDJO05BeckTdo3ckI9SNLbZoP6zR6roIgDFX/eNLx5sRgpJslppSC03VNYfsnXP7y3hMMQF8xgIE5fTWJ0fGG3a+D8X5ERb8EbR0uree0XVPWZRwmn12066BZkvSq/taPLurjhCRuNtI14OF2mu/3SspxuTrEnrT+lU32IeLqDRbQj8Xf5HXgPhOJY9BL8FReyVRwYqzgYWFQwmiTRoxT2zeQZ7kYsgz7B/wtxBrNNxvJb7u+4d2j4obX8YnstJaOSbt5AfT7wnRezMLBinNv3fy3WbUIyIqnFRPI5RReiXo4vOFMKCrweHN8RKsCwbsW5DZL7jTNL3xr1QYSLKwMRfrd/CBRDR3I7Bmv17FJxsekbvjAMH7q/XI0xBvEv+Tx46+gJNyC6xFlOpRxTLKDww65h0OPowPNy7UyXrD8sNu5AcA2cCfEIsWXOtymXre2krk7Aq9oXZiJ1kP8K1dEGJToDtnNvTArDgd7QrHL5gdvoP84DQ2YmCv9AlN1aSUW6YRlWcxSRyldHStTzJsL6YKQc4FBWIFVqMHOXrv5TfuAlPw0FqO2umw0y0ABXujSHqm8s4lnDNcwTClyf++75pGfePcgFq7qHkb+luYddyTgbmwpCWXRzi+lQ7VLIiVpsTmNiUU1/NC/Iv31DAwTpC/qN3Bv5MiYC2GWIMkFjyXWx8zZWBXqkXX8rcqg+dXMzu4HU23VTzefcOJ4cNh+uBFlW0SceQC0Uu4/pu3aY/mEFGsOnIY7FfkEHoRL/AaLZ/qA== X-Forefront-PRVS: 0249EFCB0B X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; BLUPR0301MB1955; 23:aKa9IUGHbriQizRUcj0LuViph+E091o/iv0rMRz?= 1iRA8zykSgXHdgIfv7Liq4bM2effTi1aghnMzJLUb1ipqb9SlhatpMqDufEDRWlYMPa/HtXsF7h2hHwlFi+BlFFYkRMOg75dY3N7q7RxIMhO6VgUvhMSW6G56aR+jn0QHZu8FoUEMGCTY0NDASvEbMnL16TtKZC05P22HMuNwyJe4uKlGlkXQZ3yqUVKPQst1JZru9RpXwRsolh12zzPYjmqcPi5HpGSPA0wfJp15t+rEVEEKDGv/YjOZoYiLV4fYTaUep0chi6g70aXT28VrEuVFQuWIYDz2B0LAUT3uCXjEtfLpZWN91E/AkCZNwjXhC+xjbeFT1NXIK7uDzxYdrHJTBkD5ZVOG1L+L1dwq7vL1fXjcsW0TwsiKIygS+MU+3UMTtF3tmaLj7pGeQXguXOd8Tj7/QP9wCBo171zHctWCBIB+Vuf0eLeAMyl5behhCTaqEsMzqYuOUQORlen7ImtNMp5dg6jEMyZKZlrDGPpVnB+fJ1/e5HuNA0ZUMYCaHLqr4L9SY9tbjuqL2XMfPb9pt0y8cdNgEPaZtaUtjsWnDd4NBtwOqGa+VDDasC38ZW/oxvm/oBW1pgOTwdG7IxWuYMHgTiDeeEQLWK69jESuXHbPUxPgaS+dL8Or80068QR4kCmsgqcrbR2qjlu5fEsCHSqJWQGAVCjhywumfArparSWm0ixNHMIvJRPTyBoGPrbza9VXUzuFgZ847VAV2jdFGE/qr3nmHEybOb6iHo/htwb3aeRc3meiFMTF1CSHlVyZkCXrroVT7f/XjfgNuhl847v+ZqF8wEsquqybXwdYiYQ31qQKZcGLJRa6OsB3zF25GSeRu47ZbvGPPywMrHFq/S+0zRagtDdQqCx78WFbFzqUcrmxiyeP4kEfINMcI+XLR/OMteU7MyquamsRUgMwsv6ZSFPmc6mMsTS59IdAoYqircbVN2ALmsO77iiqawWrR4pPN40QIyFlbRzCwUFFtnHdZqsX/kAmYWDlMRsguhCPNRTaNIzk4t216eZE7oxgOdkySUH2L9YWj+n/j7NfRrVAllMWwFa8FBfgo3oImZvlUyKA8Oo6AdGEPu+P+HuIk0LxA+CSDfQVR1g4Kkeq5IEV8Yga3ZMG8sQvdKRacRKTnR87v3ll4WZ91UPsisFI5R9W2z5QGhlC4fNY6hfCxlw8NZEVu9XRRQx9UyLSw== X-Microsoft-Exchange-Diagnostics: 1; BLUPR0301MB1955; 6:42MyEDJF671WXMvcGAjcg+6ru/zTaWFmif/O8F0zplI/z2l2eDbZQB8Hal4H1LHVxJmqBLg9V/xLBczulLbftXzeT4HswqUjCNyBI4TAoWyxJI34Idj07Njl/E3k/9t0DlvyRvS5NyQOrzvN67cZ3HWYtNOe9f+6xbC6M+OaJG4xz43xqmnIWR6Dcjx7effYnlUynmjcqWczaoP/0a4W854qI+E+YhNPyxNjngXWJJpGZ8gkiLz7Ke6+DRWX3RCO1IZXx9Wmf6eL3oxZNTaV37P7B9qP3zlDZWgAWsvealO76RtcXJDoYFKmQB9Cnyh0G1uqLjcIDW+cYpy/lUru8S+AJWPHW/M/IGB6SMgPQVJucTxP8WR++qEvchvxv2et/vrPAMUzVSY3V1kyQUAIuMSKNuaPrG0+Y1+balembx8=; 5:2TCFIOuWdDt+dx1ac0Htgl8AAhqBDWSiILOiVSsHshCfWdP+a2yh42uQS1BkRw+lyuZyUM8+1a7o+JkpGk4cPfuYBeMtYTN/szrpj+JJc8jCtRExjewPCfPvTJuG3J8T18n8OR3DSbCNekBQ9Foeau6/v71Uga7Fg99O2+4qBVlGU9bTtNSa4R7H+REKfBsm; 24:bhU2S80ke/IvHlyU/jpKXApyy9qyDOgEdFNv/vPabLwoRA+nHUhAlxA4Sojt4yubcSRBDB0RCaxKr0w4PQhxfXjvWAyUWnRC9C5jSx5qmQQ= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; BLUPR0301MB1955; 7:muUHbd7Y+r8cRcUPt0bR/KcSwOW3+4lnzoCQsKbsxxVVdX9u72AZ3QrGRVsOLJg0KXMztLOxU/rtoDVSQGyfxrk8i8dUqLrwp1a/4jkm1zmGFju7NEpskQJJkvtrxDlhX5MzIJC+Cv+X8kXszlSVUtVCvsoH8aGOO52snRh2AgMkXuT/kssT6o5+FZGlcMa1cY3537k5Yw/qvsqvQIsALIcAJIPzQ75h8hyoywnfcamjpfpNO0zMl4GG2MdhBTPSjKA82zze8BFZ+WsOQx4nQWKe/qnD8ZbQ6yqQcm+9SQKxO8rwy3rnD6cUnWtczDf6LYwiA8plubbAXhrw53kMdA== X-MS-Exchange-CrossTenant-OriginalArrivalTime: 17 Mar 2017 12:37:57.7593 (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: BLUPR0301MB1955 Subject: [dpdk-dev] [PATCH v1 22/22] bus/fslmc: frame queue based dq storage alloc 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" This patch adds generic functions for allowing dq storage for the frame queues. As the frame queues are common resource for different drivers this is helpful. Signed-off-by: Hemant Agrawal --- drivers/bus/fslmc/portal/dpaa2_hw_dpio.c | 32 +++++++++++++++++++++++++++++ drivers/bus/fslmc/portal/dpaa2_hw_dpio.h | 7 +++++++ drivers/bus/fslmc/rte_bus_fslmc_version.map | 2 ++ 3 files changed, 41 insertions(+) diff --git a/drivers/bus/fslmc/portal/dpaa2_hw_dpio.c b/drivers/bus/fslmc/portal/dpaa2_hw_dpio.c index bd1f643..c80d6c5 100644 --- a/drivers/bus/fslmc/portal/dpaa2_hw_dpio.c +++ b/drivers/bus/fslmc/portal/dpaa2_hw_dpio.c @@ -407,3 +407,35 @@ static inline struct dpaa2_dpio_dev *dpaa2_get_qbman_swp(void) return 0; } + +void +dpaa2_free_dq_storage(struct queue_storage_info_t *q_storage) +{ + int i = 0; + + for (i = 0; i < NUM_DQS_PER_QUEUE; i++) { + if (q_storage->dq_storage[i]) + rte_free(q_storage->dq_storage[i]); + } +} + +int +dpaa2_alloc_dq_storage(struct queue_storage_info_t *q_storage) +{ + int i = 0; + + for (i = 0; i < NUM_DQS_PER_QUEUE; i++) { + q_storage->dq_storage[i] = rte_malloc(NULL, + DPAA2_DQRR_RING_SIZE * sizeof(struct qbman_result), + RTE_CACHE_LINE_SIZE); + if (!q_storage->dq_storage[i]) + goto fail; + } + return 0; +fail: + i -= 1; + while (i >= 0) + rte_free(q_storage->dq_storage[i]); + + return -1; +} diff --git a/drivers/bus/fslmc/portal/dpaa2_hw_dpio.h b/drivers/bus/fslmc/portal/dpaa2_hw_dpio.h index b1a1b8f..f2e1168 100644 --- a/drivers/bus/fslmc/portal/dpaa2_hw_dpio.h +++ b/drivers/bus/fslmc/portal/dpaa2_hw_dpio.h @@ -59,5 +59,12 @@ struct dpaa2_io_portal_t { /* Affine additional DPIO portal to current crypto processing thread */ int dpaa2_affine_qbman_swp_sec(void); +/* allocate memory for FQ - dq storage */ +int +dpaa2_alloc_dq_storage(struct queue_storage_info_t *q_storage); + +/* free memory for FQ- dq storage */ +void +dpaa2_free_dq_storage(struct queue_storage_info_t *q_storage); #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 09c4fac..a55b250 100644 --- a/drivers/bus/fslmc/rte_bus_fslmc_version.map +++ b/drivers/bus/fslmc/rte_bus_fslmc_version.map @@ -4,7 +4,9 @@ DPDK_17.05 { dpaa2_affine_qbman_swp; dpaa2_affine_qbman_swp_sec; dpaa2_alloc_dpbp_dev; + dpaa2_alloc_dq_storage; dpaa2_free_dpbp_dev; + dpaa2_free_dq_storage; dpbp_disable; dpbp_enable; dpbp_get_attributes;