From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from NAM01-SN1-obe.outbound.protection.outlook.com (mail-sn1nam01on0067.outbound.protection.outlook.com [104.47.32.67]) by dpdk.org (Postfix) with ESMTP id 31681FA61 for ; Sun, 4 Dec 2016 13:44:54 +0100 (CET) Received: from BY2PR03CA075.namprd03.prod.outlook.com (10.141.249.48) by BN1PR0301MB0737.namprd03.prod.outlook.com (10.160.78.144) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P384) id 15.1.747.10; Sun, 4 Dec 2016 12:44:52 +0000 Received: from BN1AFFO11FD032.protection.gbl (2a01:111:f400:7c10::195) by BY2PR03CA075.outlook.office365.com (2a01:111:e400:2c5d::48) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P384) id 15.1.761.9 via Frontend Transport; Sun, 4 Dec 2016 12:44:51 +0000 Authentication-Results: spf=fail (sender IP is 192.88.168.50) smtp.mailfrom=nxp.com; nxp.com; dkim=none (message not signed) header.d=none;nxp.com; dmarc=fail action=none header.from=nxp.com;nxp.com; dkim=none (message not signed) header.d=none; 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 BN1AFFO11FD032.mail.protection.outlook.com (10.58.52.186) with Microsoft SMTP Server (version=TLS1_0, cipher=TLS_RSA_WITH_AES_256_CBC_SHA) id 15.1.734.4 via Frontend Transport; Sun, 4 Dec 2016 12:44:51 +0000 X-IncomingTopHeaderMarker: OriginalChecksum:; UpperCasedChecksum:; SizeAsReceived:720; Count:10 Received: from bf-netperf1.idc ([10.232.134.28]) by tx30smr01.am.freescale.net (8.14.3/8.14.0) with ESMTP id uB4ChXbX032240; Sun, 4 Dec 2016 05:44:48 -0700 From: Hemant Agrawal To: CC: , , , Hemant Agrawal Date: Sun, 4 Dec 2016 23:47:25 +0530 Message-ID: <1480875447-23680-31-git-send-email-hemant.agrawal@nxp.com> X-Mailer: git-send-email 1.9.1 In-Reply-To: <1480875447-23680-1-git-send-email-hemant.agrawal@nxp.com> References: <1480875447-23680-1-git-send-email-hemant.agrawal@nxp.com> X-IncomingHeaderCount: 10 X-EOPAttributedMessage: 0 X-Matching-Connectors: 131253290916295601; (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)(7916002)(2980300002)(1109001)(1110001)(339900001)(336004)(189002)(199003)(50466002)(5660300001)(39380400001)(39450400002)(39410400001)(47776003)(77096006)(39400400001)(110136003)(104016004)(97736004)(33646002)(86362001)(356003)(626004)(68736007)(8666005)(7846002)(85426001)(189998001)(2906002)(5003940100001)(38730400001)(92566002)(105606002)(6916009)(2351001)(106466001)(2950100002)(36756003)(81156014)(8676002)(305945005)(8936002)(81166006)(6666003)(4326007)(50226002)(50986999)(76176999)(48376002)(7059030); DIR:OUT; SFP:1101; SCL:1; SRVR:BN1PR0301MB0737; H:tx30smr01.am.freescale.net; FPR:; SPF:Fail; PTR:InfoDomainNonexistent; MX:1; A:1; LANG:en; X-Microsoft-Exchange-Diagnostics: 1; BN1AFFO11FD032; 1:4R3y1pkgWrFTf3oH1ZaUk5rtuy/ML6prsEUpCotYueBh1DYltnk2JbT83fdir3F1e1WVvhQUDTrVCd1xG7O94P+NZmbD0YH55kuk19u2heKWaAlU7V5dPZGBj9SOkT41HPFsXjPrBdCBLJ7Bq4r8ONk/9PktfQwuVln9SR34jNkJjtZrDdT7VciwOF8U/qd33Z16gGsaOvyWj2sUjQqMDzO9mQDJNy+xXMuPhgYqG9EsGTl/XBbJTDPZOnGJg8M5md2hphYpP/SO+Uf0EtcsIJnJ7Wweml3+93RX5F+/CPjF5yTOPLab69gVY0hYErrgQfcKPvO9ELp+LCzz5wqCPnfvZIYUCnqrIGtTYh8sjHy5sT4+9l7J4Leny/+TAVh8E/63ybwaULZQ6Mw/Bleh9UfPbeadMZgsTwanPILZWW7JVxOHU2oRFoKgDcGZ2hSzy7RaZR2CwJZVoHpHtENwEeUTueiYgArZnVYJlHGBD9mK3vuBuU61q5GAd+tFu4fqeKaJjArm/6Ph3aIvX+TdoJrJtI+asTDD57bzQjCrM5BmCNpJYQLGX741wp1z7UD3l7K3jvAIIhP2oG69YXeO2GTJyBK4Len5zwMWsNx2lkXNhlE0OZNQQ1/w/fwbrEsxy+0ZTxSMLUDRXvpUTKudp/fGFrSHZuJ+Q5jdJ3dLJqASoblN2xfUqSRTMh5k8njeJs8JGlcrVhaav+lQx600tp/9zyYpbH85p5GToQlme01K0Nr4NcP91cTJ5k5c7ksjPkZA91CFxx9T0w1upKR9dQ== MIME-Version: 1.0 Content-Type: text/plain X-MS-Office365-Filtering-Correlation-Id: dd9aa913-caeb-4b42-5250-08d41c43571f X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(22001); SRVR:BN1PR0301MB0737; X-Microsoft-Exchange-Diagnostics: 1; BN1PR0301MB0737; 3:+xsc3rW/ig1Ax0HPUSzATnjkH4YNu2ieYqkzAGbcVhB4KNo59+RANeWJ6GNUTsmeMjNcFYkhEZpVqp3Zp7z3eGoPJ5sk5LDZvlnC8YyxCwrWco37LPMOpD64+dXQzAfL0UUvG4EcXUFk3K+t8G9zLua1jqL3EcuF6yNZCjpp1dP6qTwqdhCcAcRT2j79Q6TyGjk16eLYmerMIdqS3lmuZOYdvuMqW/chlizp+uTKF34xf3qRjtDJBy7Yak01a7ZSOLw1vE0tgnNTOLqvhkXSD9RTxyd5srVQtO3pCzAiPaOE6+v/MzWPZnrfBk/dFlDKtQlYydI11+28IhzCW5jhSLobUACJfUczrwmqEW7WoQbiaPerOE2jhtVfk84Ufdys; 25:6k9LbQaFxCL68gRt0RWk4SzdqW2+oQw0CdGm39+a423am3VBt8YKNR9H1G9KlvMzo4PN7ECMe+HJJ/hpyaxjieEgIOq9fNEZLJZo1sDgMjkg5juhI3P0mqJEKBDhWosBsR/KXV0Vkc67iFOoUqTA+ZXyqYodoKq/dPsfda55Qh6uFTNwRig5qiSgjZMptl2tATmD4LVSRV9vhWQ5MlN8bsDy3forw8mlyfU/pstzFMvQYyEVoNbYajYHYmWI8GLrC42ZgjERv28vsWAQNozgj0Nx9KQxJrMZWbrhSAuXMM8xVaQk2ucvjZO6Qx2C46f+yARG9h2lGLJboLVTLB2cVOVsuVFVxDmUhuMjX8D/+/C4cBcaKQ9p5rpKdCaMlJKrsOYBMs8Y9RpQdmtxWjpisvjygaclwBgIJ6jUxh0OO8l90nLCAjzd5okBDUxkVXQMQjNa1oAEt1Quv0qRTkX8uA== X-Microsoft-Exchange-Diagnostics: 1; BN1PR0301MB0737; 31:x6PMQM6UGLp6R2sNRCw07omh/P5D2FJxb5wvBt0Uz2n8mbvKJ89Uwd8e7jKp/voozJHX/J3KB5ziiSNBJIxkZRaYwpIBMVwOcT5aDSeq5jWdu5Pisn+RElXITOSjqTz0zY+A31EFHYwbzZmKRA2FCA0XSs+J/KVrLkmF7dRAeHTPU0eRUy5JtV4iK8Wxwf5hO/y07s08DRKNnPVs8OlgIqe1/04TLM9pPudUXQW/PMf/Bibvo77kVM7GEtVZIREaWIRNN+As1KCYr7jFMp8nPA== X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(185117386973197); X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(6095060)(601004)(2401047)(13018025)(13017025)(13015025)(13023025)(8121501046)(5005006)(13024025)(10201501046)(3002001)(6055026)(6096035)(20161123556025)(20161123565025)(20161123563025)(20161123561025)(20161123559025); SRVR:BN1PR0301MB0737; BCL:0; PCL:0; RULEID:(400006); SRVR:BN1PR0301MB0737; X-Microsoft-Exchange-Diagnostics: 1; BN1PR0301MB0737; 4:O7o4J83+8/Ki3AL82KP5JwgOPJaTPdIBSyhvV4CTrmT+FXkm5nO1UeG1Sj9S323Z6RgNVA98Kc4vykai4qgwwz21Ooqq3TYs6QGRnyf1iOQVnUQp/3UTj2k8LKSYT8UWuXVswYhBLgmZ8GMVfSoT6A3c1ktRyLYqLOihSFvuPeDJ96u8k5pYoqDXP44W4OXubVZqxsKPAr2QOhC/PimHZDXGINicRNPCQ1LfE/knTqahFmAOHPSzEvjau2x1spHYmt/AaCAuGFhuhl+3X3FOVWIFKUJ0TREU/Ddi24oQZvjBmMpHmdC6mURqC4COPD/uIREK/I417TjEwdFAAQnc43YJMHjDJLfdwg697W7O8rO6DEAys+5YNJInj2rL+LziE6T30+vrE7XTw5bn44+SF/sTUGGXGoDZzJFa5Tt1HHWyZTv5VACJqXuboqmN+WCsxlRNWVVo78cadFQKCIjCHC1NmKqkYZRSZvedm5I9as+rzucdXYqDwX4ik1iJopUZELfRXKGDFUWi4b6FIv1QuOX6LPsQb4gFxtJVlW+O8KLdRtbgQ1H/CubK2XnvoQUiU7Fs5bG4uZjtqmQUusWOHHmk8Gnjqki3l1VNOJhbZuOkDtMlzYoMCV0JyYSvcJd118PUiHvaZKx2pm/M1BttCmTbg5+JaKGdQo4xNrYr4+bgJL93NVodTbbwLONz47FdSgcA5PIqt/FPXt0VsWVzAUkYFkm1zw6OfvCQVgWZGnb5MF89/JudyYZZwd0y+khG X-Forefront-PRVS: 014617085B X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; BN1PR0301MB0737; 23:NGYLiWxlhIrGqjaA6RpI7kJNl+Mrw0a3RW2vofD?= =?us-ascii?Q?OSCCiF686bXuqwtyIu7zNjzfHb3Gq9A6CtCyp0WQtgnsrcRcq1aAEddxc0KG?= =?us-ascii?Q?LVhxiFowC4+ZKQsBaJOlacBuyfv2JXypnO4Pmm19xRdOMNTPbOBKQ9sTJzsm?= =?us-ascii?Q?kG9uGl8bjr565RgKhAg9G2BTxXeHAqH6mN8D+Dfz+04BZoa2BSf0MkTyklvo?= =?us-ascii?Q?CtBAMSZhyyh9coTIsNG1IsK09Ss8AaRYdDsGtBhdxj7TXZ8fL3JGsuMS6W3l?= =?us-ascii?Q?kApeEIyz0lkiDHzGt3BeE/d66E7KqrnPhQLapl0MK452tVgtwg28p5SW0dPM?= =?us-ascii?Q?uovyLfcG0sCyQS3YX5+WVz8NQu5qTnkAlp/gPSNKH1BnebtehVUNd/H7+sMn?= =?us-ascii?Q?EkJiMo7BaUUH6DcsvIsIaEK4E1BINfZnuMXtmYnKmRkGRuzKYZ2iPyW5pbW9?= =?us-ascii?Q?hs92QzxcE9K64Iu/6euLJS58vTkq/81/AbVf0eh8k24WcTGZi3R4jHYf4htA?= =?us-ascii?Q?Q9pAJpqxB7GShnNI1wXZVxE2uYrYsK4wmOk5Y2RCEgGpHY/YQZ41BPyLiHkj?= =?us-ascii?Q?iwWfvcrX3bRlhZlf/CDeFoYHVj/AEfg09X9mLLa833CmlYZz3aOIQfSbZK5t?= =?us-ascii?Q?mdijoxtDrOEUIZKtAW6SzjcGGvk2lV++C/qAPF/aOiOWICJU6DMbW6xjjbzo?= =?us-ascii?Q?Eg5UjERuFhn2mrJQrKm09xaxzQGlmUS2w7jwrAGsx/27xH6bI71700j/KFVM?= =?us-ascii?Q?zAD6xxc4xgvM2Mei7lzS6JSfxwhtrvPp5pxP+KxT3Ovb8scxbqXCBaG7JZnm?= =?us-ascii?Q?uKtVJXyDzl1ho6HAp8Rd55dCfX4kmIpAQTg4pLlozIvwHjuBtF47O0luAseS?= =?us-ascii?Q?AnfzIQU4jZ2iKrR4xoFMQWNNvFYfaPiw3l6/+39JuUm1IERh6qhJb2n4eNA4?= =?us-ascii?Q?l51IVRyFF/ccszpWFI3BZMNbMrYlo51RLsxiVSmNmMfoKjM6CQ3UAc7Sh8Io?= =?us-ascii?Q?QSMxK2XzYjauii6CXoWUQWaSRGteyOpNcppMdE/P4FQTGJWaOaQq4qc/LYM0?= =?us-ascii?Q?bRnFILNoDbUQbWnnjiR/hPHBTHaRafF5/u1s8A3EtURjwnvis/R/4Vhh5gWM?= =?us-ascii?Q?AG6jypYtMLy3CI1EISCLYTeAeRAn3jSdCCFM1HJMQlI5vj3jQypcQRZcd7PJ?= =?us-ascii?Q?gos3J9FtYx6w4kbz4efP+AXCrdZxl7Eomc6Owp2qBAwegh9cJUQ34GJAmPw?= =?us-ascii?Q?=3D=3D?= X-Microsoft-Exchange-Diagnostics: 1; BN1PR0301MB0737; 6:gasQ81WiqFJZNBoSowWIUewU1fK04AHRpYhiipkgLl94Jnb5um/R4AH4bjqEPyoWn/oFDUcC5a84Kg0oYaMfUVuVtzkoEqRWbyHk3yt5bMvFJEICgeypnIEy/6qqMgPTcvZZyMwED2Y/lCNTSs+8IIYEc10IPCpeYhL0q58rm70rH/3Ypz26iUfoxH5XPGYdM7u95OHEA1J/wMfeREChN0MbLZltJkoU9n6gpqtORefxCwpMpiiuWdwFtT+g0m+rn1/21FUjAIp8EnrkYcvQ05g5zO0Ki5gzZMOC0HzpZLATd8an2Jsc6jtuveaZLO9mMa27oFA6oVDbzzAG8wF213DL+gcX3lZokTw8bQouxkVAqN8RJ3vCbRNj6kvezaRUym1cJgAVD46zSjyR1ZwQjYJtxirIHV3bqk7Gs+zqOSwYGx0bBsW5ye/1ZeGgIZUq; 5:oSXAvMeEo/8nIlx41JpjwG/RjtEl51e3mQqCnfOqMmemFR1TSi2IYem8JnNeMPRMfTFKaZFta1apPuMbondHWTpWWhqMjfZUWFlruxkKMECr5UDHFOamFwrhd4Sg0qynQRqY3sJqSDlG+w09Gb7S48RKyOaPPpv3CM7TRjNea2HP3kPcXNadZXwt+O2volGI; 24:43NGGKXIOhy5suYBfS3Ym3Ly/E2AgaOY2AeDcF4H2z8atwy+CbsuO1c9/EtCytzHsjzq9viIJADxWNATc+C4vuZU3LeMuyUyAuwQsIQxD/Y= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; BN1PR0301MB0737; 7:kONE8L/z6Jj0eGYImgloW9EPDSh0pFliRxzmZvaDouSHzY7vESFlC1oNQjWj8IfMFSQKASm8KG6goPrKVduhpKM+qb/nuk/9ea7tLdz1jZhi12oPEoSsLYtRWO9JLYLKhzbONJ/ubYnHn41Dlfr2GQDtd1hnOiwQqvPfYX4OzrIalEFJAFA0yqdWehSLgLi4VHZGaB6SYEiq1xNcF+7S1oPiygWralg7S81GwcdRafj0MbVyszQ0HKzejDVT9Wg+uO8iSBZ1PlnckYK1PV3xSOAUdZB92HgX4FGXwCeM00UxzhkZbW4+W9wZK+Uflo0ZO3JNXal0MLm4cNxCliRcvlqJQJZDSeIh0Iz4OfNvZ+qzNo7jE7BEfaK0BuqEeU3kQ4ZdrXlWIsNY8LAOtk+Ms1rVkNDJXOpZkTAYpKgjcGKhMVeNvTW0bbG8Fayjpt9DbEVm/pLXL4vby8o5oG5xmg== X-MS-Exchange-CrossTenant-OriginalArrivalTime: 04 Dec 2016 12:44:51.4267 (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: BN1PR0301MB0737 Subject: [dpdk-dev] [PATCH 30/32] net/dpaa2: 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: Sun, 04 Dec 2016 12:44:54 -0000 Signed-off-by: Hemant Agrawal --- drivers/net/dpaa2/base/dpaa2_hw_dpio.c | 32 ++++++++++++++++++++++++++++++++ drivers/net/dpaa2/base/dpaa2_hw_dpio.h | 8 ++++++++ drivers/net/dpaa2/dpaa2_ethdev.c | 7 +++---- 3 files changed, 43 insertions(+), 4 deletions(-) diff --git a/drivers/net/dpaa2/base/dpaa2_hw_dpio.c b/drivers/net/dpaa2/base/dpaa2_hw_dpio.c index 3b8f87d..38fa858 100644 --- a/drivers/net/dpaa2/base/dpaa2_hw_dpio.c +++ b/drivers/net/dpaa2/base/dpaa2_hw_dpio.c @@ -479,3 +479,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/net/dpaa2/base/dpaa2_hw_dpio.h b/drivers/net/dpaa2/base/dpaa2_hw_dpio.h index 8480ce3..ccf2428 100644 --- a/drivers/net/dpaa2/base/dpaa2_hw_dpio.h +++ b/drivers/net/dpaa2/base/dpaa2_hw_dpio.h @@ -65,4 +65,12 @@ int dpaa2_create_dpio_device(struct dpaa2_vfio_device *vdev, struct vfio_device_info *obj_info, int object_id); +/* 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/net/dpaa2/dpaa2_ethdev.c b/drivers/net/dpaa2/dpaa2_ethdev.c index 2603a08..1a25f07 100644 --- a/drivers/net/dpaa2/dpaa2_ethdev.c +++ b/drivers/net/dpaa2/dpaa2_ethdev.c @@ -51,6 +51,7 @@ #include #include +#include /* DPDK Interfaces */ #include @@ -122,9 +123,7 @@ memset(dpaa2_q->q_storage, 0, sizeof(struct queue_storage_info_t)); - dpaa2_q->q_storage->dq_storage[0] = rte_malloc(NULL, - DPAA2_DQRR_RING_SIZE * sizeof(struct qbman_result), - RTE_CACHE_LINE_SIZE); + dpaa2_alloc_dq_storage(dpaa2_q->q_storage); } for (i = 0; i < priv->nb_tx_queues; i++) { @@ -148,7 +147,7 @@ mc_q = priv->rx_vq[0]; while (i >= 0) { dpaa2_q = (struct dpaa2_queue *)priv->rx_vq[i]; - rte_free(dpaa2_q->q_storage->dq_storage[0]); + dpaa2_free_dq_storage(dpaa2_q->q_storage); rte_free(dpaa2_q->q_storage); priv->rx_vq[i--] = NULL; } -- 1.9.1