From patchwork Thu Mar 9 14:37:03 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Madalin Bucur X-Patchwork-Id: 737015 Return-Path: X-Original-To: patchwork-incoming@ozlabs.org Delivered-To: patchwork-incoming@ozlabs.org Received: from lists.ozlabs.org (lists.ozlabs.org [103.22.144.68]) (using TLSv1.2 with cipher ADH-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 3vfCtv25zZz9s76 for ; Fri, 10 Mar 2017 01:48:23 +1100 (AEDT) Received: from lists.ozlabs.org (lists.ozlabs.org [IPv6:2401:3900:2:1::3]) by lists.ozlabs.org (Postfix) with ESMTP id 3vfCtv1F4tzDqx2 for ; Fri, 10 Mar 2017 01:48:23 +1100 (AEDT) X-Original-To: linuxppc-dev@lists.ozlabs.org Delivered-To: linuxppc-dev@lists.ozlabs.org Received: from NAM03-BY2-obe.outbound.protection.outlook.com (mail-by2nam03on0060.outbound.protection.outlook.com [104.47.42.60]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-SHA384 (256/256 bits)) (No client certificate requested) by lists.ozlabs.org (Postfix) with ESMTPS id 3vfCfv0sl0zDqZp for ; Fri, 10 Mar 2017 01:37:58 +1100 (AEDT) Received: from BN6PR03CA0012.namprd03.prod.outlook.com (10.168.230.150) by BY2PR03MB1942.namprd03.prod.outlook.com (10.164.114.34) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P384) id 15.1.888.16; Thu, 9 Mar 2017 14:37:54 +0000 Received: from BN1BFFO11FD038.protection.gbl (2a01:111:f400:7c10::1:169) by BN6PR03CA0012.outlook.office365.com (2603:10b6:404:23::22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id 15.1.961.14 via Frontend Transport; Thu, 9 Mar 2017 14:37:53 +0000 Authentication-Results: spf=fail (sender IP is 192.88.158.2) smtp.mailfrom=nxp.com; nxp.com; dkim=none (message not signed) header.d=none;nxp.com; dmarc=fail action=none header.from=nxp.com; Received-SPF: Fail (protection.outlook.com: domain of nxp.com does not designate 192.88.158.2 as permitted sender) receiver=protection.outlook.com; client-ip=192.88.158.2; helo=az84smr01.freescale.net; Received: from az84smr01.freescale.net (192.88.158.2) by BN1BFFO11FD038.mail.protection.outlook.com (10.58.144.101) with Microsoft SMTP Server (version=TLS1_0, cipher=TLS_RSA_WITH_AES_256_CBC_SHA) id 15.1.947.7 via Frontend Transport; Thu, 9 Mar 2017 14:37:50 +0000 Received: from fsr-fed2164-101.ea.freescale.net (fsr-fed2164-101.ea.freescale.net [10.171.73.197]) by az84smr01.freescale.net (8.14.3/8.14.0) with ESMTP id v29EbC5o031838; Thu, 9 Mar 2017 07:37:48 -0700 From: Madalin Bucur To: Subject: [net-next v2 08/10] dpaa_eth: add four prioritised Tx traffic classes Date: Thu, 9 Mar 2017 16:37:03 +0200 Message-ID: <1489070225-7891-9-git-send-email-madalin.bucur@nxp.com> X-Mailer: git-send-email 2.1.0 In-Reply-To: <1489070225-7891-1-git-send-email-madalin.bucur@nxp.com> References: <1489070225-7891-1-git-send-email-madalin.bucur@nxp.com> X-EOPAttributedMessage: 0 X-Matching-Connectors: 131335438736741778; (91ab9b29-cfa4-454e-5278-08d120cd25b8); () X-Forefront-Antispam-Report: CIP:192.88.158.2; IPV:NLI; CTRY:US; EFV:NLI; SFV:NSPM; SFS:(10009020)(6009001)(336005)(39860400002)(39450400003)(39400400002)(39840400002)(39410400002)(39850400002)(39380400002)(2980300002)(1109001)(1110001)(339900001)(189002)(199003)(9170700003)(305945005)(3450700001)(43066003)(50466002)(6916009)(189998001)(6666003)(76176999)(8656002)(33646002)(5660300001)(77096006)(4326008)(8936002)(47776003)(50986999)(2906002)(50226002)(2950100002)(5003940100001)(86362001)(38730400002)(53936002)(36756003)(48376002)(81166006)(54906002)(356003)(69596002)(8676002)(85426001)(105606002)(2351001)(106466001)(104016004)(110136004); DIR:OUT; SFP:1101; SCL:1; SRVR:BY2PR03MB1942; H:az84smr01.freescale.net; FPR:; SPF:Fail; MLV:ovrnspm; MX:1; A:1; PTR:InfoDomainNonexistent; LANG:en; X-Microsoft-Exchange-Diagnostics: 1; BN1BFFO11FD038; 1:s3tNYTGQB30xIn14LklDTW9u1TpkEDFG7PN1vvqfsgWFjg/LGwwW/wPtVOlroTpd/iYsz63D5ZAEp3Zpp7W+KXeKRJVVSCDZwWpSN8apltkyCqwA996pCH3X9adz0JFni9zCSOJ8+TNIv8WaeRd3smX2lEiiLZwtJM2KBeom2mqmL3+cG/C8ovsob5YH5Hr/2f6vZoIYgQcRpGwCOxvWD78AXyckBF68nOMrm39HwMFka49NEC5E05eIVyJ/GEz+Hpw4MTeiCTum+CKPAFkRAVyK5QhDL7b0e5pyllwhftHju71t+3cFFuoXPOxHKLGPLhbqOUCrLJsSwaPlNHuMzOOvsBtp7gVi3J5uLsD2tTE+1ietZaqeYIaVHjCaslo+0FfyH641Jq/09P9gToF3uH88P0oHKhkC02l/4fbHLu6am22LTx2EbVp9gBqMounXlFci/HM15zMZtQJXyFUoZXJvXKcW5FdyrhHCC3aQKFcPPVBa8rvTM0pOyl2JUus4VXI6XScZ9CMWhAfAWWZnSU2LStmHs9D0wkXazOweCDZ5U+DwUkPoNyQEtO9mEOpEbTV20LxY5nxdPiYAlhUqOiowwylmFjRX6LxT2S/4br/KiZzc63z0reDmMCmHKmJYsVC54sjHr4ZLUXkUT2CqTImw9kVRHXzVV1WEs+zwc3wGxoWInoGPbGirK3996H8uI8rlDoTl9PTMAxDGehX7Pg== MIME-Version: 1.0 X-MS-Office365-Filtering-Correlation-Id: f139a043-28e9-45e0-12d0-08d466f9dec5 X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(22001); SRVR:BY2PR03MB1942; X-Microsoft-Exchange-Diagnostics: 1; BY2PR03MB1942; 3:cOgRV2qpRaBr1rRFIPYulACkwp74L/Tm3iLmmgOtQ0LpiqPY5kSiu/ChtuKpZhABtgk/k8Xvj6dQ1KbSKXJUYkLXjWBtT6jkHS5U13VpRKP9YE8NlAxQS369AlgYE+K2u0S4QEpTYy5sCSVJisnHRIoqUzzftMzaT/gIrQZEmPBqIyet9pKnnXR4crbc15zndZTXVlUxBvfOxJ72Ec4pal0mrBmRXCDT2c5eFk4skeY880/h+LfAyhkNJVns/WcB+t0wDgPravUS8Z8RikFj69kerf0QICAYypMXVlTtOWt2HVMsmBijf5JGOQvChGdt/+8n8T6a6Jm6vPKimlFawDAXgOLOcsiMo8oC0Q0a1HafzJEveBhzBGslbj0YSVKb; 25:oBEuw3zkgLcyywiy6Cm7P7F5ZuIWbDIR1Sjf/4ZmldGbzo2mTt8sQiZ2Kz4kFRN6SX8om5GQTs4nKVBj28oxM6hw2zVVXBEOQ5wSaZWQPxzhxfP4KJjYSby6rd2wo25b7vH/CTYIGovWvTfZ7E/ZeuY4dR0etA3IX/f4ZNYZG9Dye0oBsjhXWDXg5mw3bfKl0qr8gOInapwklZcD9phcQeakPZAuzrRtPLVp5QU+C0TO+QqLKQbyik6Dld8RGBq/b6c81DtX59tiMXky4EgkqR2lCG3woW6X62Qk1fAU4s53I4O5kxXpl4yg90RbucCeXVynCNyNMXbjFkO13Wx2y6i16xArDqA8MasfX5lG/axWlZQHor2rp1Hs6b10lB54/pWmWMzFIddqH5J9FQXEAwSapkhkNH9suWEkTcMgSLi2mwR8JdIaX8COco8WDs3QS5BlE3deLzYbT51tw2EuKQ== X-Microsoft-Exchange-Diagnostics: 1; BY2PR03MB1942; 31:JYJpAnjPFXRH8ucm/LR9zp0Dunc5QPZXAerpXECKSwlUHxYSzQKgcQBMHtPOF+iGwgxlHe1Q363Z1iMvx+sup+pdwB1VC6PHJfBiNjfmQtbGD77F2dcxSfeA0vKCmz7zGPdhmMUDlSkpM/E/PRShS67r6cmt9M+feNR7Kf866q7vTw5VeP38vISkwvKwgFrfA3lWPCThjylDwPdO0rk5ycIyYsuDiy2zOm77ctGtEisG6HL70RoxAY8BYHA5DHSAMK2I22Vim2Y4kPFx4AgqrQ== 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)(8121501046)(13015025)(13024025)(13017025)(5005006)(13023025)(13018025)(10201501046)(3002001)(6055026)(6096035)(20161123565025)(20161123561025)(20161123563025)(20161123559025)(20161123556025); SRVR:BY2PR03MB1942; BCL:0; PCL:0; RULEID:(400006); SRVR:BY2PR03MB1942; X-Microsoft-Exchange-Diagnostics: 1; BY2PR03MB1942; 4:by8tOztS7cimMOXplVw/WjIxduP2IWZMfOE8zprKeA0LrGT5fN6dUFOBPtG5ZS7Hlz81AT1EPAvEmZmJHxeWhYar3SUB8sJb8Isjmyx2WHNz5oJRBn1lL3qHueNvkc8U+TGebM+zHTfK9lKDvhEACC7iTSUk2xQ8m/boKE6tnQ5Ho4+gwT1g5npxc4irb/argTzxg7QAZClibfrATrQ2Hcgkssbwq520S2EWVmS/ChHYSS1nzrW4vur+HxjpZChCDa1qqc5GhkJ7dNdUJh9NyB1H3jUmZvqVYcVcFMdNftMcaOpACudt/xJHscK6Us9GYMrnDv1g0m+5W+9zRSEtSGbbTDO+LXG2MBuhQqYqrMbBDaprPdoHFxOvbRjzWiZjBny9T4ZcJUHA8NA0LNfhSS+2RAR615Ko0T6qacLSN7Uc23sMxlOKW+EGVoKgpNbUnurQvhwYbDR/wc42BA9LxEDG4+vb0ee2ACDZouom8k+VwojAz5vGqaF42tCF44kY7yqmz5HEOHSjNqZ7tL5cWWGG6Vnc4dQz7BZELpqu+zSDgj6naGEcpaU9eRDwiYrLKbEjbcF1QYBf7deXTuZSnaaDq6nJHobPmLVCO6c8Bk9+mJdIMT4as177OOSP7cI5UHp/gvvz6kRfQcTo35d+X61UC0aADt6ewvXDVuJEmC51zX/vfXU3unlijXlUrjmGLX8gRqdR/LaP17g51fJ+xXiXBRvVFH+VQADOyXXrnCaFdviUZDtcmUy3X6bjW8GZ X-Forefront-PRVS: 0241D5F98C X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; BY2PR03MB1942; 23:jLU1+ShzampLs0bHalzN1WYHNro18zm+oLHjidYZ1?= =?us-ascii?Q?AUKrIeJs2akHg/LKDKgNqoFyiW/ocOJh+CWiYzmst6TjKxZxOZe3GmX99BzV?= =?us-ascii?Q?ehOOVU8ntyDs8dDzwSNjAzd/rygxnytPvioKo0bMFG/vcikWPPoEmcWrJwI9?= =?us-ascii?Q?LZJ6iw5RRmqHArkoyen1UyWkU0jzUZxW7kCnCTEMaQ74onXLjn4Y803jo9UG?= =?us-ascii?Q?R5KLBmDl3Wt3EcM+s5Zn+khRlfnJXgH2JfhILbvFn2KfGnjGr+QWjhzTPQhY?= =?us-ascii?Q?/ah1q0/RvoVzTmu8gSxOvCTx/jEDUKV+whNnF6/A/cO3B7lk8HonRlFCLKAn?= =?us-ascii?Q?q/SJ6zObl9dO/kV+L43zMGd+UPDuQkAGTYESxvTztP0Q87rEf5xvDWxn5VNe?= =?us-ascii?Q?mA0w9GZOh70U2CARI1chtgr1JKeBJn7Q8+saI1lzn7WB8n1eXC3B8ZE2EoNP?= =?us-ascii?Q?pSA/W7Gkgz+UNWw9yImGiJCKBhZPIndwaho7AgLwhZ1AxH9SLgZ/O6Dnum6b?= =?us-ascii?Q?qJGCTKEP2cvu8Vxx0yXpcuRIKETUlwHAR75eIJupFfeHr8dNyaUeS0Fj1B0y?= =?us-ascii?Q?76dbpcwE1WAvBzXlHp11KJtz/RkHdscjRVuY3b99hV9ieeXo9xUNV4zau+68?= =?us-ascii?Q?5OK4tJGDpporpBHheNCrFfePq0WQcVSpevYFQ1RX4U7DL+AUa75+Wj/hp8bt?= =?us-ascii?Q?XzayodRXtZRJ9Mm2Av5RpP5Phg/taL64RVQr6zO3bS3m1Kuu0peNUQUZUFVH?= =?us-ascii?Q?bihXIA6YP4uhigUITgGiu6AGNQ8SMQY+xuvSihBgFlj5MB/1J4BPx6LJdhkD?= =?us-ascii?Q?G8GXHr3nhMyIwj9FJeX9IykGYMThzYsaE18DhcXtSD7F6DVWQUh8ZzXw2L/j?= =?us-ascii?Q?QsgedF7XgiSaKZKtIUjQgsrtWbsQsXDQaQ5IUoNml98UTEak603ofib/yFIn?= =?us-ascii?Q?gzrGti67Ak12X6L/iCTa5mf96dA/ivZvJzREjzslZ3LgUMQKB8Ked3j5bzmb?= =?us-ascii?Q?aXateYQMEzozV9c4DJ+e8LlAtAscyC1FNV90585SrbU/d2XI/snAlDHe/pfp?= =?us-ascii?Q?mcfNCzws1dlGqleDFAcl19QF1IQ5KD7phkCSDYjmuY5vXE8ubFfEz4xaHmis?= =?us-ascii?Q?dCHEkYAZzOm+YyGhyHY5hqO93wUxbE/ypnBjKumvYW2RhzwnkgKmc7ap2vrv?= =?us-ascii?Q?FxzioHsAHNl6tjzYgLHCxLx0EGFSevkZrUCeiimmjPBos8hHrAB+SWitFuYh?= =?us-ascii?Q?eZ4l6WXe1mRWisq/1X8SPAhah1xpH/uvPIJoPRFC/w48CcbzFOpi4XN34rqB?= =?us-ascii?B?QT09?= X-Microsoft-Exchange-Diagnostics: 1; BY2PR03MB1942; 6:1WoyeZxr8SWTalsOMs74Q8fQJm9TOVTvDddpwUutgrTpbKKI/bmYYfwcF47eUltkYgwVDSV1et37Z3YL7NO1hRxBHThcAwheR95t5hTX55rDxt0rUUYGtza3GgoPvaTTQqiU+EvVr7CCkvFV9BlgqLVCQtSJsgR+jLRdUS4NaCkVi/B/8qMlcSRyX8QLUHKgiXpkEe/r7h8kxz2bKmPS7BatbupdM8681JSd/gPuk8Co9XQxE/5Zm1ROPUrCVcTxfrRr3k68SYYIwuv8FCqva0fl/mpp4/NAdW1BreDI+ZeXGktPvP1QI6NRV9HA7VBC+EiPwXQ6My8DWgIJGBKbDKbow/KxGHqCD0JDCY5X9KgKc3m6g1DA3p06VQJ3ycKMDmO3xmET4U44unTp7PsbdKfkVcz4IPeyXVKvT3l+gh0=; 5:xXGKl0YV7G8HwQf7PH2FdaBOqd78If92nIfjcEjz0ZEctht6vSfF73bFEPGb11cZUmVBiCw3xSE5ZV94g7Xuvpz9IbGbPtXSg//n7vXdzSONvIfUS/dbYY2n95bKbLWbn6E22CktYvQFYOUc7IYtCHMnxw3kqABNHwl6QM3WKMB9AqGltT/0mTGtvvC/j3sj; 24:lliKfEDUcUE8xR1gauzk4wPmmAQ6BpzVIXe3fPd2Q/2nzMjR6FXPFi8cew/ovLki/FYmAp6BRRSlWAIv9+Pp/do6vbk0Vc9YnmtkiC36LY4= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; BY2PR03MB1942; 7:5TiQLhK+3m8P4R+rB2ccUfgecQeEF3bzpuxraRrp8M8KWS/PNTfib0qNSxpHk0dTrkykThutvHzAo/HCC9JyD1SFBqmvrU6St6FQE0YJP6ASofLxm/hqKQ/xmuCrqsaufUVZuJS9Q+fCrgIu9yt7HSthFH6rk6J9zgfEb86Z8PiTNruwSJwbGJ7naMTz6kN2sfnM+KUnlrjBuDHvpywx4gKifd7/CvuCKOCPNzp5787fJuCeBpMdzlzEEuWYMh4bCSnj1vCl0wT/pBGEFFHciXvoBLG6HfUs8+9+AjVbunK9dSJcyuPAjVjH15A152AKtJlKz1c97ZPQ+3lS+Icf8g== X-MS-Exchange-CrossTenant-OriginalArrivalTime: 09 Mar 2017 14:37:50.9753 (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.158.2]; Helo=[az84smr01.freescale.net] X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: BY2PR03MB1942 X-BeenThere: linuxppc-dev@lists.ozlabs.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: Linux on PowerPC Developers Mail List List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: madalin.bucur@nxp.com Cc: Madalin Bucur , linux-kernel@vger.kernel.org, camelia.groza@nxp.com, linuxppc-dev@lists.ozlabs.org, davem@davemloft.net, dan.carpenter@oracle.com Errors-To: linuxppc-dev-bounces+patchwork-incoming=ozlabs.org@lists.ozlabs.org Sender: "Linuxppc-dev" From: Camelia Groza Each traffic class corresponds to a WQ priority level. The number of Tx netdev queues and frame queues is increased to NR_CPUS queues for each traffic class. In addition, the priority of the Rx, Error and Conf queues is lowered but their order is maintained. By default, only one traffic class is enabled, only the low priority Tx queues are used and only the corresponding netdev queues are advertised. Signed-off-by: Camelia Groza Signed-off-by: Madalin Bucur --- drivers/net/ethernet/freescale/dpaa/dpaa_eth.c | 43 +++++++++++++++++++++----- drivers/net/ethernet/freescale/dpaa/dpaa_eth.h | 8 ++++- 2 files changed, 42 insertions(+), 9 deletions(-) diff --git a/drivers/net/ethernet/freescale/dpaa/dpaa_eth.c b/drivers/net/ethernet/freescale/dpaa/dpaa_eth.c index ae64cdb..ac75d09 100644 --- a/drivers/net/ethernet/freescale/dpaa/dpaa_eth.c +++ b/drivers/net/ethernet/freescale/dpaa/dpaa_eth.c @@ -565,16 +565,18 @@ static void dpaa_bps_free(struct dpaa_priv *priv) /* Use multiple WQs for FQ assignment: * - Tx Confirmation queues go to WQ1. - * - Rx Error and Tx Error queues go to WQ2 (giving them a better chance - * to be scheduled, in case there are many more FQs in WQ3). - * - Rx Default and Tx queues go to WQ3 (no differentiation between - * Rx and Tx traffic). + * - Rx Error and Tx Error queues go to WQ5 (giving them a better chance + * to be scheduled, in case there are many more FQs in WQ6). + * - Rx Default goes to WQ6. + * - Tx queues go to different WQs depending on their priority. Equal + * chunks of NR_CPUS queues go to WQ6 (lowest priority), WQ2, WQ1 and + * WQ0 (highest priority). * This ensures that Tx-confirmed buffers are timely released. In particular, * it avoids congestion on the Tx Confirm FQs, which can pile up PFDRs if they * are greatly outnumbered by other FQs in the system, while * dequeue scheduling is round-robin. */ -static inline void dpaa_assign_wq(struct dpaa_fq *fq) +static inline void dpaa_assign_wq(struct dpaa_fq *fq, int idx) { switch (fq->fq_type) { case FQ_TYPE_TX_CONFIRM: @@ -583,11 +585,33 @@ static inline void dpaa_assign_wq(struct dpaa_fq *fq) break; case FQ_TYPE_RX_ERROR: case FQ_TYPE_TX_ERROR: - fq->wq = 2; + fq->wq = 5; break; case FQ_TYPE_RX_DEFAULT: + fq->wq = 6; + break; case FQ_TYPE_TX: - fq->wq = 3; + switch (idx / DPAA_TC_TXQ_NUM) { + case 0: + /* Low priority (best effort) */ + fq->wq = 6; + break; + case 1: + /* Medium priority */ + fq->wq = 2; + break; + case 2: + /* High priority */ + fq->wq = 1; + break; + case 3: + /* Very high priority */ + fq->wq = 0; + break; + default: + WARN(1, "Too many TX FQs: more than %d!\n", + DPAA_ETH_TXQ_NUM); + } break; default: WARN(1, "Invalid FQ type %d for FQID %d!\n", @@ -615,7 +639,7 @@ static struct dpaa_fq *dpaa_fq_alloc(struct device *dev, } for (i = 0; i < count; i++) - dpaa_assign_wq(dpaa_fq + i); + dpaa_assign_wq(dpaa_fq + i, i); return dpaa_fq; } @@ -2683,6 +2707,9 @@ static int dpaa_eth_probe(struct platform_device *pdev) memset(percpu_priv, 0, sizeof(*percpu_priv)); } + priv->num_tc = 1; + netif_set_real_num_tx_queues(net_dev, priv->num_tc * DPAA_TC_TXQ_NUM); + /* Initialize NAPI */ err = dpaa_napi_add(net_dev); if (err < 0) diff --git a/drivers/net/ethernet/freescale/dpaa/dpaa_eth.h b/drivers/net/ethernet/freescale/dpaa/dpaa_eth.h index 1f9aebf..9941a78 100644 --- a/drivers/net/ethernet/freescale/dpaa/dpaa_eth.h +++ b/drivers/net/ethernet/freescale/dpaa/dpaa_eth.h @@ -39,7 +39,12 @@ #include "mac.h" #include "dpaa_eth_trace.h" -#define DPAA_ETH_TXQ_NUM NR_CPUS +/* Number of prioritised traffic classes */ +#define DPAA_TC_NUM 4 +/* Number of Tx queues per traffic class */ +#define DPAA_TC_TXQ_NUM NR_CPUS +/* Total number of Tx queues */ +#define DPAA_ETH_TXQ_NUM (DPAA_TC_NUM * DPAA_TC_TXQ_NUM) #define DPAA_BPS_NUM 3 /* number of bpools per interface */ @@ -152,6 +157,7 @@ struct dpaa_priv { u16 channel; struct list_head dpaa_fq_list; + u8 num_tc; u32 msg_enable; /* net_device message level */ struct {