From patchwork Sat May 27 10:24:58 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Shreyansh Jain X-Patchwork-Id: 24752 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 DA37837A8; Sat, 27 May 2017 12:17:52 +0200 (CEST) Received: from NAM02-CY1-obe.outbound.protection.outlook.com (mail-cys01nam02on0042.outbound.protection.outlook.com [104.47.37.42]) by dpdk.org (Postfix) with ESMTP id 46B87377A for ; Sat, 27 May 2017 12:17:50 +0200 (CEST) Received: from BN6PR03CA0084.namprd03.prod.outlook.com (10.164.122.150) by BY1PR0301MB0904.namprd03.prod.outlook.com (10.160.195.143) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id 15.1.1101.14; Sat, 27 May 2017 10:17:48 +0000 Received: from BN1AFFO11FD041.protection.gbl (2a01:111:f400:7c10::136) by BN6PR03CA0084.outlook.office365.com (2603:10b6:405:6f::22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id 15.1.1124.9 via Frontend Transport; Sat, 27 May 2017 10:17:48 +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 BN1AFFO11FD041.mail.protection.outlook.com (10.58.52.252) with Microsoft SMTP Server (version=TLS1_0, cipher=TLS_RSA_WITH_AES_256_CBC_SHA) id 15.1.1075.5 via Frontend Transport; Sat, 27 May 2017 10:17:47 +0000 Received: from Tophie.ap.freescale.net ([10.232.14.39]) by az84smr01.freescale.net (8.14.3/8.14.0) with ESMTP id v4RAHYtm029968; Sat, 27 May 2017 03:17:45 -0700 From: Shreyansh Jain To: CC: , Date: Sat, 27 May 2017 15:54:58 +0530 Message-ID: <1495880735-1651-3-git-send-email-shreyansh.jain@nxp.com> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1495880735-1651-1-git-send-email-shreyansh.jain@nxp.com> References: <1495880735-1651-1-git-send-email-shreyansh.jain@nxp.com> X-EOPAttributedMessage: 0 X-Matching-Connectors: 131403538677452283; (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)(39850400002)(39860400002)(39450400003)(39840400002)(39380400002)(39410400002)(39400400002)(2980300002)(1110001)(1109001)(339900001)(199003)(189002)(9170700003)(106466001)(2351001)(38730400002)(110136004)(105606002)(2950100002)(77096006)(6916009)(86362001)(5660300001)(189998001)(85426001)(5003940100001)(498600001)(33646002)(68736007)(36756003)(81166006)(8936002)(8676002)(54906002)(50466002)(50226002)(305945005)(6666003)(53936002)(356003)(2906002)(4326008)(48376002)(8656002)(76176999)(50986999)(104016004)(47776003); DIR:OUT; SFP:1101; SCL:1; SRVR:BY1PR0301MB0904; H:az84smr01.freescale.net; FPR:; SPF:Fail; MLV:ovrnspm; PTR:InfoDomainNonexistent; A:1; MX:1; LANG:en; X-Microsoft-Exchange-Diagnostics: 1; BN1AFFO11FD041; 1:cFnG5bzNyUPdpGKpkSEAB8udwf4OVCJUOvlAgmEyYEpY+tjqhhUpHiQjOLoCY1KKcaserJSEbZ1ez92IDD5Qte0gfdva06TEpwWWfxBRdrqV14djqMqQupYWfqQS8n8f7LeYOCclMMvSiiT+nb5cGJjNox5fRInKN8Zm5VhzNNQsEkP8q07zpMiIAhlXkwpHSQdMoAI0lqgkS4rCaTV8MHPo3XvHmetU/R/hAUsK/jPh0xIPgFbRm4P75YLY/Zb4GfbMcPe34WKNbK/NYeYs6whagH1mXf7ZTUVJClr6YkiIWtNg9PbO5WuBpq0lKgv2vJbSLASDKFXIMQFh5T8kw4FmFNmrJQ5Mz5FxrYuQBw390ceyZj4sEsKpFpGWUnPWZ8Z5Qbpqb1uc+j1PcBYSb03aE3MmbkHKnyKeeQK7ojEyPGW5GI9ubVh8fZWWnCKj/X7weOx302UmOgUch+fKJGsZPeYUvOjIXXV57Jvgy74rm6IQ2xvK1g5jWOZLLV0V1G2OGVCRqesPlBhzoIwP1LMmEUXOxFtUGbM2abLgXTyRs3GEssg7h1K4gMg8ADzZKZpqrs2/2L0sN+L4ztWrYBWBzvBOV3tEzbaKscGkXqSiu5eHPePricJV5IovbSmQzrQV2FZNk8c/rrH5YAqLue624hP3ul84BHkzyoFDqq94EA51d+oDQ9N+v3YdhC7SqrNYn7Dmwii6LRkd3GlaUg== MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BY1PR0301MB0904: X-MS-Office365-Filtering-Correlation-Id: f4750383-1d20-492d-ec9f-08d4a4e99f8d X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(22001)(201703131430075)(201703131517081); SRVR:BY1PR0301MB0904; X-Microsoft-Exchange-Diagnostics: 1; BY1PR0301MB0904; 3:NnpyNFC96O+2nNW0V1ePFlX9+OF+vRDjlp0O1T0fdBxq6YFhtQryGZFWs8eYXTXrTj57fQ1//re7IPB0Vu5ObL7EoDqulbw3b5WFJnjjVExWS8t8RVtqKnXMrrbvg9pcPHftEMgX/IIlQBETC94Z408CDznXZWmNfcMqc1X9SjqLaFPTYHmr38VyzTZE6q6UjFSaH7JEpekQtZ1V5eYcAV+2NCEhyl4r+xbgmRUAnJXh8XdtQJmaQoLqlB5EJOqVz3sKJZt+XoHec8Rq6fafewwGDjuhFdN3hdUhCU2iDh8jUPaS4Bjuo5hkuYful+HQV12vcPt+fOKmELXaMdHsUqwG/KOOXEXqQxwXfuMiDMGwooXuliauFhCWdhSHGQwQxczJ7BBkwSmPs5oPDumPKX8ljlzg5OXl4dGBky2Y9M+8oFrxLQpj7MklLkP0/RIY; 25:/sn9N4JA6+X2s73pPFVgfIRLhP4EapzTEgp863KcQVwTLXpu7/7plE6173U/kSOj1wnmZ2Ytpj4ivDoHqThJ3+U3Amulw7ne1wpYTEofzhjpvK6Bw+lv7yfZgx8tBywOOX9L+qQus5pXUV02eJGkFwUNV2XHN9ypbx7rdLnY1xg+UxupQwASp2AgG2uaqAxLCEWn7uzXFQqccK+oFAjvlEHZNUeHz/EXYTaz9870GWFcN3Man8XLVyupSeB6ZT4C+AJb0TaB5mWhBzdVpwcHn5koJwp+I1Ht0AVJnXaWSyvKJYZZNiRpKy+utP10T83osJlnKzEjabLolHk6rjUm4dhO/0HWrkldYiiikFd6mH6wVAS0J6UxHXdjmxEZLJx0oLqcbvZMxcNRjuojIke90HlQQbxJlMNWatm+QoZCYa86Gb3RmoAVzzhEdfzoOmdzXAn8BRo31A6NBCnjdyFJMhA+eT+2yudF4xbGM05SK8o= X-Microsoft-Exchange-Diagnostics: 1; BY1PR0301MB0904; 31:ENIAakf0ZyJT9aKXQoSvK3l6a0P6p7fvz7UNJwD+n/DvKHsYDZZClgYz4gZ5TbmXCS2S4/GPS12SJE1l8Pi4Al76tZHq5DJCzDSjcOzd8srze6IYsvoBX84piSZwyZVOIKIfc0QNlMaUpT7R1nGlbIwYfyeyy3YKnQ6pX+92Ydlop5xh0RIInpoPaLiB4bXtdBHG0Z1jz+mcWhR+0ecbX4I2+0SFSIkAu4Cd2MzxOwZbEg7kdzFnkvFhOl3Ti11/AYNlm9G0qA7SqjDwJhZ8bw== X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(185117386973197); X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(100000700073)(100105000095)(100000701073)(100105300095)(100000702073)(100105100095)(6095135)(601004)(2401047)(8121501046)(13018025)(13016025)(5005006)(10201501046)(100000703073)(100105400095)(3002001)(93006095)(93001095)(6055026)(6096035)(20161123559100)(20161123561025)(201703131430075)(201703131433075)(201703131448075)(201703161259150)(201703151042153)(20161123563025)(20161123556025)(20161123565025)(100000704073)(100105200095)(100000705073)(100105500095); SRVR:BY1PR0301MB0904; BCL:0; PCL:0; RULEID:(100000800073)(100110000095)(100000801073)(100110300095)(100000802073)(100110100095)(100000803073)(100110400095)(400006)(100000804073)(100110200095)(100000805073)(100110500095); SRVR:BY1PR0301MB0904; X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; BY1PR0301MB0904; 4:dhUh0nEK7gDCHGcPFRFHrLWg9j3oK0wL0GMJPFyx?= dDQ7moA17h4jZ6N/jtb0UimfnKI4+2MuyEY6YEOLLMhF+eWiFJXbd0ImcmmjUL/jDhExYEUjGl6ohTs8kG3WdHzwHxXa7jLx5h1HTu1a79NMY0tiPlYR3yt7ahXzp2QHZHui6Vj9qJE7GaUWZ6+9Vsya+0QB1NPPP44gnfRO/xSi3Y3CiTlc+EhDobhpR9/j+A/syT/GWE8IG0vTWLJMXUtSbYOqG6atXTf7lFH5lTxsTXpFHM0Dhj90Tix4yw5QvDBpiqZEBCKGtXc4QWsrXy9+fj06mLCx3DwKVKzFnQ2B5lZYyQggUMZQpfyshH1vB50AqSWXxk5nnaLgADZPsScxf/S19YTJg2/MhobN1hIo+PYDi66NiEgInuEMgNmYCWc0Mf0nTs9x4w7P9usQR3nFz+Nnt9KgGzYvQ9JOeFDdnwMnJkqyBQTgUcwkZiBGfzTvk88QUB2X9iOvpepdqMKyeVjDbDCoyyHCXLAXHj5lsc1OdHz8JDBHDjP+Pn3h5RLbHoZ78R2gzArs72BEGIY7OGb0o5uqTsgFp/WRxz5mrs7/wLPudYxwelGTEW+rJ/5XsqJqLVcvWJxchg5e3WPTo/n1I2W8eNx8c5ygZuxoTNOnMcMBSNe3n9mMXSOHKyJUCWdbtmtU8TGMT75cgMggplzVlb6tmIvXwNwO5uOOSSp8IeAWYkxe/3edqDZeIuYZnJbHaoHK0Zoa2tEnmtLDjnQMODObasl+LETWImdgUPV0fOHtrR2Z21WezaC4+ilPbNM3/1zET/GhMEqwYDeAOrp4Jy/QqixJgglpREkqMSP2rdqNq1Kr4aMKI9zZt9C1/Y9fRdF55T4HHCOAGnNLru2uZybvLGiBziCmbPeBYRs96Q4rW/dTRihDrmm7MDInvOKaaVx/DvEV9+rMZlL1Z+gzjZBamRodh6+X1ThWgbH/YG4hwbLT/EF12QNPHzuppkF4w4MUlMDABz9tc5uW/XgEgz9iEksfRTWbCjtVjKdofD+Txwz2FCnDneMnUYBXK+q4UhaWiuDhsZPswQrjRPlv6KwOs+XAekkR51CxHZYGeqgJYUoPBRKAU4bmggaNQ11auy8RIH1LDA780s7aFxYQC6yz/ZJarEaUmA6QVDkm2JB30E5M+9f3NuFT9cgel8J5tF6EFzTqi/ucM+RVL4Pd5z4F2/ldPpoF0oXw3PdDIXYa46hWjAyqZXWqAefxR7HF0KtxKOkF3pizVHac X-Forefront-PRVS: 0320B28BE1 X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; BY1PR0301MB0904; 23:TZoa7wWe0qs2LR5QGEJ7u8ISTyEVA3onuSHxQlA?= PU5jvZB6srbLwCzRocYDLw2Eb8aeuOgURTQt5zX9PpzEsjtl4Q3S8Ayzi40NYVSDemBUbDEfTT3+NL5+xId8XW6RKjoGNvipm9h7DqbKNSRq4F6fyhpM5yrsBsvaJrQvGMSrouwDt7xM8yS/fYq0Chr41AghJh1tgMSzoabZQbZ1FTzcpa2El5o8tJWBR1D/yIg8Fws8uc/MMIGGvuNxUmJn1IT6LnDoz1fDqdsmvWNqOQraNm3fPzXGjvjw4vOS4E7lJqzh3FsvNHs11TWpFs+y8a9nXi8GdElg3LNHm5mftIlVSKKJupMLKsh4DwdAmju0na8giB5+/rCA8VV6OVVRH66dY8KR7nG0Yh7Gk0EFl9VL5ruTCMbnmNSsnpl81QA2BXepWjsBAObwu1pknyNPXIUru4fP4ezG8PvS5rDh+hf19ulVP426+jzsW0+jjQJe8t+2SUB16SKyLeh95FeizGWmVEpXu1KLX7N6a4fx9IiOPZYmpvuLmslidUvZx/2dYfSbdn+MplN/htviH7NWxLGXSCdFw5c1gW9T/6MqzbbI1+vKpKlyjwbohcmmr20bj8jJ4doc/6QsyAxVliElt+y7HLhoOHR2+J+cLjYCSUAU5zMb3TY82Cdwvd0WwPDn4fjmAynRHeRiSjNn9D3HTBYVhLanJfPw6Bv6f7M2k6oUNf9q1YkMNEBrG4gUycSYV63xBu3U7Nk9R+GheR0wsKXJJjZsCakPSjgCJEc4KD/WiKRdi93lSYiQKeLXMDOYO/1dzKjlJXSZKVZA5PP7w3IrLv242QEfxvn1g87qz9DJyTeu3yf+xv5yRjSgPQ+XfMXXDgbVjfgmMf2aoTsRXeJTRHeqXyBVo7dMg1HBU6OlNgh4+UxeePzmiSzMlAR3aPwli6isZq06Qx5Q5+AZfRWx0Zt+How3/dHIHyUB/2dz4gxtqbKG/Ry88MyA3lSXtXoqDbOGIzAfoaRWQ2DhtHa/F/Jtj6mM1zWMclevGZuRpnyi20d1ooSQCufQcqW+18ZGJzg04a47AgOYmw2p7A1Sw5SWItJj3PXfmb9CdXc2g1RIxwZ4U8DaisfEe9wF3BQiGtWZWMGm3C5yRbuoUsddZ86owBlwzKmpUvv4CJbuOlHpRt3hPSOOrW4RhjfDDSLYuK8t4CaUdzOiceq/ZDWVAmJzBOZO/vK+Rkvj+d9+vr/NOKijfmLJ+oFFUCcl4JZSr3CQs6f/zPxMa3UGR X-Microsoft-Exchange-Diagnostics: 1; BY1PR0301MB0904; 6:VtTJWOqxkE/NuY7b7Pa4g5oPF4EYW8o0UtEGmNKYopprkthLxyo/MredYbF3JaQTplRocygNXbI9E+YkWuOzk93KTGfD02d3ScXQOnwZoasKkRlbcbR2hxSNnHAKSuA8omTYIKGHnq3Mv0LFaf4IJf6FvdNrZ6UPCnz3+vziPzE3feQmfbeSuTXFfY1bgFmGLDI6OcIhv3WD73KjWaL2qgJh7fFsOUXChKYh318i7/g6We86SH6SbVvCL8pE682hAUExScnUANXJM0GFJEROsAQ6YgfVi5MCcQXsxNjBC5rKwvx0B/vbVspGNhE6V+fglQQhbdKW86yp1tEAEZcBj/+qmlTQ01330IWtBuVf7AIQj7+kHidsxPSfsytum9DrP9ecnYZQLVFkwxZqW5jPMHseBwf7vCKWk/r/DXu/QjAFbTFl4Km7UYLVBcXn85Vuy/gm4KRnMW6bjbolB+cmu+sAsIlca6NUGu61DFZ2Kkggh6ToEKSMKNILaZUSmVOFjjJWpYph9/0jdHfuiyadRw== X-Microsoft-Exchange-Diagnostics: 1; BY1PR0301MB0904; 5:QzmRKAmItHJeIArMznrUlIwpBiL7qm+gn1AMu/xCDM4itYCLhBAdiXg7WlRh3FuW23bJqr4qfR4TZY0rKEs70qZ/O6YLsAkze615J9BoTYN2oVrTkl8JEmLQSJYDC+q+DcjqawWcPJLqGHn9ifRkzjNHxCaav21VPQPMobPchXtChcRPknyElYwgEM69G36ydpY7OuNkAP5fdDhiM5h3tzT8TNKRZLZJrmcwzt8cTW9IRX0hc0rS60hf/sN8YiUxI/q0hln8cETTprkN8Bf+YjYc6FpmY/A6LGvU594Vy9ukm+/sVJm4My9F21f27utO+El4LJVHG49aJT9nubAwo27Kc6+KSvvA1sstwkkrL9LwWvuIp0FrSGFYXPuday0wkfTWhcnlK35XRgmyhxU4Mnok+aE+HAo7pfQROmnF4SJFG9XbBSn5fMWspDav0qpIl256zgM7n9Xyqmnk5Ocxjh0eBnSeLQRwl6HeSdH+lt8yAc+VZtDuydDd+NnmNpKh6T1i7s2YcziCvTiEeW1CFQ==; 24:vSVjkT9LC/SJtQVJ4746WqPfZqvI8kYEaQ+KoU6sv1kxzc4oolrNva2MDid6E1TCgR8ejFQS37qy4Q6WVjDggHakM3j7XAv3lOVCOsJZp7w= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; BY1PR0301MB0904; 7:gLqWaqumDycnskuPZSAibj3Urjoc7yKU4nPqsWMT9sEq0LDPGVJhguvWIln7jI2j3C0dTGBX9pcv5Lda39G0exAxf0z2j6MlPzzvFE0MzXeOk916wpmFyP0rB+s3UtLFNCZMg0vUMs7S7B1CIFcXsDLJFBAQS06XhBql863bA8qr5QQju+RFHJY1ZlBcgbxvXACVBAP4hJ67ixW/+V9usfZNYjxCRuRIc0TBkc+1DwV6xuytluB3qLTaYruKsmalW5qgs0i8fPx9nBS7K7Khf1jVdM21/dsnM9qHK59J6+uAfswKtm0FwvN3aQU5pEtznulnLBzcJDUT8PUGdpQdOg== X-MS-Exchange-CrossTenant-OriginalArrivalTime: 27 May 2017 10:17:47.5112 (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: BY1PR0301MB0904 Subject: [dpdk-dev] [RFC Patch 02/39] eal: add support for 24 40 and 48 bit operations 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" From: Hemant Agrawal Bit Swap and LE<=>BE conversions for 23, 40 and 48 bit width Signed-off-by: Hemant Agrawal --- .../common/include/generic/rte_byteorder.h | 78 ++++++++++++++++++++++ 1 file changed, 78 insertions(+) diff --git a/lib/librte_eal/common/include/generic/rte_byteorder.h b/lib/librte_eal/common/include/generic/rte_byteorder.h index e00bccb..8903ff6 100644 --- a/lib/librte_eal/common/include/generic/rte_byteorder.h +++ b/lib/librte_eal/common/include/generic/rte_byteorder.h @@ -122,6 +122,84 @@ rte_constant_bswap64(uint64_t x) ((x & 0xff00000000000000ULL) >> 56); } +/* + * An internal function to swap bytes of a 48-bit value. + */ +static inline uint64_t +rte_constant_bswap48(uint64_t x) +{ + return ((x & 0x0000000000ffULL) << 40) | + ((x & 0x00000000ff00ULL) << 24) | + ((x & 0x000000ff0000ULL) << 8) | + ((x & 0x0000ff000000ULL) >> 8) | + ((x & 0x00ff00000000ULL) >> 24) | + ((x & 0xff0000000000ULL) >> 40); +} + +/* + * An internal function to swap bytes of a 40-bit value. + */ +static inline uint64_t +rte_constant_bswap40(uint64_t x) +{ + return ((x & 0x00000000ffULL) << 32) | + ((x & 0x000000ff00ULL) << 16) | + ((x & 0x0000ff0000ULL)) | + ((x & 0x00ff000000ULL) >> 16) | + ((x & 0xff00000000ULL) >> 32); +} + +/* + * An internal function to swap bytes of a 24-bit value. + */ +static inline uint32_t +rte_constant_bswap24(uint32_t x) +{ + return ((x & 0x0000ffULL) << 16) | + ((x & 0x00ff00ULL)) | + ((x & 0xff0000ULL) >> 16); +} + +#define rte_bswap24 rte_constant_bswap24 +#define rte_bswap40 rte_constant_bswap40 +#define rte_bswap48 rte_constant_bswap48 + +#if RTE_BYTE_ORDER == RTE_LITTLE_ENDIAN + +#define rte_cpu_to_le_24(x) (x) +#define rte_cpu_to_le_40(x) (x) +#define rte_cpu_to_le_48(x) (x) + +#define rte_cpu_to_be_24(x) rte_bswap24(x) +#define rte_cpu_to_be_40(x) rte_bswap40(x) +#define rte_cpu_to_be_48(x) rte_bswap48(x) + +#define rte_le_to_cpu_24(x) (x) +#define rte_le_to_cpu_40(x) (x) +#define rte_le_to_cpu_48(x) (x) + +#define rte_be_to_cpu_24(x) rte_bswap24(x) +#define rte_be_to_cpu_40(x) rte_bswap40(x) +#define rte_be_to_cpu_48(x) rte_bswap48(x) + +#else /* RTE_BIG_ENDIAN */ + +#define rte_cpu_to_le_24(x) rte_bswap24(x) +#define rte_cpu_to_le_40(x) rte_bswap40(x) +#define rte_cpu_to_le_48(x) rte_bswap48(x) + +#define rte_cpu_to_be_24(x) (x) +#define rte_cpu_to_be_40(x) (x) +#define rte_cpu_to_be_48(x) (x) + +#define rte_le_to_cpu_24(x) rte_bswap24(x) +#define rte_le_to_cpu_40(x) rte_bswap40(x) +#define rte_le_to_cpu_48(x) rte_bswap48(x) + +#define rte_be_to_cpu_24(x) (x) +#define rte_be_to_cpu_40(x) (x) +#define rte_be_to_cpu_48(x) (x) +#endif #ifdef __DOXYGEN__