From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from NAM02-CY1-obe.outbound.protection.outlook.com (mail-cys01nam02on0080.outbound.protection.outlook.com [104.47.37.80]) by dpdk.org (Postfix) with ESMTP id 77EA8D003 for ; Fri, 24 Mar 2017 13:42:49 +0100 (CET) Received: from DM5PR03CA0002.namprd03.prod.outlook.com (10.175.104.12) by CO2PR03MB2263.namprd03.prod.outlook.com (10.166.92.144) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P384) id 15.1.947.12; Fri, 24 Mar 2017 12:42:47 +0000 Received: from BL2FFO11OLC001.protection.gbl (2a01:111:f400:7c09::167) by DM5PR03CA0002.outlook.office365.com (2603:10b6:3:118::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id 15.1.991.14 via Frontend Transport; Fri, 24 Mar 2017 12:42:47 +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 BL2FFO11OLC001.mail.protection.outlook.com (10.173.161.185) with Microsoft SMTP Server (version=TLS1_0, cipher=TLS_RSA_WITH_AES_256_CBC_SHA) id 15.1.977.7 via Frontend Transport; Fri, 24 Mar 2017 12:42:47 +0000 Received: from bf-netperf1.idc ([10.232.134.28]) by tx30smr01.am.freescale.net (8.14.3/8.14.0) with ESMTP id v2OCfacT031007; Fri, 24 Mar 2017 05:42:44 -0700 From: Hemant Agrawal To: CC: , , , , , Date: Fri, 24 Mar 2017 18:11:32 +0530 Message-ID: <1490359292-18773-23-git-send-email-hemant.agrawal@nxp.com> X-Mailer: git-send-email 1.9.1 In-Reply-To: <1490359292-18773-1-git-send-email-hemant.agrawal@nxp.com> References: <1489754201-1027-1-git-send-email-hemant.agrawal@nxp.com> <1490359292-18773-1-git-send-email-hemant.agrawal@nxp.com> X-EOPAttributedMessage: 0 X-Matching-Connectors: 131348329675995387; (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)(39850400002)(39410400002)(39400400002)(39840400002)(39450400003)(39860400002)(39380400002)(2980300002)(1110001)(1109001)(339900001)(189002)(199003)(9170700003)(33646002)(189998001)(81166006)(8676002)(86362001)(8936002)(110136004)(2906002)(105606002)(85426001)(104016004)(54906002)(47776003)(8656002)(2351001)(48376002)(4326008)(50466002)(2950100002)(106466001)(36756003)(50226002)(77096006)(6666003)(5003940100001)(38730400002)(305945005)(53936002)(5660300001)(6916009)(50986999)(76176999)(356003); DIR:OUT; SFP:1101; SCL:1; SRVR:CO2PR03MB2263; H:tx30smr01.am.freescale.net; FPR:; SPF:Fail; MLV:ovrnspm; MX:1; A:1; PTR:InfoDomainNonexistent; LANG:en; X-Microsoft-Exchange-Diagnostics: 1; BL2FFO11OLC001; 1:3+aXymDlbwZQQE+lzQgDLDnjT69ts9C2TFX2j1TAGy3sEok5kw1YLkE3uaoGV1ynn0WuCQedqJDkkFCJAvxuL2DLnnWaROC9HChTRZekecnF1mGc1UJTxlvIjscphzi4hcGrwMtg+E/5YTwPL9Lio/SCxARXw10MPk6SSHa9fIFBBAEnDvR0gnvC8i1JPTYPRREpoUQ9cU5JMfrN3jL1JW9Xd5Vv8NX1OmqXP6UTjhLxD1y9dT9xOC7+Uw8dXAyVzy1DolpF7HVe9qE4w8vomRRmGZJJ4qDwrJEb+wosr+gU6hqXJHrbUhiNBoADWaDu8NFigApTQCDiP80IYJNftmD6sFhEuFfE+zyXIIKrmXQ2w/zyKwDtEnKus62xxnGsinv+Ef97oK1K7CPJLdCD/0zAOM6KElYG8hGnwd5ki7INHq2X0sc5Wzzk/heS5AYfDFMKOkkSqkOOgYxN7xDbfusKpHN8BTnCLETXO1T+bi5vTU3/Shav84Eg9xMWTzV0o7mkLH1Y/4GR0xlZTDjlzqZ5NuCBU3s2p+ADI39KyW16hW+wUOorbOlROdzYskrrPNUn66EJ/5m6M4aAKdis84TctZez/l2W7y0Pt0as5Ez1gl5Vccezrn4Hc/uLFDYXZloC1oY/2Ay/GELg7BDO5g== MIME-Version: 1.0 Content-Type: text/plain X-MS-Office365-Filtering-Correlation-Id: 5c85a89e-ec3c-44c5-b8fb-08d472b346a4 X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:(22001);SRVR:CO2PR03MB2263; X-Microsoft-Exchange-Diagnostics: 1; CO2PR03MB2263; 3:qhANEWKVENIC8vqo+PhywZYiU4ZxYGpOHMuusd66+0VqmqHZJxM7XFzyzHgCyVg0jhMF/PpMuv6S81gZytGX5LIW4n1qPSjp7mP6hGQ5Zfe/keq40LxyLPxm6NvPYg3inYJEpdWPZGnnx6OCr5ACWxANmfvrNNsoGTfr7XfQdxyk8ZQftfzpUMI2WxhpSpkksBXx3uzqLSwVcQSBV/jjc/lHIlxPXgLNWm+qoZJR1WaTAEjSUSmg2Gm05ulr3eJOlxbKmvJe2HLQ6VqSnUnSMAOwDAwTfWML3t1mPQPdbx+YZrcOv9YX81uzkQT2qvyCpQznHnEZ6qqVHuXeAzlGczXXEOcUq3y5rfzrOWqiOaIOLXimTbExqa/fQCwPJnqI; 25:EDvKPhQqLUNQ0k9MNCamSPBO0xTjfDGQn1Ph2SMrFsKJZl/G4Z3XCADDtHfMtL6X7pIOlV3juX/Lh/JoveBkriN/gCBS43g4XFLD6Kn6cV8fJD3hjiNMJ515V6pURTY+St4nVZsZRMUrgGsgFG2I9TqxRiRyeu+40WmhI08IQhWN+qbdx1PCLchtpQwogaakv0BnWDkg3DND3+VceJDPG3rs72aXfU3Q+AUOmViMRv/gJXPkFy3x3eU+tXz44gTvw3xr+PDmyXt37y8cgO4V4ZSpYRs9l6+had7eDKj9m+IwJcCIuT49TEyj45AS6vthYEUH2XYKWP8kKQzE9kEIzXmmACrZpa49iUUkrnOlpFG7AbM9o5cvpcmj/6esPvtKCgel5z4QhuQImlIIcvqfDRBCRpPUUjIKBoPFIq079xKRyS1a7/p3YV3HfFHZceCFXqj4Vv2UXO78W+Hq+qYeUg== X-Microsoft-Exchange-Diagnostics: 1; CO2PR03MB2263; 31:UuffsMt+RwqLg5mTrzsMAWzHL9F/Msgn659Ln6hjnP8ISF3EnX2lRcZasV0BBX9gE9CJrSCsJhkT5X0vGoO/Ls8abLAsJyRh0+BlkoYIcq7yf4ze2jrvAFX0jEfMdyNC9rIgK4LqC8/vTWem/x1Owv0KOdiuabqfEBOyVZHkHI+tIjrq6Lirsb7klRJHJyiGd8UgYyy6BFNe9NaFTylQQzh4eLxuPzI6OwkyS8mcMEu0Az+8PNd18tL418Y+dDdE 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)(13017025)(13024025)(13023025)(13018025)(5005006)(8121501046)(13015025)(10201501046)(3002001)(6055026)(6096035)(20161123556025)(20161123565025)(20161123559025)(20161123563025)(20161123561025); SRVR:CO2PR03MB2263; BCL:0; PCL:0; RULEID:(400006); SRVR:CO2PR03MB2263; X-Microsoft-Exchange-Diagnostics: 1; CO2PR03MB2263; 4:B+qnAedoGGNuvuo2lwkf0cGAK3oX0TnO3P9QnJ7g4D8gUF+r/zggzBRgI9A9azK5uOmeGlqNbFD83PIT5DvscbOHJ4FVx51wTUxpdTxNUT3EIqnUOzvxjLoiILoPssE1RIvF+wgvrUYbwQpuHbgT3r5q7+QYzDmaoCx5y9qr+mBqNM+dQXqNY6LSsR4GN2OgNcVu53BlINXgFyrBY0fznNm4Touy84686Ir3Lg5asAJd+IVLPsLySPXLqcZ+n0HA8k+Vx8rer8hWkSMbd239qSHHq5orTLTjEDAY+404XFxlZ3n1hPJNrpjHU5H99twuvkLtR5p8KFPelf+m0ypGuVK0QNTmvEy3oOrnqke4e6YZ7RIIx53woEauznOmMoAUjWnMlwT/GJXV0gBO/2RuK1iIszv9xXg3kNLOHNC6fHucToWG1nsscCe1nQmIcNg18abgQJ8s0OufIb2R2MPDmXSwLAT6msu8nejmuY3FucpDJgtSH3rt5NSj14GD4x07Rp3aKHkzKgytMpxwXPTuMv4VDbvR9PGu4IotCDcgOgfcAe/ILONkJm59s+8GeHvfEi2602S1RKie2EBfcnxblnvQDaxo/C8cQX5pHj+4VPk/mbZXlWfep/FYm56RzNpSVl/19XaeyHaIRdx9Wdyl5lAl5x/RW7xc6tSWmzzIMHNXI4gm6NWF3kQHgFROogGLTpUPDEuuiJQKVDq6sZ0pUj4etdIKWYZguvdGCa0huis8k7AkBSuGL2YWGHWOQ3u3kxBs5DYVN8aa5Ikg/XexIw== X-Forefront-PRVS: 0256C18696 X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; CO2PR03MB2263; 23:wQ0UShUlPd6WdQjWKqU+DwwExFE9AYeC/ZF6LewSP?= =?us-ascii?Q?iNFndEDBVQMrJxC1AO+xzmxw1mplQlkC5uzfuXuAmYjMyRwgQVAGtig4Oa83?= =?us-ascii?Q?2x9rBMBEMLoD4FwPyJkC4mu+OgvoPXIFxctT1tF+JKix/aV4Ui3txa6J2gAE?= =?us-ascii?Q?8nBWyJK8YQ6UQxB6aOzlTog8pzKSiieUIeD2tohdhqIAcMw/wfk8rBA3hHcq?= =?us-ascii?Q?pZDCHidPsfCm3iBqXdbE/OCseIPNa7xZ0z1gMTvXe5sFWfIumnTkJoY7BnKs?= =?us-ascii?Q?zjETFkpacMNtJyL1DExhtEx+E0BZyddHba3QRwD+yDEHxqIqbhzaPbKTUsgK?= =?us-ascii?Q?OgxGNZvspQx7CeMs/MIDXEUMpCJRAxYrOnzt72wvBydQJ8bVH6NBGkBZdiln?= =?us-ascii?Q?QMs9sZ2g7qnu4/QFEmyaL/yCZo535IOCkf79HZvXKe/VZzhDpD3yinQNpWH/?= =?us-ascii?Q?cQcQE4zH81aNZkB8Sin4lPwhq/G/M2IszlvA16zLFM/x1gYCFvwdiATcsGaR?= =?us-ascii?Q?j79aKdCpbQzwnICegmr1tjzXJdNPvICajPZLgFLcI/nIEjKcu1yrlzYtp2Ql?= =?us-ascii?Q?cTGpc84vi1fyi5ipHGfixOHLs+zcX8fOWC8ru13jroCG6+PMkj5BBZ7Ht8zb?= =?us-ascii?Q?tiBy1il0pgyaOFxWk3h5oPB7vVN0WC5d+IfVwAFO91jZumlEwpAYtRJYLLnI?= =?us-ascii?Q?K4VGCsoW0SczBkhSXlndsFUV7MRr9+A1A/NSYDP6tmGDTmtOS4H9bqT2e8z2?= =?us-ascii?Q?n1sWDSm2kInPfAeMWtIs+Az6bQsaeumZLKZz29JQxzpLUU3Q0ARYAXXJIDL6?= =?us-ascii?Q?dZbdlQ/QCHnsLJmf9VKhtchZG2P9KicdmgEcWFPUdRow/qLhp8nwaLALZrRd?= =?us-ascii?Q?Ocdyy2Wz80285vOgEoOTjeIqF2OXC7vvtehSOEBKQCPJ5VqX+4d9DXxNscvh?= =?us-ascii?Q?s7klt+q7uQRS5zd+pCki9DdxzW+LCptkw5+CuqWg+xQdSWEMwBybWkTknk9X?= =?us-ascii?Q?hVzKnyX9TxLy0cwOuMzA2OspA7V2pEvNCcgK+zc/4+ZBYwbQZP0qUUwfVwtU?= =?us-ascii?Q?Uj/COFv5s5MbIPHIvjt1XDzhWSoo3vj4VDIQ9n64RL58Kdl+9Jj8r4Czo3AV?= =?us-ascii?Q?WeWb9GtigG/lWopMDyQS0mbOUKnmyXH/+dLdfXE1MdGlETGtt7vgTTRul9yV?= =?us-ascii?Q?/0rrYnVJoAzoDBbDBhWc/GqxC20LXcTKxrA?= X-Microsoft-Exchange-Diagnostics: 1; CO2PR03MB2263; 6:4NitlGl4MLgKF2i/UYfh3pXoXFE8xWSoj6/ae6apj4tfaWC21Nc3va1zhiaEmmlbLpKwtVheiJMX1V9Zy9G3uFzHTWbyioAJnI04A4c6yFKh5H0ACRRhCCEdNTPRB95yZK6npAQTwKg88r3aFdv4Rbx9FHXGWJuRc152FzWX0C/AL6hILnnfGvgNY404aGctsJ/xbl+erpoJkSh6JZ5zdvjbYyfo3VYYhcCIIOYYHDpSWY/dcRfebqU6RurQ54jiFBkNrQu0URXdyyKN8ld3i5ZnT6lBV/NgQFS7itIeys6QGm9ZQ63b13m/04I0q/1PuDaPkMbSEpqoj862EP9IaYeWlDl95Q5w34KI8QANWNEnJPZahJZ8tONKms0QrwWQ5fMOo0RSQYvSyaZoZlxrDmR0Cvn/c3gEoZyf5gCATrI=; 5:d4IY8VdAgaSssmVIC82RvTp0mI78SJ8r+g7kgh+5dcVHgKAPuQ9vQWc59sqLyy/eoynn8xkqDbYubR+CTmMAx1EhUdcs8YYhgGQYSUyrcocDUVs9R8bjiatUJ/1v3h+4Fkg04h8ePKeYtFlf102CnHAfTG6oZiuj4oDBIaQ9psJ1cn8f3YQKrctWbux46A0C; 24:ulKjwkG6VeA5EMtJ3rdfqVNLcgTxuLjchZhcpIBiK3THS+rQFCCVeW4pS4q2lHRRS5IlzUhHvcX6gveFtAs5gkhI+q7+ikJ16XYX6+mdtQg= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; CO2PR03MB2263; 7:KMkk2Lml/o8/U/JxgUBds4oDEgoj1LEP24xH/FO0cqyb2VBREBTMf3xE6S+RxsxVzRQyiVU/yaefNQIn+k14/AbZqubjTa0n8CVYC56S2/C+eEe+0rE1IDM/ieD5CadYO1kgxB1Pi0lZos5/+Ybn7WtOFPIUc7ee+xbypN4QKlLcmxJzCw+HKZpUe1tmpt+K6qvIi2hvs88/L65yEguCkbMiOMVDOhUAez+kXzbwSqCJ9Cd0VLmvGf/6sKcV+WBLoxGQVhsI/drRLKHaOm8wFenISGG1g0v0QYOm+pOYsPI4Y60Qjs3YK/xJYmKUALgNl5pf05TepRNcK7KZ+xHJvw== X-MS-Exchange-CrossTenant-OriginalArrivalTime: 24 Mar 2017 12:42:47.4279 (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: CO2PR03MB2263 Subject: [dpdk-dev] [PATCH v2 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: , X-List-Received-Date: Fri, 24 Mar 2017 12:42:50 -0000 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; -- 1.9.1