From patchwork Tue Jan 31 08:07:19 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Petri Savolainen X-Patchwork-Id: 92952 Delivered-To: patch@linaro.org Received: by 10.140.20.99 with SMTP id 90csp1816709qgi; Tue, 31 Jan 2017 00:13:50 -0800 (PST) X-Received: by 10.55.122.194 with SMTP id v185mr23403195qkc.99.1485850430113; Tue, 31 Jan 2017 00:13:50 -0800 (PST) Return-Path: Received: from lists.linaro.org (lists.linaro.org. [54.225.227.206]) by mx.google.com with ESMTP id j124si11446395qkf.162.2017.01.31.00.13.49; Tue, 31 Jan 2017 00:13:50 -0800 (PST) Received-SPF: pass (google.com: domain of lng-odp-bounces@lists.linaro.org designates 54.225.227.206 as permitted sender) client-ip=54.225.227.206; Authentication-Results: mx.google.com; spf=pass (google.com: domain of lng-odp-bounces@lists.linaro.org designates 54.225.227.206 as permitted sender) smtp.mailfrom=lng-odp-bounces@lists.linaro.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: by lists.linaro.org (Postfix, from userid 109) id C03EB60C92; Tue, 31 Jan 2017 08:13:49 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on ip-10-142-244-252 X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAD_ENC_HEADER,BAYES_00, RCVD_IN_DNSWL_NONE, RCVD_IN_MSPIKE_H3, RCVD_IN_MSPIKE_WL, SPF_HELO_PASS, URIBL_BLOCKED autolearn=disabled version=3.4.0 Received: from [127.0.0.1] (localhost [127.0.0.1]) by lists.linaro.org (Postfix) with ESMTP id 88C9462C42; Tue, 31 Jan 2017 08:08:34 +0000 (UTC) X-Original-To: lng-odp@lists.linaro.org Delivered-To: lng-odp@lists.linaro.org Received: by lists.linaro.org (Postfix, from userid 109) id 9041B60C43; Tue, 31 Jan 2017 08:07:56 +0000 (UTC) Received: from EUR02-VE1-obe.outbound.protection.outlook.com (mail-eopbgr20123.outbound.protection.outlook.com [40.107.2.123]) by lists.linaro.org (Postfix) with ESMTPS id EF00860C2A for ; Tue, 31 Jan 2017 08:07:49 +0000 (UTC) Received: from AMXPR07CA0036.eurprd07.prod.outlook.com (10.242.64.36) by AM5PR0701MB2705.eurprd07.prod.outlook.com (10.173.93.19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P384) id 15.1.888.5; Tue, 31 Jan 2017 08:07:48 +0000 Received: from DB3FFO11FD022.protection.gbl (2a01:111:f400:7e04::166) by AMXPR07CA0036.outlook.office365.com (2a01:111:e400:1000::36) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P384) id 15.1.888.5 via Frontend Transport; Tue, 31 Jan 2017 08:07:48 +0000 Received-SPF: SoftFail (protection.outlook.com: domain of transitioning linaro.org discourages use of 131.228.2.36 as permitted sender) Received: from hybrid2.ext.net.nokia.com (131.228.2.36) by DB3FFO11FD022.mail.protection.outlook.com (10.47.217.53) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P384) id 15.1.874.2 via Frontend Transport; Tue, 31 Jan 2017 08:07:48 +0000 Received: from fihe3nok1346.nsn-intra.net (10.158.36.134) by fihe3nok1347.nsn-intra.net (10.158.36.135) with Microsoft SMTP Server (TLS) id 15.1.466.34; Tue, 31 Jan 2017 10:07:47 +0200 Received: from mailrelay.int.nokia.com (10.130.128.21) by fihe3nok1346.nsn-intra.net (10.158.36.134) with Microsoft SMTP Server (TLS) id 15.1.466.34 via Frontend Transport; Tue, 31 Jan 2017 10:07:47 +0200 Received: from fihe3nok0734.emea.nsn-net.net (localhost [127.0.0.1]) by fihe3nok0734.emea.nsn-net.net (8.14.9/8.14.5) with ESMTP id v0V87QHW032647 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT) for ; Tue, 31 Jan 2017 10:07:26 +0200 Received: from 10.144.19.15 ([10.144.104.219]) by fihe3nok0734.emea.nsn-net.net (8.14.9/8.14.5) with ESMTP id v0V87Qam032638 (version=TLSv1/SSLv3 cipher=AES128-SHA256 bits=128 verify=NOT) for ; Tue, 31 Jan 2017 10:07:26 +0200 X-HPESVCS-Source-Ip: 10.144.104.219 From: Petri Savolainen To: Date: Tue, 31 Jan 2017 10:07:19 +0200 Message-ID: <1485850046-28457-2-git-send-email-petri.savolainen@linaro.org> X-Mailer: git-send-email 2.8.1 In-Reply-To: <1485850046-28457-1-git-send-email-petri.savolainen@linaro.org> References: <1485850046-28457-1-git-send-email-petri.savolainen@linaro.org> MIME-Version: 1.0 X-EOPAttributedMessage: 0 X-MS-Office365-Filtering-HT: Tenant X-Forefront-Antispam-Report: CIP:131.228.2.36; IPV:NLI; CTRY:FI; EFV:NLI; SFV:NSPM; SFS:(10019020)(6009001)(7916002)(39450400003)(39410400002)(39840400002)(39860400002)(39850400002)(2980300002)(199003)(189002)(36756003)(6916009)(6666003)(92566002)(2950100002)(5003940100001)(48376002)(68736007)(50466002)(33646002)(22756006)(575784001)(86362001)(50226002)(8936002)(77096006)(2906002)(81156014)(38730400001)(81166006)(8676002)(450100001)(626004)(53936002)(356003)(110136003)(50986999)(76176999)(5660300001)(2351001)(189998001)(106466001)(105596002)(47776003)(305945005)(107886002)(97736004); DIR:OUT; SFP:1102; SCL:1; SRVR:AM5PR0701MB2705; H:hybrid2.ext.net.nokia.com; FPR:; SPF:SoftFail; PTR:InfoDomainNonexistent; A:1; MX:1; LANG:en; X-Microsoft-Exchange-Diagnostics: 1; DB3FFO11FD022; 1:s4J7Nizz3NFGoDvgthwvvJq1HBEPQZ7RoB9IMxuwNS+POu3IfW2dtv/CQ+E3uSlecTRAt+3tGCYjzgOndfVZr3whgqSYfhSV0nx92JaTlpx0Qg/bYScXg6zT2G57XWuN8mWQCtDTIWtVH4j+WMNdZPJONdyX5/SmR5O1UYNKjpzV6W0kEPnKkryUAtRSmBJLCBgbZAlbraecdSwRZawfL//mFi08Z6PVfCMxbTevwjGuFblEouuKaYWLBTeqmsisF9mqVB2QX8VCrnPkslUmvb7aJLxNIrfPut6td7peaRC8B8Urzueb/b5IhyJikM6KORvUs1yTRpm1vGVwR8py6vNTv+bDCokX6qFAHxT1768xWtMXzk6Fk9pJnHMA/0Ijr/3OMElvsSXZJlfRSzAnR3ublDXeVNgI8wHTeOVSJIp0zdcur3/bkXFwnxpzZGXI3mgG6AjVhRv9LWX2/J2XwA== X-MS-Office365-Filtering-Correlation-Id: cbbb9704-14ea-48f7-259b-08d449b03f00 X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(22001); SRVR:AM5PR0701MB2705; X-Microsoft-Exchange-Diagnostics: 1; AM5PR0701MB2705; 3:RKl2P+wG8zj9DMHcESqAERpa+2guYTDkF8LHzR6MSshyEXM3xt5YZhryb9S8s7nNqe4oMrTHzNo0fjwvgjkUG0mY/QrWkg0mw9CJX4Fn3c+HkPvCOeKj7b+ihlgmKUgmfRNElVvDmvvFCRGM+SjKSzAxb29+gE7SiBLbOKG0F/nK9KL95apvwElaOIuuyi4AL0S3+/QsG2bSHtuzBR7FIkrnV4ZnXhPaNhTOpfKNjThrvVWsM6wbJJapb8IYd47DAgON0cB1+Y18QoFvORXh2C7sz0tChE7FlnIXcCoFcMvC/lMrx7I//2wZuCA9GpbabowDtwUx6z93m9471THNNeBhHrSfcRb8KZS1BWWwy3c=; 25:FPBB6FE0lDaqyNaTv21AoaQxvtwTnsmnWa3lBxwe6zJAyZ6IQd5XWEhkurrDHoU1znEyfq0gtDv3lkvJLDL/q1iasnmhk/wNEIlZoVZuWJXT8pVXY5E9QtAG4j/1LZLwsKp6cXXCmfoYkOaWnW5NVqYLV1NhLQVKrfhd0U2YcpyxXraQbF2GfdnolZfxTnHAp3ApnRDV0DcgD5Z4wudO/txL6lO1KapU523ShuFNrwNDy0stv+kVcG/0DFcbIVG4V8130kWqBauKmLJM+WludD3fcbMS8NqN3if0xyuxnNkVN1dDIQNNbGb9+EmDhAh4asJbNUNR6GsjuORbLGNz8JKQxQdXrhoS85m93emUmxjTmPBU/+7PqGIqTdZbOjjahgL1qR0P0txrrs2tl+gsCRYAN2FSMcchOd6ftKYvDSyrc7g+no6wU0JkB1fuKnXy2JOCoVrFqxjoAyGXfn9mdw== X-Microsoft-Exchange-Diagnostics: 1; AM5PR0701MB2705; 31:bUXJIwmGjSJ41NCadUreCoVCaOxh1MgRYJl89tstkoIU9OBIbcRNT5qyLHawn8HrgPLR4vTju0N1cgABN4FlwH8/zeYL+3qra2kZCF3O7G7BKEfa+Xrxmr+s4+emz3ymzUuFygbLiibFSvJjSFdzomaCVdqqecCEgiqHhFG44E/yKhyO4gY/C6Mm/8u7Fo1NciBxaZEAOiCihjJIB7zCJjrjUD7KfSjLrRx9AEt1jXzOnMwjiV1QM3fk+bPVAb7EWiGz3Dgci3GVhELu3qpffQ==; 20:x6i+xPNXGABykWEEHOz6feB2lEW+zJz+vQWzoX2DlzFOZY5vf+wh04IUISvbTo7/5+NpfT5FGB/t47lPd1zrVvHC5O0C+KHbHWPr/QfF4ZpIvdZYQLjvcXsDmSp49CL89D9AdPR6oaSlRtGpbITBNmieCSk2qd1DdOPpQ+Wk1xaAZ+ZTLrlhblkcY8oRLYM7fxNuyniDxkUSWu98OAUigeU14OHBu59hbl3VG7XWo6wnuYuGFLdhf9/v4n4Qr+c6gGAFLT+NrpDbQUS9auQUp6nLUADn+g9sc33TGrqefbZo1tbA9FOhVjgXVqJGV3Ek+LxC5pyjMzTfwA5EFi+lIUKGnbVEmGouATXXSSeRBbixTR3mOrv7PN+MsjCc8rfyhqO274JwzXuNaO/m4erhGbfs6AQBEND3zPRHroi06V7YROYHqS40PCn9vFd1gklBsJA3fyuWSeClNex5E++58eYIyS2w2b8rJjHrt3v+VZ70gkGGiMdSwYEgvYndqZFhkhQwI3qd3lkk0uPdM+WMkQWLHY/e1mgWmfw9bN5p2BUzTO0rL+kZtFPOjmZhrYY8ZnYSS7yL76wAt31QumGAEcd8PH8r3mz7l+riiK0oweQ= X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:; X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(6040375)(601004)(2401047)(13016025)(13018025)(5005006)(8121501046)(10201501046)(3002001)(6055026)(6041248)(20161123555025)(20161123560025)(20161123562025)(20161123564025)(6072148); SRVR:AM5PR0701MB2705; BCL:0; PCL:0; RULEID:; SRVR:AM5PR0701MB2705; X-Microsoft-Exchange-Diagnostics: 1; AM5PR0701MB2705; 4:FB6kfr3C0Cwzsl8wozxH7RAdmu4R4mfR7vudG/jLWF6XiLmVIc8dIeQ7ZrAwpHtRhh9QdEbW9fw0Bjv0jCgEmVYK43Q4TSAdwtIMSKx7oHUCMrBUC190se7Ded4LTXzpW6NMOUT6TxjIGp0bWCr0RL8tDMSdfxZFTc49tnNX/SYpbB+7z9BUiy4HgBPPYFyurIXR5PDbBpVLoNikYJIfcVgf169oToA3i2ui6ICodbur4OeRdHUVLL8WMUiIjmvpWy8Susg13NYIqRGFI2ldcQarGDPcuP5anWlpe3x9mgD5tXNn8UnUlKaR6auDFMrwXUQr0dT7rt3zI6dOZ1lCRYjCs92GURJcuqPbSRBQk9A0HEjuGVrLAIKizfDR7hgHtl7WLh0dzr5GIOCbeCSAci7qRzizmsXtq8KB1NfXtu1Wgakrktzxha9dV8XznkL1+NVGXhkYBjLtUJopWVTDr3kx54WHqq1aqzlFi38EqAP5H6lwn0PVTVsY4E3OjHT2K0w2aRgLfo4q0JXx5M//p+1EcHSUbKHFM458QTSocASFtuFOY91FIXhK5oJiabjHB0dR2i1RiKfzmezvhKpW78Lxl1+my5P2j+TWH7JCY/W3cUBIZQtTgZ+ZisrAySjZ X-Forefront-PRVS: 0204F0BDE2 X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; AM5PR0701MB2705; 23:N9cL5HLKf7yy9N6JYUZmpaxBz57k0hABlcG6O0w?= 5pT61rs6u8jtx0qdme15RdKV06xRYSSjoYAPYd8jkoUwrSAju0gvV3mpV+jJrrbPpApKMXfw35nVbgfDTrZkM25p/eO3DazP4X3dP03sK82OiWq6CBSjIiznxb17w/12v4Yxp577muQ60lASnDOWBEqlIT/ZJ/skS6XS9sshoT4n5+SexA1C37/tEqZQ5hTqtOIWSqCHL9KSVlkLyOnIEZwTJIPGkE4GP3Yo5PCXFsxGeknS4eSSpfwmq71oaDhbjsyJJHPWTqWLxaLPzajjEh4fpwycwmzkmhuYMUl+XFjkdV+NsLtFmJ2RJtD2lshquRJNeQ7fuUg1PK+W+Lt1uyUvzLZh+R49OKd+5iNSfjr4CmvrUISvcVfnxg6wSce4aHn2OlXTRGSbrZZgSrtRnU4nUuajHT4idNC0HcH4W5WRZBHSLJpL7zmAKKWdPEReT7MA8JU2viaahWbOfEwdvai9FgGSG3JkSHEthZea4pX+0i0NhbRGJL9/8SA0JmLJUxIOY7L45g+rKPIRhnIxjwMHFYsf9HcT39T1XLLhi0rYKu5vVvxAiLuw2++GUuKW2LBqdppglvdLkDf24wI0+8auljRRSy5SXCRAnJ0I5bfF6cjBqeP25hMVWSt8oHYXjYRBK75UIDmpCBjzcI6cE8jpb0X+vJANBvqfSDe6YxZemF7ub/RJayPWUlRMYOr3Hhx7pp8H/aDg/whdZ+4GlDYmBAa1DUmfd2AnVfygQ7VFyoDRcdcpWl2sY23RReQH7RkgJYCSTUHQzu+Oj7emCuRHcXAotBF/8h/GHx7Fx5flhzMYwHaAaAurLkXCCdgYrhayVC/vV/SZxwZeag2RUVs7FTtgEZVSRPHaxVE79XyPMKXQEfQ10WvFD+XrwlU/gtototcp5zSd1D7FBE3QrfAZS7XhToetnfMeAs73D+jDMLWBk9SbtZAzXxhHvcdOMUzqELGxFKoB7BFWIdPvOdY5dPRyjNHKj2ua0003zhXUFKqA8cDLRkFiBg8PliOAT1zDNBJbZ624STh8qoVZkfBhdCBlWSgJO/KuvNzW1inC7kgFN4pWiFANFZktFH3hdpiWqDgY1DO9Ie/JlHf9UHjLx0gWdv/JpP582zO1OUkh95A== X-Microsoft-Exchange-Diagnostics: 1; AM5PR0701MB2705; 6:fgjv/SRuWUbLhusRXieitwQ0nHkPqxNSHNknaZU3ESYSSqpYANzqNI7yFTVHcXCTbk/yRoRMj7ZNfFU2s5Gvyh7SVSTiQonqm0PCWpq9DWKmHm9L4llKN6KDTOOopkmMnwZ02145Yim3lK4Hng1BAH/70djksWjEngTEi2kC1W9XFdSYQ9ZCSnb97QlLQHY6plVv0e3if/7ThKAzq1Kg0AHfhg7nZbgDQ4RzxbeROjGbwsT9nlC9wCULosy3gMCRSPXEkuVsleewzR66C73pHrQ9HRLx077zbDBMQ1UNr2RxBW7Gny1Y2ZIivQe6wbzNWIJ2omrJhYkmqWCbe7yYXioROKTRXL7ToOaZx85tMbo0fg//YCGjFffQYTP9ceyuQyqE5rmwAEzxPEp8npH8f2ciFjHYeMYVXr2vQDPRpb0=; 5:dqRyZsNo6wNhknVN+49YTK1+RiKLS+LUetDB02SD0CzOiLv9seHqYIrN97E9Rovt23+WV1gJj9KJt9EURGHS/a+32DyxAQ1atvMmpd6FfZAPwWw1BWCcxSU8z5CRU2EKSCeZHzVTEe66NE4LCMctpQ==; 24:slhCjbwnC0mi8xunyqx1UDRTNKpz7zzuNb3cglYhyhkycUDTDUn29uBrrDjplQHcdbY2ptof26xO7/uc7Svy/sEpeDiM4xviclwo5Xr+9z8= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; AM5PR0701MB2705; 7:tgTmP8wcpl85fohOg2br6CTyUPJcheLg5VWU40R/x+23sfz94dwOmPsvdC2C9MxJTneybQaw0fLDfpF7E8yR7xeC2yIkSTaA1wTnCQ55eHU+5nQreHv5DVkYRtklP4J36BQD+BzJBTDc557KLEmB6G3iw69ZtkSx535LRyLuIzYs7XtvwznumwThClBAC1nwgPzGMcu52qHgArKeTXtmnfqkQlL5yCS9pwVoICLMr3e6XdlYkX9OEhkwoej9YU25vJrhkEecXYJH9V3aP/BADCBM0MrQsOkz3hDEabPSFdN2DhJm31D8GkGCgjAewilpHJjNoH1OWHXlK4d8UlGGnlKug7sAhSCIRrbkM+aoTNQgEZO3e96o48fKq1CPQbRAx766B0b76SBP4IRW3ylAOmmM22PNgDFKZW5583wwrDetb0cPApDslBWs7M9sJ6BeSBaJEmckBNsLI3aW5oNwItmgimw46mbFw4HA9Bh/RYGnj9qYgSHwSVhY+mEgWWlDQvkYWPzAhTMZoFIN61DKlA== X-OriginatorOrg: nokia.onmicrosoft.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 31 Jan 2017 08:07:48.5036 (UTC) X-MS-Exchange-CrossTenant-Id: 5d471751-9675-428d-917b-70f44f9630b0 X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=5d471751-9675-428d-917b-70f44f9630b0; Ip=[131.228.2.36]; Helo=[hybrid2.ext.net.nokia.com] X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM5PR0701MB2705 Subject: [lng-odp] [PATCH v4 1/8] abi: event: added the first ABI spec file X-BeenThere: lng-odp@lists.linaro.org X-Mailman-Version: 2.1.16 Precedence: list List-Id: "The OpenDataPlane \(ODP\) List" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: lng-odp-bounces@lists.linaro.org Sender: "lng-odp" Used event API as the first example of an ABI spec file. Used the same default architecture file initially for all architectures. Default ABI files avoid multiple copies of the same definition. Signed-off-by: Petri Savolainen --- configure.ac | 22 ++++++++++++ example/Makefile.inc | 1 + helper/Makefile.am | 1 + helper/test/Makefile.am | 1 + include/odp/arch/arm32-linux/odp/api/abi/event.h | 7 ++++ include/odp/arch/arm64-linux/odp/api/abi/event.h | 7 ++++ include/odp/arch/default/api/abi/event.h | 42 ++++++++++++++++++++++ include/odp/arch/mips64-linux/odp/api/abi/event.h | 7 ++++ include/odp/arch/power64-linux/odp/api/abi/event.h | 7 ++++ include/odp/arch/x86_32-linux/odp/api/abi/event.h | 7 ++++ include/odp/arch/x86_64-linux/odp/api/abi/event.h | 7 ++++ platform/Makefile.inc | 8 +++++ platform/linux-generic/Makefile.am | 1 + .../include/odp/api/plat/event_types.h | 19 +++++----- platform/linux-generic/odp_event.c | 5 +++ test/Makefile.inc | 1 + test/linux-generic/Makefile.inc | 1 + 17 files changed, 133 insertions(+), 11 deletions(-) create mode 100644 include/odp/arch/arm32-linux/odp/api/abi/event.h create mode 100644 include/odp/arch/arm64-linux/odp/api/abi/event.h create mode 100644 include/odp/arch/default/api/abi/event.h create mode 100644 include/odp/arch/mips64-linux/odp/api/abi/event.h create mode 100644 include/odp/arch/power64-linux/odp/api/abi/event.h create mode 100644 include/odp/arch/x86_32-linux/odp/api/abi/event.h create mode 100644 include/odp/arch/x86_64-linux/odp/api/abi/event.h -- 2.8.1 diff --git a/configure.ac b/configure.ac index daa9b31..6153efd 100644 --- a/configure.ac +++ b/configure.ac @@ -119,6 +119,26 @@ then fi ########################################################################## +# Architecture for ABI support +########################################################################## +AS_CASE([$host], + [x86*], [ARCH_ABI=x86_64-linux], + [i686*], [ARCH_ABI=x86_32-linux], + [mips64*], [ARCH_ABI=mips64-linux], + [powerpc*], [ARCH_ABI=power64-linux], + [aarch64*], [ARCH_ABI=arm64-linux], + [arm*], [ARCH_ABI=arm32-linux], + [ARCH_ABI=undefined] +) +AC_SUBST([ARCH_ABI]) + +if test "${ARCH_ABI}" == "undefined"; +then + echo "ARCH_ABI is undefined, please add your ARCH_ABI based on host=${host}" + exit 1 +fi + +########################################################################## # Set correct pkgconfig version ########################################################################## PKGCONFIG_VERSION=$(echo $VERSION | awk -F '.git' '{print $1}') @@ -343,7 +363,9 @@ AC_MSG_RESULT([ Helper Library version: ${ODPHELPER_LIBSO_VERSION} implementation_name: ${IMPLEMENTATION_NAME} + host: ${host} ARCH_DIR ${ARCH_DIR} + ARCH_ABI ${ARCH_ABI} with_platform: ${with_platform} with_helper_platform: ${with_helper_platform} helper_extn: ${helper_extn} diff --git a/example/Makefile.inc b/example/Makefile.inc index ea596d5..854e8af 100644 --- a/example/Makefile.inc +++ b/example/Makefile.inc @@ -6,6 +6,7 @@ AM_CFLAGS += \ -I$(top_srcdir)/example \ -I$(top_srcdir)/platform/@with_platform@/include \ -I$(top_srcdir)/include/ \ + -I$(top_srcdir)/include/odp/arch/@ARCH_ABI@ \ -I$(top_srcdir)/helper/include \ -I$(top_builddir)/platform/@with_platform@/include \ -I$(top_builddir)/include diff --git a/helper/Makefile.am b/helper/Makefile.am index d484679..6b65eb1 100644 --- a/helper/Makefile.am +++ b/helper/Makefile.am @@ -7,6 +7,7 @@ LIB = $(top_builddir)/lib AM_CFLAGS += -I$(srcdir)/include AM_CFLAGS += -I$(top_srcdir)/platform/@with_platform@/include AM_CFLAGS += -I$(top_srcdir)/include +AM_CFLAGS += -I$(top_srcdir)/include/odp/arch/@ARCH_ABI@ AM_CFLAGS += -I$(top_builddir)/platform/@with_platform@/include AM_CFLAGS += -I$(top_builddir)/include diff --git a/helper/test/Makefile.am b/helper/test/Makefile.am index 1c50282..1337657 100644 --- a/helper/test/Makefile.am +++ b/helper/test/Makefile.am @@ -12,6 +12,7 @@ INCFLAGS = \ -I$(top_srcdir)/helper/include \ -I$(top_srcdir)/helper/platform/@with_helper_platform@/include \ -I$(top_srcdir)/include \ + -I$(top_srcdir)/include/odp/arch/@ARCH_ABI@ \ -I$(top_srcdir)/platform/@with_platform@/include \ -I$(top_builddir)/include \ -I$(top_srcdir)/helper diff --git a/include/odp/arch/arm32-linux/odp/api/abi/event.h b/include/odp/arch/arm32-linux/odp/api/abi/event.h new file mode 100644 index 0000000..5d2ac75 --- /dev/null +++ b/include/odp/arch/arm32-linux/odp/api/abi/event.h @@ -0,0 +1,7 @@ +/* Copyright (c) 2017, Linaro Limited + * All rights reserved. + * + * SPDX-License-Identifier: BSD-3-Clause + */ + +#include diff --git a/include/odp/arch/arm64-linux/odp/api/abi/event.h b/include/odp/arch/arm64-linux/odp/api/abi/event.h new file mode 100644 index 0000000..5d2ac75 --- /dev/null +++ b/include/odp/arch/arm64-linux/odp/api/abi/event.h @@ -0,0 +1,7 @@ +/* Copyright (c) 2017, Linaro Limited + * All rights reserved. + * + * SPDX-License-Identifier: BSD-3-Clause + */ + +#include diff --git a/include/odp/arch/default/api/abi/event.h b/include/odp/arch/default/api/abi/event.h new file mode 100644 index 0000000..4f6596b --- /dev/null +++ b/include/odp/arch/default/api/abi/event.h @@ -0,0 +1,42 @@ +/* Copyright (c) 2017, Linaro Limited + * All rights reserved. + * + * SPDX-License-Identifier: BSD-3-Clause + */ + +#ifndef ODP_ABI_EVENT_H_ +#define ODP_ABI_EVENT_H_ + +#ifdef __cplusplus +extern "C" { +#endif + +#include + +/** @internal Dummy type for strong typing */ +typedef struct { char dummy; /**< @internal Dummy */ } _odp_abi_event_t; + +/** @ingroup odp_event + * @{ + */ + +typedef _odp_abi_event_t *odp_event_t; + +#define ODP_EVENT_INVALID ((odp_event_t)0xffffffff) + +typedef enum odp_event_type_t { + ODP_EVENT_BUFFER = 1, + ODP_EVENT_PACKET = 2, + ODP_EVENT_TIMEOUT = 3, + ODP_EVENT_CRYPTO_COMPL = 4 +} odp_event_type_t; + +/** + * @} + */ + +#ifdef __cplusplus +} +#endif + +#endif diff --git a/include/odp/arch/mips64-linux/odp/api/abi/event.h b/include/odp/arch/mips64-linux/odp/api/abi/event.h new file mode 100644 index 0000000..5d2ac75 --- /dev/null +++ b/include/odp/arch/mips64-linux/odp/api/abi/event.h @@ -0,0 +1,7 @@ +/* Copyright (c) 2017, Linaro Limited + * All rights reserved. + * + * SPDX-License-Identifier: BSD-3-Clause + */ + +#include diff --git a/include/odp/arch/power64-linux/odp/api/abi/event.h b/include/odp/arch/power64-linux/odp/api/abi/event.h new file mode 100644 index 0000000..5d2ac75 --- /dev/null +++ b/include/odp/arch/power64-linux/odp/api/abi/event.h @@ -0,0 +1,7 @@ +/* Copyright (c) 2017, Linaro Limited + * All rights reserved. + * + * SPDX-License-Identifier: BSD-3-Clause + */ + +#include diff --git a/include/odp/arch/x86_32-linux/odp/api/abi/event.h b/include/odp/arch/x86_32-linux/odp/api/abi/event.h new file mode 100644 index 0000000..5d2ac75 --- /dev/null +++ b/include/odp/arch/x86_32-linux/odp/api/abi/event.h @@ -0,0 +1,7 @@ +/* Copyright (c) 2017, Linaro Limited + * All rights reserved. + * + * SPDX-License-Identifier: BSD-3-Clause + */ + +#include diff --git a/include/odp/arch/x86_64-linux/odp/api/abi/event.h b/include/odp/arch/x86_64-linux/odp/api/abi/event.h new file mode 100644 index 0000000..5d2ac75 --- /dev/null +++ b/include/odp/arch/x86_64-linux/odp/api/abi/event.h @@ -0,0 +1,7 @@ +/* Copyright (c) 2017, Linaro Limited + * All rights reserved. + * + * SPDX-License-Identifier: BSD-3-Clause + */ + +#include diff --git a/platform/Makefile.inc b/platform/Makefile.inc index 2722946..a24accb 100644 --- a/platform/Makefile.inc +++ b/platform/Makefile.inc @@ -60,6 +60,14 @@ odpapispecinclude_HEADERS = \ $(top_builddir)/include/odp/api/spec/version.h \ $(top_srcdir)/include/odp/api/spec/traffic_mngr.h +odpapiabidefaultincludedir= $(includedir)/odp/arch/default/api/abi +odpapiabidefaultinclude_HEADERS = \ + $(top_srcdir)/include/odp/arch/default/api/abi/event.h + +odpapiabiarchincludedir= $(includedir)/odp/arch/@ARCH_ABI@/odp/api/abi +odpapiabiarchinclude_HEADERS = \ + $(top_srcdir)/include/odp/arch/@ARCH_ABI@/odp/api/abi/event.h + EXTRA_DIST = \ arch/arm/odp/api/cpu_arch.h \ arch/arm/odp_cpu_arch.c \ diff --git a/platform/linux-generic/Makefile.am b/platform/linux-generic/Makefile.am index 0bc9842..576fedf 100644 --- a/platform/linux-generic/Makefile.am +++ b/platform/linux-generic/Makefile.am @@ -6,6 +6,7 @@ include $(top_srcdir)/platform/@with_platform@/Makefile.inc AM_CFLAGS += -I$(srcdir)/include AM_CFLAGS += -I$(top_srcdir)/include +AM_CFLAGS += -I$(top_srcdir)/include/odp/arch/@ARCH_ABI@ AM_CFLAGS += -I$(top_builddir)/include AM_CFLAGS += -Iinclude diff --git a/platform/linux-generic/include/odp/api/plat/event_types.h b/platform/linux-generic/include/odp/api/plat/event_types.h index 9ca0fb8..a1aa0e4 100644 --- a/platform/linux-generic/include/odp/api/plat/event_types.h +++ b/platform/linux-generic/include/odp/api/plat/event_types.h @@ -18,11 +18,15 @@ extern "C" { #endif +#include +#if ODP_ABI_COMPAT == 1 +#include +#else + #include #include -/** @defgroup odp_event ODP EVENT - * Operations on an event. +/** @ingroup odp_event * @{ */ @@ -30,9 +34,6 @@ typedef ODP_HANDLE_T(odp_event_t); #define ODP_EVENT_INVALID _odp_cast_scalar(odp_event_t, 0xffffffff) -/** - * Event types - */ typedef enum odp_event_type_t { ODP_EVENT_BUFFER = 1, ODP_EVENT_PACKET = 2, @@ -40,16 +41,12 @@ typedef enum odp_event_type_t { ODP_EVENT_CRYPTO_COMPL = 4, } odp_event_type_t; -/** Get printable format of odp_event_t */ -static inline uint64_t odp_event_to_u64(odp_event_t hdl) -{ - return _odp_pri(hdl); -} - /** * @} */ +#endif + #ifdef __cplusplus } #endif diff --git a/platform/linux-generic/odp_event.c b/platform/linux-generic/odp_event.c index cc3fb0a..d71f446 100644 --- a/platform/linux-generic/odp_event.c +++ b/platform/linux-generic/odp_event.c @@ -38,3 +38,8 @@ void odp_event_free(odp_event_t event) ODP_ABORT("Invalid event type: %d\n", odp_event_type(event)); } } + +uint64_t odp_event_to_u64(odp_event_t hdl) +{ + return _odp_pri(hdl); +} diff --git a/test/Makefile.inc b/test/Makefile.inc index 243a616..898249d 100644 --- a/test/Makefile.inc +++ b/test/Makefile.inc @@ -10,6 +10,7 @@ INCFLAGS = \ -I$(top_builddir)/platform/@with_platform@/include \ -I$(top_srcdir)/helper/include \ -I$(top_srcdir)/include \ + -I$(top_srcdir)/include/odp/arch/@ARCH_ABI@ \ -I$(top_srcdir)/platform/@with_platform@/include \ -I$(top_srcdir)/test \ -I$(top_builddir)/include diff --git a/test/linux-generic/Makefile.inc b/test/linux-generic/Makefile.inc index 2a49076..373157b 100644 --- a/test/linux-generic/Makefile.inc +++ b/test/linux-generic/Makefile.inc @@ -14,6 +14,7 @@ INCODP = \ -I$(top_builddir)/platform/@with_platform@/include \ -I$(top_srcdir)/helper/include \ -I$(top_srcdir)/include \ + -I$(top_srcdir)/include/odp/arch/@ARCH_ABI@ \ -I$(top_srcdir)/platform/@with_platform@/arch/$(ARCH_DIR) \ -I$(top_srcdir)/platform/@with_platform@/include \ -I$(top_srcdir)/test From patchwork Tue Jan 31 08:07:20 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Petri Savolainen X-Patchwork-Id: 92947 Delivered-To: patch@linaro.org Received: by 10.140.20.99 with SMTP id 90csp1815382qgi; Tue, 31 Jan 2017 00:09:05 -0800 (PST) X-Received: by 10.107.168.160 with SMTP id e32mr22632822ioj.127.1485850145199; Tue, 31 Jan 2017 00:09:05 -0800 (PST) Return-Path: Received: from lists.linaro.org (lists.linaro.org. [54.225.227.206]) by mx.google.com with ESMTP id m194si9808509itc.60.2017.01.31.00.09.04; Tue, 31 Jan 2017 00:09:05 -0800 (PST) Received-SPF: pass (google.com: domain of lng-odp-bounces@lists.linaro.org designates 54.225.227.206 as permitted sender) client-ip=54.225.227.206; Authentication-Results: mx.google.com; spf=pass (google.com: domain of lng-odp-bounces@lists.linaro.org designates 54.225.227.206 as permitted sender) smtp.mailfrom=lng-odp-bounces@lists.linaro.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: by lists.linaro.org (Postfix, from userid 109) id A7B8F60C2A; Tue, 31 Jan 2017 08:09:04 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on ip-10-142-244-252 X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAD_ENC_HEADER,BAYES_00, RCVD_IN_DNSWL_NONE, RCVD_IN_MSPIKE_H3, RCVD_IN_MSPIKE_WL, SPF_HELO_PASS, URIBL_BLOCKED autolearn=disabled version=3.4.0 Received: from [127.0.0.1] (localhost [127.0.0.1]) by lists.linaro.org (Postfix) with ESMTP id AE21660C48; Tue, 31 Jan 2017 08:08:03 +0000 (UTC) X-Original-To: lng-odp@lists.linaro.org Delivered-To: lng-odp@lists.linaro.org Received: by lists.linaro.org (Postfix, from userid 109) id D7FCF60C4E; Tue, 31 Jan 2017 08:07:50 +0000 (UTC) Received: from EUR03-DB5-obe.outbound.protection.outlook.com (mail-eopbgr40104.outbound.protection.outlook.com [40.107.4.104]) by lists.linaro.org (Postfix) with ESMTPS id 7970D608AB for ; Tue, 31 Jan 2017 08:07:48 +0000 (UTC) Received: from VI1PR07CA0103.eurprd07.prod.outlook.com (10.165.229.157) by DB5PR07MB0807.eurprd07.prod.outlook.com (10.161.196.13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P384) id 15.1.874.6; Tue, 31 Jan 2017 08:07:46 +0000 Received: from AM1FFO11FD005.protection.gbl (2a01:111:f400:7e00::178) by VI1PR07CA0103.outlook.office365.com (2a01:111:e400:7a52::29) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P384) id 15.1.888.5 via Frontend Transport; Tue, 31 Jan 2017 08:07:46 +0000 Received-SPF: SoftFail (protection.outlook.com: domain of transitioning linaro.org discourages use of 131.228.2.38 as permitted sender) Received: from hybrid2.ext.net.nokia.com (131.228.2.38) by AM1FFO11FD005.mail.protection.outlook.com (10.174.64.87) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P384) id 15.1.874.2 via Frontend Transport; Tue, 31 Jan 2017 08:07:45 +0000 Received: from fihe3nok1346.nsn-intra.net (10.158.36.134) by fihe3nok1349.nsn-intra.net (10.158.36.137) with Microsoft SMTP Server (TLS) id 15.1.466.34; Tue, 31 Jan 2017 10:07:45 +0200 Received: from mailrelay.int.nokia.com (10.130.128.21) by fihe3nok1346.nsn-intra.net (10.158.36.134) with Microsoft SMTP Server (TLS) id 15.1.466.34 via Frontend Transport; Tue, 31 Jan 2017 10:07:45 +0200 Received: from fihe3nok0734.emea.nsn-net.net (localhost [127.0.0.1]) by fihe3nok0734.emea.nsn-net.net (8.14.9/8.14.5) with ESMTP id v0V87QgU032650 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT) for ; Tue, 31 Jan 2017 10:07:26 +0200 Received: from 10.144.19.15 ([10.144.104.219]) by fihe3nok0734.emea.nsn-net.net (8.14.9/8.14.5) with ESMTP id v0V87Qan032638 (version=TLSv1/SSLv3 cipher=AES128-SHA256 bits=128 verify=NOT) for ; Tue, 31 Jan 2017 10:07:26 +0200 X-HPESVCS-Source-Ip: 10.144.104.219 From: Petri Savolainen To: Date: Tue, 31 Jan 2017 10:07:20 +0200 Message-ID: <1485850046-28457-3-git-send-email-petri.savolainen@linaro.org> X-Mailer: git-send-email 2.8.1 In-Reply-To: <1485850046-28457-1-git-send-email-petri.savolainen@linaro.org> References: <1485850046-28457-1-git-send-email-petri.savolainen@linaro.org> MIME-Version: 1.0 X-EOPAttributedMessage: 0 X-MS-Office365-Filtering-HT: Tenant X-Forefront-Antispam-Report: CIP:131.228.2.38; IPV:NLI; CTRY:FI; EFV:NLI; SFV:NSPM; SFS:(10019020)(6009001)(7916002)(39840400002)(39410400002)(39860400002)(39450400003)(39850400002)(2980300002)(189002)(199003)(8676002)(105596002)(86362001)(107886002)(77096006)(6666003)(53936002)(50226002)(68736007)(33646002)(22756006)(450100001)(50466002)(48376002)(92566002)(97736004)(8936002)(81156014)(38730400001)(81166006)(5003940100001)(2351001)(47776003)(110136003)(5660300001)(305945005)(356003)(50986999)(2950100002)(189998001)(626004)(76176999)(36756003)(6916009)(106466001)(2906002); DIR:OUT; SFP:1102; SCL:1; SRVR:DB5PR07MB0807; H:hybrid2.ext.net.nokia.com; FPR:; SPF:SoftFail; PTR:InfoDomainNonexistent; MX:1; A:1; LANG:en; X-Microsoft-Exchange-Diagnostics: 1; AM1FFO11FD005; 1:CRdPTlZRB44XmPxjdapMJkf9ILaNRKcG5+anP001R5gdFHSaFe6ELwvFtBHAnzx/hetTULxjWrDoh7TXRQktVt7ScOGVLtl1BAwcwHDO5x7fcBBa5FWVpxVsvJhmf/I3qDnU5HfquQW+bU37JDLO6OULKH/dAiGMaZowPMTUl4LycGezjks2DEegQKuaUhPgfSS0JYH4diLehytOMg8T3eoYa6yCSGcG8MJIInRhzTViGLz1uWM1ofPsO0mJiofYTuZha8YAtPzodG4LnWyPGD83oplBdK1v6TV8b4iSyqOoPWI+3T/jq+UJ8dXwnq8GXBF1zYuGtTEf50Cm6v174FuDW0hoeTlho5ZckUOaN2CbmFreRYgqihSdaX5bP/ezHUu0URGEobLTgYBQ5cvXe2LCH3QeeVB1LjSXq+NcSmaLfV+y5e6cuIFCX1LitZXf/ieIYJM/hYHlCnHnlkFPUg== X-MS-Office365-Filtering-Correlation-Id: c9ef0e14-c5f2-49bb-461d-08d449b03d5e X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(22001); SRVR:DB5PR07MB0807; X-Microsoft-Exchange-Diagnostics: 1; DB5PR07MB0807; 3:aEGGYOVehjlqYIlSJYBO6R7BMNX2iyOZPPyZ7cYKfJuZjMgfaTd21zAB+F4lCHoWC3eC7aGJPM6YHaLx3o8YoMcoNI9EhQpd2xixuFRCRaqvLPU1CXEl2nJC68rHiRUQHuDUJZs+dAqQs3TPe4MZMFxvpFFInbqA8N2FekS1PiCH509MxD2k6RiwvTl4In3E9soA/i1n92oSph4lqa33Ry/r+nPqPveTisW/2d4NUSCfpbYfrcP7RvTYdGtrBcHwpGvBG4/WaLfawy6MTX3Xjfwm30uMOxpaYUC0HaySvUHZ6eaE0sTwZYoduC94ACx7J3zUUZrwD4/MjrT4SOaaIxvfKpYXpGd0uwG4V4QLPlY=; 25:Fu4EwtcRXEI47g9XpCI7QlPRD9MMsCWlQC8egxm6l8FyIyfQlWgj8YhlzrNrNHgOYwysG0L6ZZTG46DQZD1Fj+UYOsXZC3fXa5a8+AyAmi6s/T96vXJkIKsnVm9XK7z5FLbrFkuiDuUUDYGKuHLQxYesJ3wT25wmnJinqTdOAIai+jaVr8wLQZlTDDzXEUBnKCQ25ddN4Xe5NuuK0IyxTNRmOFr36EFyciLiN0Pb7o+Yg62In8iBUatq0OfmvDfqP1PSTRkh2KtuaBMkjuqgzFYsS59wiYA48KOGCB9OZCW2l9fdWSgrO4Fd6KGECgKKCH/7X9edD2EefFebEBF0pQc9oqe+a+n4g/G1ycbZyykod2cF1i6flUmXabL0GE7No+RFXMdA2o7YMSMDFc2eJ195ZbZW+z+oLmocGxLF+LkQevV2Wamp0CXnUSiheGX1fYi7eXQBkl+l/5jwx2Vw2A== X-Microsoft-Exchange-Diagnostics: 1; DB5PR07MB0807; 31:hY6tOhVOYwSFqpSKlxLvapx84Rp3wVkMjFks9zHSTLdAr2mWOCGv+pWoHP7o3IUIpK7WEnxfiX52TqTlNycMy0i/doRQn8KuEvbRLhtpF/kvy3QGN0qO4dmK0h3kbZH89QoEKbqdK58QI0M1q/ZN8QvVVbeKGDBK8AyRzj5Qg1CNOSDFWwuGI7jHf1y6pMANhtH0ChTWndn459Zkuro/EUI18oPPE8bvgDA1f5rc69Ua/RaKFbmfoAdGsHGe9qRKDM2L+L5e79MN9Adb4QVs+Q==; 20:pFOck096GUKvRHeRc3vxNU9j9lw7Mqc7Nkll4hk+HwGhlMys+KoxffZWCIkqL0iNnH06V34otnsd9tAd3y/BbuWwg8fBL4MwT9lhkPLbRTUPN7Ioj2MSGgP6Edg6+yN856Kfp6xHhZ1e4T7gvNFsSvOyhL5ZjKFiIW9n4qGIXdhc+qnqfmcVHeLXvZ4X6OvyTGOXX4kzK3icqK0+yDEwG8/L+CrRBRJsjDS+WQogYt4V5EmpA7ig0d633BeU/CNi6WBPxp3wG621HvR5SQgo8yeYvi6R6snZDiGNSq55QkXUgxrfBG0/6L0K0K5cuYMvAOEEMvOyYE/SnX2md1acRWkaEEIfVsEYcre28EmYfVA5cSrFrUXoeV5Ww/Iv8mgDar/dvGBfIn2UEWvNhtndedlUAUMMS/pN8b8tnUvp9yYcpZZQOQ3AUpwWAqOD/hC8I7kh/pc82yDIi/VAJpCn0KV2bmSkhF1vqgGvmWyUOEOjqF4BW7qSZhX+jDGiZfZpBbCKcwh02h6YJv9y7rt1CIOcaE/7HRUjeIVq1p/NP5SnUOk1a5zuXqXYEaOErjNhum9hH3Ys+YHJlW981tndUWJUnElFCGUJWw6wmfqTwzY= X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:; X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(6040375)(601004)(2401047)(13016025)(13018025)(8121501046)(5005006)(3002001)(10201501046)(6055026)(6041248)(20161123560025)(20161123564025)(20161123555025)(20161123562025)(6072148); SRVR:DB5PR07MB0807; BCL:0; PCL:0; RULEID:; SRVR:DB5PR07MB0807; X-Microsoft-Exchange-Diagnostics: 1; DB5PR07MB0807; 4:ZIeeGyR1EcmyE0PBvxHiKOWylMKLUs9jYTn7fTd7bkqA9VFKd0kt54F/QDulKnL+bRKOlFSOCsd1GZSRB24cDTGZpxc0cGdp7C63Vpj9UaVIXfDx9ZBYYyqgd8JjKEKdLNfM2UqMA5V+/UFffW/XKjpnx3tGgsdUNBOpt4tqd3ZqyzlfL8vquk61dx+B2Q7g/JJmI9lt2EW8CZ2QZ6i04ps22CantU9yxTUIDCEPQXLqECjXe+lRqmjmX06dx/dvhB/SBMbNDClRj9LUygeQPYFP34c7owoBEsAG7zbC2RE1dtH/hNgQR05ayRIMaIMxPE64Jc8UsqFxzTwkSB98DixCJE1uvbJscqqEEYE4WpgL/YxdIhI1TOV1iTsq8l9F/brvvogx7uAAm1LuGARyL5VlE/XAQt04XD/d6auQER24Zc9m9zxsGiLFbLcGMM+5tZMf0cfQ+PyYPe3cpQfSU1rna2g9u0mkgY2cj8FSb+vsxrjWG2ucErKSqd7XCTvlDAGXE0Qt22YIqj3ImjF6/nmn/DClqfH2D3B+KR0Xk1M/5iTIcjnodA8mEFEGX4sUWDtOqdj2Sjcr51QIbMIplKRccJEsE2wSQ2iD1Hnjr6UfuKV6RD2ttqGQpQGPxH8y X-Forefront-PRVS: 0204F0BDE2 X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; DB5PR07MB0807; 23:5k24M4IDQ8cOpeVwhvNIPQCKZKjVKaoQ765TQ6Z8n?= pFpzi8tZ/Jt+0lpqVqsaTOeyiWDdufgtlj8FyfddcGBC86fYC5AGpEGc4iHcW3zjtHhFU9xpxVSZrXlriPmX2p6pbu5tzsOA1XfTuegwGY2De1XWXVXcMFrMTWpvw9lYO4BlXBi8FaqA7uAi5zqbxbVjDiJBvxsoeShH1RtHjToATkdABbhtaqHJ657vqDNzydXtONhzy7c3wxgvACMchzAdZWwnmMULn411+yzbnGn0k0UWyWDngEz93iH7WR6JWLfvF3CZIgQndB7wYTP3bV5ULuIxRzXIrkthvNFfQTEKctGinfMHdi8fsn2un8o3be1gC6OE02zmiEKiDO+HuznKHaoq9xS9ewjCN4iflCT9uC5BaY81cHekRBgyHIXCI0J5zyXB5FipCCKkOb8E2Vjp2Jndw1fNaafIxuUfCbQAcy5IgqdX+WxLrk1ui7kUsZjjyt0JIlPBXjMR6+Mp0snKj0i/xsj65kaizhhWwuPalpR0UU1BG60MovpdxSV/NuDKnQhXPGktA76sNdKxfJhe5mZI906vYU38NiUhKhI4JafvWL+3KHoHkqzQvj3UO/uTRppR9sYDnPI1JpE2MK/4tPkjx30WDlHM+PyTN4IrqseOfdLehyCEWEk/xd23MPYsBDFpUTN7Ar9+PBu2MdQAAoblsAnDzvULHzxf3dLDhHQyA4hI82kxPLLgZlvTUKGp3lUaM/5GrCKQQmInYHloJCymTKno+e1mtixJLzq6ikMA2KsL1qUxlezDA04+SH/bKuVTzLbO7lZvYn5dmXo6KoJ6otc+OLEyAzjQTji4T43071Ox6FhEKKklmMaJvRacSi/KEqrGPJn6K2ESilQnYeBThUZrZZcksLSNN2rAB7yKRYhR0A+i4d/hyZzobUZ969vK96rhsuibFylnqjLl+ShdeMAuWpYyPJGzefg0QXBGQKiEHv0pslzGEO432GY2qV+Zz+y4TsaTHe35D3SCfYGxbyzvv6BkpAg63IAb586rbOeQzwkwlle2CIvyFKGyrPxzNLY1XlTamBAa8r/fzzVLUCVE0oFJ0S5czgYkyVTQBl9r4AZjFOUZeKk2ovRi7D26EPYGAPCqnUOQV0D X-Microsoft-Exchange-Diagnostics: 1; DB5PR07MB0807; 6:spp5J3uLMPUNfZJ5AxrqM8XVbD/2HE9IlMxSgOt8BOATuT0f3NV1bCwWzopnypWlDJvX2ycXpLx/U/ZaCLGrCMqOwQgQ1hEDypLWPvUSvZaN4IjDT2dv1ApMHnQuPmMLS1OQ8gbFjTHE00keln3ikb18r76Uq6NQG/WerXGL0yyQLBDUVYeSCwzXXWgPldzf8uBUaN5ZpM/23VIXkJWZlFHaPTaKj5RqlqXQuzEq2HdEPuepgj3m51FcRDYDbQpDK7v3pb2G47OpeZegkaZ+YBdTO1g73Cb93ld2IRZL/7fvfkqCeaflPzua8tExcnxN2TA0aFdz03rGKL4+RNa0KTDkmCFXwhwuB87AIkWfP5v20J17PmkmzxwPT1K7//IloPts0ZP2LWTxO+C1CoLUHTnTtFZ4K7ghL9GoPbSQDo4Hue5Kezyb6qpMHEb/SitF; 5:iEz0/jZfBFHx1rjLK+lpG1aZnYHAN6zWEYTllwNX4D6xIlRPznMTFSS7NgguWCAEKIQPMFKha46vW9O+jau8goFKk1/TJDjDI1jT6SXHuBNXI+lTU/Za5t6vgPGOaHeOalVO9RfRZdsQTBwU1FUOuQ==; 24:76v8e/p/7+6x7+IcjzgMbln3pYLQd6lP/h56EOXFCS2hAjkPJkoEAvJR3cyvYsp8OPMJBwuQISbzz+emLKavizY9FQpl0Sybt4vvFz6vNfM= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; DB5PR07MB0807; 7:GIYeKvL3Ig+AZmsQBQ5hvvC2SvA0Mf4QbYtCv/bQpjw0kgyQG/z7zYAhXx3GDV5HOdHvNSNTljyZo5R3u3dNmsotadYl279w/4f+fLIE7hvtNpj+Zjy4FAbH2RrBJxKSAnPC0bxWM73su8tpiRYgQu8C3f6hifn951yK+5HjGVYrkDLSNFzV0LsW0/8N7pePbJRUj+oP0sQfU8QBelTW58/homgtRq8gSvbJWuGtshq5y9nCsOcbOtd3KRo9dilL3ZqrnZVhMNZU3g6JmCiD9FXjt/sp6Aa9dGiQ5ohQFI98excp3ZGEAgLhiXJYF8WN+hy9w86xgkMCWwcJoqzbWjaQwen8JvXDnDFFTe9ogJD9MORWBe49htjyo6QS/h1Ccm9RWvzgbKB6CszebX7wm12J34UkmQkIRjdBSmPjzw+znD82AwhEozXezXzlYyO5tnKgF6ZNdE6JhQWMGkLOYjDMrNxHb28Q8CroNecl7VmGa94EUu8g4/NP/2PjCbYVpUGTHP0yczispAVeecm6iYSuMKXcHYSSEuxy6LSfTFxsRjEk4e0ldXT3GK76+SYw X-OriginatorOrg: nokia.onmicrosoft.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 31 Jan 2017 08:07:45.7806 (UTC) X-MS-Exchange-CrossTenant-Id: 5d471751-9675-428d-917b-70f44f9630b0 X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=5d471751-9675-428d-917b-70f44f9630b0; Ip=[131.228.2.38]; Helo=[hybrid2.ext.net.nokia.com] X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB5PR07MB0807 Subject: [lng-odp] [PATCH v4 2/8] abi: buffer: added initial definitions X-BeenThere: lng-odp@lists.linaro.org X-Mailman-Version: 2.1.16 Precedence: list List-Id: "The OpenDataPlane \(ODP\) List" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: lng-odp-bounces@lists.linaro.org Sender: "lng-odp" Initially, use the same default ABI file for all architectures. Default values match those defined in odp-linux implementation to minimize changes in this phase. Signed-off-by: Petri Savolainen --- include/odp/arch/arm32-linux/odp/api/abi/buffer.h | 7 ++++ include/odp/arch/arm64-linux/odp/api/abi/buffer.h | 7 ++++ include/odp/arch/default/api/abi/buffer.h | 38 ++++++++++++++++++++++ include/odp/arch/mips64-linux/odp/api/abi/buffer.h | 7 ++++ .../odp/arch/power64-linux/odp/api/abi/buffer.h | 7 ++++ include/odp/arch/x86_32-linux/odp/api/abi/buffer.h | 7 ++++ include/odp/arch/x86_64-linux/odp/api/abi/buffer.h | 7 ++++ platform/Makefile.inc | 2 ++ .../include/odp/api/plat/buffer_types.h | 23 ++++++++----- platform/linux-generic/odp_buffer.c | 5 +++ 10 files changed, 101 insertions(+), 9 deletions(-) create mode 100644 include/odp/arch/arm32-linux/odp/api/abi/buffer.h create mode 100644 include/odp/arch/arm64-linux/odp/api/abi/buffer.h create mode 100644 include/odp/arch/default/api/abi/buffer.h create mode 100644 include/odp/arch/mips64-linux/odp/api/abi/buffer.h create mode 100644 include/odp/arch/power64-linux/odp/api/abi/buffer.h create mode 100644 include/odp/arch/x86_32-linux/odp/api/abi/buffer.h create mode 100644 include/odp/arch/x86_64-linux/odp/api/abi/buffer.h -- 2.8.1 diff --git a/include/odp/arch/arm32-linux/odp/api/abi/buffer.h b/include/odp/arch/arm32-linux/odp/api/abi/buffer.h new file mode 100644 index 0000000..d9c3193 --- /dev/null +++ b/include/odp/arch/arm32-linux/odp/api/abi/buffer.h @@ -0,0 +1,7 @@ +/* Copyright (c) 2017, Linaro Limited + * All rights reserved. + * + * SPDX-License-Identifier: BSD-3-Clause + */ + +#include diff --git a/include/odp/arch/arm64-linux/odp/api/abi/buffer.h b/include/odp/arch/arm64-linux/odp/api/abi/buffer.h new file mode 100644 index 0000000..d9c3193 --- /dev/null +++ b/include/odp/arch/arm64-linux/odp/api/abi/buffer.h @@ -0,0 +1,7 @@ +/* Copyright (c) 2017, Linaro Limited + * All rights reserved. + * + * SPDX-License-Identifier: BSD-3-Clause + */ + +#include diff --git a/include/odp/arch/default/api/abi/buffer.h b/include/odp/arch/default/api/abi/buffer.h new file mode 100644 index 0000000..eec6f01 --- /dev/null +++ b/include/odp/arch/default/api/abi/buffer.h @@ -0,0 +1,38 @@ +/* Copyright (c) 2017, Linaro Limited + * All rights reserved. + * + * SPDX-License-Identifier: BSD-3-Clause + */ + +#ifndef ODP_ABI_BUFFER_H_ +#define ODP_ABI_BUFFER_H_ + +#ifdef __cplusplus +extern "C" { +#endif + +/** @internal Dummy type for strong typing */ +typedef struct { char dummy; /**< @internal Dummy */ } _odp_abi_buffer_t; + +/** @internal Dummy type for strong typing */ +typedef struct { char dummy; /**< @internal Dummy */ } _odp_abi_buffer_seg_t; + +/** @ingroup odp_buffer + * @{ + */ + +typedef _odp_abi_buffer_t *odp_buffer_t; +typedef _odp_abi_buffer_seg_t *odp_buffer_seg_t; + +#define ODP_BUFFER_INVALID ((odp_buffer_t)0xffffffff) +#define ODP_SEGMENT_INVALID ((odp_buffer_seg_t)0xffffffff) + +/** + * @} + */ + +#ifdef __cplusplus +} +#endif + +#endif diff --git a/include/odp/arch/mips64-linux/odp/api/abi/buffer.h b/include/odp/arch/mips64-linux/odp/api/abi/buffer.h new file mode 100644 index 0000000..d9c3193 --- /dev/null +++ b/include/odp/arch/mips64-linux/odp/api/abi/buffer.h @@ -0,0 +1,7 @@ +/* Copyright (c) 2017, Linaro Limited + * All rights reserved. + * + * SPDX-License-Identifier: BSD-3-Clause + */ + +#include diff --git a/include/odp/arch/power64-linux/odp/api/abi/buffer.h b/include/odp/arch/power64-linux/odp/api/abi/buffer.h new file mode 100644 index 0000000..d9c3193 --- /dev/null +++ b/include/odp/arch/power64-linux/odp/api/abi/buffer.h @@ -0,0 +1,7 @@ +/* Copyright (c) 2017, Linaro Limited + * All rights reserved. + * + * SPDX-License-Identifier: BSD-3-Clause + */ + +#include diff --git a/include/odp/arch/x86_32-linux/odp/api/abi/buffer.h b/include/odp/arch/x86_32-linux/odp/api/abi/buffer.h new file mode 100644 index 0000000..d9c3193 --- /dev/null +++ b/include/odp/arch/x86_32-linux/odp/api/abi/buffer.h @@ -0,0 +1,7 @@ +/* Copyright (c) 2017, Linaro Limited + * All rights reserved. + * + * SPDX-License-Identifier: BSD-3-Clause + */ + +#include diff --git a/include/odp/arch/x86_64-linux/odp/api/abi/buffer.h b/include/odp/arch/x86_64-linux/odp/api/abi/buffer.h new file mode 100644 index 0000000..d9c3193 --- /dev/null +++ b/include/odp/arch/x86_64-linux/odp/api/abi/buffer.h @@ -0,0 +1,7 @@ +/* Copyright (c) 2017, Linaro Limited + * All rights reserved. + * + * SPDX-License-Identifier: BSD-3-Clause + */ + +#include diff --git a/platform/Makefile.inc b/platform/Makefile.inc index a24accb..b078df8 100644 --- a/platform/Makefile.inc +++ b/platform/Makefile.inc @@ -62,10 +62,12 @@ odpapispecinclude_HEADERS = \ odpapiabidefaultincludedir= $(includedir)/odp/arch/default/api/abi odpapiabidefaultinclude_HEADERS = \ + $(top_srcdir)/include/odp/arch/default/api/abi/buffer.h \ $(top_srcdir)/include/odp/arch/default/api/abi/event.h odpapiabiarchincludedir= $(includedir)/odp/arch/@ARCH_ABI@/odp/api/abi odpapiabiarchinclude_HEADERS = \ + $(top_srcdir)/include/odp/arch/@ARCH_ABI@/odp/api/abi/buffer.h \ $(top_srcdir)/include/odp/arch/@ARCH_ABI@/odp/api/abi/event.h EXTRA_DIST = \ diff --git a/platform/linux-generic/include/odp/api/plat/buffer_types.h b/platform/linux-generic/include/odp/api/plat/buffer_types.h index 344121b..809768f 100644 --- a/platform/linux-generic/include/odp/api/plat/buffer_types.h +++ b/platform/linux-generic/include/odp/api/plat/buffer_types.h @@ -17,26 +17,31 @@ extern "C" { #endif +#include +#if ODP_ABI_COMPAT == 1 +#include +#else + #include #include -/** ODP buffer */ +/** @ingroup odp_buffer + * @{ + */ + typedef ODP_HANDLE_T(odp_buffer_t); -/** Invalid buffer */ #define ODP_BUFFER_INVALID _odp_cast_scalar(odp_buffer_t, 0xffffffff) -/** ODP buffer segment */ typedef ODP_HANDLE_T(odp_buffer_seg_t); -/** Invalid segment */ #define ODP_SEGMENT_INVALID ((odp_buffer_seg_t)ODP_BUFFER_INVALID) -/** Get printable format of odp_buffer_t */ -static inline uint64_t odp_buffer_to_u64(odp_buffer_t hdl) -{ - return _odp_pri(hdl); -} +/** + * @} + */ + +#endif #ifdef __cplusplus } diff --git a/platform/linux-generic/odp_buffer.c b/platform/linux-generic/odp_buffer.c index b791039..88c8140 100644 --- a/platform/linux-generic/odp_buffer.c +++ b/platform/linux-generic/odp_buffer.c @@ -76,3 +76,8 @@ void odp_buffer_print(odp_buffer_t buf) ODP_PRINT("\n%s\n", str); } + +uint64_t odp_buffer_to_u64(odp_buffer_t hdl) +{ + return _odp_pri(hdl); +} From patchwork Tue Jan 31 08:07:21 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Petri Savolainen X-Patchwork-Id: 92949 Delivered-To: patch@linaro.org Received: by 10.140.20.99 with SMTP id 90csp1815829qgi; Tue, 31 Jan 2017 00:10:42 -0800 (PST) X-Received: by 10.55.33.163 with SMTP id f35mr24874574qki.66.1485850242452; Tue, 31 Jan 2017 00:10:42 -0800 (PST) Return-Path: Received: from lists.linaro.org (lists.linaro.org. [54.225.227.206]) by mx.google.com with ESMTP id x67si11440437qka.111.2017.01.31.00.10.42; Tue, 31 Jan 2017 00:10:42 -0800 (PST) Received-SPF: pass (google.com: domain of lng-odp-bounces@lists.linaro.org designates 54.225.227.206 as permitted sender) client-ip=54.225.227.206; Authentication-Results: mx.google.com; spf=pass (google.com: domain of lng-odp-bounces@lists.linaro.org designates 54.225.227.206 as permitted sender) smtp.mailfrom=lng-odp-bounces@lists.linaro.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: by lists.linaro.org (Postfix, from userid 109) id 1B54B607C8; Tue, 31 Jan 2017 08:10:42 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on ip-10-142-244-252 X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAD_ENC_HEADER,BAYES_00, RCVD_IN_DNSWL_NONE, RCVD_IN_MSPIKE_H4, RCVD_IN_MSPIKE_WL, SPF_HELO_PASS, URIBL_BLOCKED autolearn=disabled version=3.4.0 Received: from [127.0.0.1] (localhost [127.0.0.1]) by lists.linaro.org (Postfix) with ESMTP id 84F5360C94; Tue, 31 Jan 2017 08:08:11 +0000 (UTC) X-Original-To: lng-odp@lists.linaro.org Delivered-To: lng-odp@lists.linaro.org Received: by lists.linaro.org (Postfix, from userid 109) id EEC2260C07; Tue, 31 Jan 2017 08:07:55 +0000 (UTC) Received: from EUR01-DB5-obe.outbound.protection.outlook.com (mail-db5eur01on0109.outbound.protection.outlook.com [104.47.2.109]) by lists.linaro.org (Postfix) with ESMTPS id 0692B60C48 for ; Tue, 31 Jan 2017 08:07:50 +0000 (UTC) Received: from AMXPR07CA0041.eurprd07.prod.outlook.com (10.242.64.41) by HE1PR0701MB2713.eurprd07.prod.outlook.com (10.168.188.20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P384) id 15.1.874.6; Tue, 31 Jan 2017 08:07:48 +0000 Received: from DB3FFO11FD022.protection.gbl (2a01:111:f400:7e04::159) by AMXPR07CA0041.outlook.office365.com (2a01:111:e400:1000::41) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P384) id 15.1.888.5 via Frontend Transport; Tue, 31 Jan 2017 08:07:48 +0000 Received-SPF: SoftFail (protection.outlook.com: domain of transitioning linaro.org discourages use of 131.228.2.36 as permitted sender) Received: from hybrid2.ext.net.nokia.com (131.228.2.36) by DB3FFO11FD022.mail.protection.outlook.com (10.47.217.53) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P384) id 15.1.874.2 via Frontend Transport; Tue, 31 Jan 2017 08:07:47 +0000 Received: from fihe3nok1346.nsn-intra.net (10.158.36.134) by fihe3nok1347.nsn-intra.net (10.158.36.135) with Microsoft SMTP Server (TLS) id 15.1.466.34; Tue, 31 Jan 2017 10:07:47 +0200 Received: from mailrelay.int.nokia.com (10.130.128.21) by fihe3nok1346.nsn-intra.net (10.158.36.134) with Microsoft SMTP Server (TLS) id 15.1.466.34 via Frontend Transport; Tue, 31 Jan 2017 10:07:46 +0200 Received: from fihe3nok0734.emea.nsn-net.net (localhost [127.0.0.1]) by fihe3nok0734.emea.nsn-net.net (8.14.9/8.14.5) with ESMTP id v0V87Q1b032656 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT) for ; Tue, 31 Jan 2017 10:07:26 +0200 Received: from 10.144.19.15 ([10.144.104.219]) by fihe3nok0734.emea.nsn-net.net (8.14.9/8.14.5) with ESMTP id v0V87Qao032638 (version=TLSv1/SSLv3 cipher=AES128-SHA256 bits=128 verify=NOT) for ; Tue, 31 Jan 2017 10:07:26 +0200 X-HPESVCS-Source-Ip: 10.144.104.219 From: Petri Savolainen To: Date: Tue, 31 Jan 2017 10:07:21 +0200 Message-ID: <1485850046-28457-4-git-send-email-petri.savolainen@linaro.org> X-Mailer: git-send-email 2.8.1 In-Reply-To: <1485850046-28457-1-git-send-email-petri.savolainen@linaro.org> References: <1485850046-28457-1-git-send-email-petri.savolainen@linaro.org> MIME-Version: 1.0 X-EOPAttributedMessage: 0 X-MS-Office365-Filtering-HT: Tenant X-Forefront-Antispam-Report: CIP:131.228.2.36; IPV:NLI; CTRY:FI; EFV:NLI; SFV:NSPM; SFS:(10019020)(6009001)(7916002)(39840400002)(39410400002)(39860400002)(39850400002)(39450400003)(2980300002)(189002)(199003)(5003940100001)(2351001)(106466001)(626004)(105596002)(305945005)(50986999)(47776003)(356003)(33646002)(81166006)(81156014)(8676002)(50226002)(38730400001)(8936002)(77096006)(76176999)(5890100001)(92566002)(68736007)(50466002)(48376002)(189998001)(97736004)(5660300001)(22756006)(53936002)(110136003)(107886002)(86362001)(36756003)(450100001)(6666003)(2950100002)(6916009)(2906002); DIR:OUT; SFP:1102; SCL:1; SRVR:HE1PR0701MB2713; H:hybrid2.ext.net.nokia.com; FPR:; SPF:SoftFail; PTR:InfoDomainNonexistent; MX:1; A:1; LANG:en; X-Microsoft-Exchange-Diagnostics: 1; DB3FFO11FD022; 1:8Tl/IahtBSAhpUxwYvIej2syahspEr0wViJbyVgAhIlyMpidrYeN1me5wtIQ//HGSKllQ4Of8HoPukbR+hBK/Icve2GCE6/u4i2Qqz3pN3WExoIrffGjfsvvSxG2YhFtmEcrQJczDh0lbwwPD25FRJJ/jemNPy58ionb17cTjUhBiPig8BHUCXwwrUOQ8pzEmuqpaJx2oh+fD5XcAeH6fMHZ7ub3mgJd6cDCbMmmv5c8gQLiFbUlSAgqIMDI07ApWRYC8GWt0b8vRjVpBEKqkdpqKD80GdUpZA5O1Hryp6gwQATcYa3Ly03JnjQulG4/Y/4t7SQLfOuFcQ56rMu1FIIYOyRLJrzocH4BR2GqKt4ImaayPKkOsWTl6jcVUT/PZLGFZBcECYalYWCmdZ1s8beMFToupvNZ2XFYYcLHLSOueU6j2R2UtJXTX3fPZgsjjM9YCRyiwNDO7Wbet3djpQ== X-MS-Office365-Filtering-Correlation-Id: 8c899162-784a-4163-a62d-08d449b03e92 X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(22001); SRVR:HE1PR0701MB2713; X-Microsoft-Exchange-Diagnostics: 1; HE1PR0701MB2713; 3:xHbGVW3wqJsMmn0Y+hk3j9ifz9pVLaOJZQdBRmzLlzkQwnewaCr5LgDbD9NIEeWrXoaMgMf7OOkU9qUvCm75CP31Sod4mvfRFa0JXEx43kS6+kGxQ49hgVAI0BG3X0I8769+JRgqV0wlKWfHYUx7F9VGNIcuUYTHyXxK0nmekgty/zbuwMK+ksailn48IgBZiFJzOaO3GvSWSQR5ULmtTHtMO3qKUNrPlyIqUFoiIU2djx8Aeuz5oAI449ZezAv3AgEyQCtnbFZd0cvH51VQrfkAgao1eo8z+Z5XoZSRTft8kgdM/p1SBEYY/sS7M06o2hKz4jhy4/rFRQRHxpoatOINCVAYNQXggg1Y1bPRIeE=; 25:u/Cga0RHa8BiYUmR1b1UIxaYeBX4w0GE+k1/Yw8x4bikdlSu+6ki8KMmKNpZHOIa0gfMWiIK+7+0ntSq1vrt/+B+61cKj6JoCZcreis1jXrapIgINgVC6qfrUbulZUsw2s0C58JViCde7f6DH+yw1VY0dmVgNwfGYQzvPVhtd95qLE0X8iXJ7Vb7tkW1nRXr6O63cDD+2SPbg3XkiCenZhXeYi4JHeOhLH9uoxFRZ+5Wj/e+27CcyqNEwzRQpDWmAu1L17SxquYUq5uvY013Z7WcTnOLyI2oAtYCod8A9xTrgngib7CAQikqXChUllHhuhbcoDZv0ReCimC6oZ9WGiU0r9nTfOQvr3nOvWrUHdTEFy2tWE4dOvtsDy/Qi4myAu/zBYyjgUvkK1apTHZD6v8fhgRBZlrBpqoI56y7d2OyRsujlaT+yNVwmKYTilxaCAYxZxzWFoN13MGtBaj6Dw== X-Microsoft-Exchange-Diagnostics: 1; HE1PR0701MB2713; 31:UZfWabdb9u7hbbLkz1/v8gikAJqOQ7cp3BWs85nyu+F7yJ1JtvFJ3YJC14rPGtyZ3tPV2O2HUGiWr4TQDNRPxJqvdVJfe/hxALT+5xy+SS2gjEweMrSaIoccu54iMiCZiCFncT1prAnavyS9FDX33jrdI0khli9n9n1PTCu55sxHbtRlpL7ciNpAAk+gyWpFFxHCfx3qrGF96sG5W0mcVGDT6VvnXymevbxmcnqCwTFL4U2xX4m7827/dktGODOXaxq2bTzCCb3fB5ZZYtAECQ==; 20:obT0dSuKW917+yKSZuIG/VoqvH0hRKiU635I9pD5mvcalbjsIe2jLt/DfNMqXj/KFdClWoaaRCCViqDLcUcJJq1qSbLEpPq6uEZFbAWXkgF3Z30plAQtKw/KS3JwRdPTTLQU0t4MjPM34ZMSUQ1j/E+iJWgI4wuThkjShxl6XQCQEC844SyF9IgQWqFbV3j1QY1Lvgj5YLf45aEzinL/UogF7sThtKQRqi60LmBCkRTd8zlN9PgDlGFnlTYgvnHNOynIeExRhgVkVrYaddqJzlBdzhf0r+9C9hLxdp1qmACz7e+suEZnbMjWTfSCGj0MFUVYpcNJ0ISNyjLu5mQDTANkxP6dvAwDWF17TIuo7je83on7TC8y8ULdVrVaV7OwAcwivvr5VO3NhKbBcMhI5XByqEj+Wvt7rXxdjDDrJIYeICfVBOtPhdCT8W+mvS9EPPmGX5yto3XhtpcOtywVDmuuzF9MWyFZBrBXHz92yvIxVBr+7Z5n+fUKk8EgvIJjKW+Pk0GlVqxAM3gpRMPs9NiBdOaow0NL7qONEVKfLLOHh8vQ4DywH9IS5wGUGtldWgkm4MR/sWlhv7t4ZhouCWkFMg9WzdmAwVjT/SmQf9M= X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:; X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(6040375)(601004)(2401047)(13016025)(13018025)(5005006)(8121501046)(3002001)(10201501046)(6055026)(6041248)(20161123560025)(20161123562025)(20161123564025)(20161123555025)(6072148); SRVR:HE1PR0701MB2713; BCL:0; PCL:0; RULEID:; SRVR:HE1PR0701MB2713; X-Microsoft-Exchange-Diagnostics: 1; HE1PR0701MB2713; 4:2/sihxwBCohXHDx/NFoYOjtse/C+1Qm0oVewnDOn6WPVFPZN8lTruYkvUx8hiu72JH5iaoew5S+LdbRAYnI939yJK7fi+P/7IwMr4C0LeiAXoOHKt/ohOI9fxJazNy+zIXCgfnBGefMA5aSEduSQ9XCm61PaguJ5qquAbyaHAHyi6Y1s3032jqg9XKYCrFaqqiONlxC8zu0W5D+O+7BMu2+23Q7NNpSdy82VEe0szK/aQxvCZ4mwSah/fwt0jnPPs/8Kt+EEz3I+TeZ9qKyeD6oz38MT0rUJiiNR/IcKhoGISUan4qBa08NHzJjYY0R/eFX+6uBFQ3pUZfEK1FjWEBVMeL+yYh3uVr5aD0T9NbOeYVqAiqwKEW0OeXRA/wB2kjaYXo5E7IIdqWq4jzQxQFOGTelnX7I9B4Rdm4UZHqf8JWRe+MpwcEA9bNZorQdu/kR33yBFMh/+ZrPXD8ShWkO0xRZXZdBKTqg/eUKpEz87i3RzCDYyMLLkrOH/tYg1DFfk8pH4sJTFP08/QZGq0Nu+2DPgJswHzHfdONg+DJlppitMFipliHLL8R1uiiHCK/bYQu4kpY+kDHE39GwWZ0GQNK6Uwqm+ocs2M1+mGulSFxeax9CSdL/TQMXQA//I X-Forefront-PRVS: 0204F0BDE2 X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; HE1PR0701MB2713; 23:t9vWIf7W4uAcKHkEDTFa6eNfhZyPxG9IGHyi3ax?= w45GdNgLCCHfC+ziPzDzNQ0uHDYxgqfvG+CyuMdHdZWuzhoXl7S6LPAN/rELRD3NAVevqOWC+Hm9ieVU/EqKkuNUYOI5eu+ha2x943KMGGoBYm/Zb/wUh/1fs6HDp0Uhs//c/fUXYOXJpN6FctyLzX1ufSYijQ9+4ODCXyQAQk50w+lTmbz6pu+BdYBDgTei7smev3+TcwzinpXf98EnC/NqDTvRZCuvvtpstkvfppL2ivVoAaKBosk0KDtskGLV8H3MG1xyA+z7bHUPRJybMwRG83dGvE7Rc0RoPa5moSs4QX+Xo79bO5/MrYvh/JVHxD2JMitBWqEfgUyt+r0Oj21WiAIzVYI5WxdvN+UIOdwEw0ao28VAdVDE39dbHdqrX8BsuDmnTMlCkN2A5gbprTD4Q4E1tWYOEj+aomJBHxVg4Ua00/dzMNJvMzBwtNhLC+yyQSHtllsfCNOT7QbMq4Uafhh6MtS+iS4BUIpL/5ixLuEqCLmvbZxC2IxWca9kTAAH6mXP4C9Ak7816f4uyND7/ThibMbUf4f0l7H7G2IVOEUVoMWcMnTeF7bg5+TSEslev7MBD+Lez/VStjNCBDIvtEIVlWTGTVM8mmXe6kSGKdL38Aemq84Gcie8AQbHbGNJ3bXpW/8MPpxmmSZ8mResmQZwvnGzxu5kfPxQgbynGf6X0+iyA286NZCalpVckco6Cw9aEJ9N3da3yp40I5l9IaqQEYyAGTIuZd/hhBujHK344bPVYN8fq7t8pkZ8/hfb/MtqFGLWB/QHcIr+wiC0bbwSeiu4xmkhqOJQmfr31XYy2oITBClhJe2bz7cFlvF2TE4waTSTCRtWOjOZfL1CDGVDhd37geSfBxJ2CaU2s4Hrhc8afISN+5DG8+NaQq2LhxQVtX8e7b28NumLiDWcOGDb4s3IhUHjDXr9gjbBzijTzZLpp+cY+NDhpzO5XQ6xtiQcQaT1O6Z30zRSfQ4vWLtt9C12Vrr9k5qua9c+lH79gKhvzNMKZzMZGUCAmywc/51K0clssZFBRkQC7p36zSbTmaio7qwcEK4UZXtsBxWGiEY/cHnALRF5ZhBgqF1sMF+JllSzvLi9r08L1t4BHck4ldj4xxKCLPA+TLI6q/g== X-Microsoft-Exchange-Diagnostics: 1; HE1PR0701MB2713; 6:jO9F3tJfmARDcumbHqSV5NwPrudYKzDldw5nQSAbfc543MrMa6yQCAa4in/FwCECjeP+r23J9gVpjpHEIu0nCcrgSFWMcJf+Kl9UGRWKdNWzPHY8j68hjwWaVSz6wPT52uKckV10OR6jGuCtA3N847i89HVN99ZdgsZ1JXke9ofrl0DMMcBbNLd+tPchHZzlcwwgT7bHcbbe3L1C2MhzEA+RgaW8fnQfgNajB5Nb0jTcskqacAuvvfSrV4GMJ6p50L7EpLISo7Yru20dJWUTlr77sD+L9XRIj+k7e+B6JmHvZPNEMZYIs4H1cWx3cX5WoG0RqA2uhdUYsrKrUeXyTXVbKR8lEyi8N2C4dgPJnhlICU0qSyecNZ1P2b3OwzjU4RlNHKL4C8Utehp5ThUGlkDWPDt68XICLWtvc8GE+hCVyiYVlFJRkiyFrQC+m3ml; 5:yGdICZCh3Rnr4dfVCMjUCtE37j//n29Ir5/xQa8VSBU494wh7JajRAVhkRdJZSS9Xo6fHN2s6O8ibvsqsK2poUhWKHmZ8GIlO3MILlAkMd1cEU4URsU2NWj/2cXRrq43rtllitxWBhkiUBxtZ8xFFw==; 24:PrgFNZEIej3eyvpuWcy/9VCNaPEjno2Oy1vxF5LqTVPvn3nT7nVVnvs6bdUK1TqFAI06dQFf4odpKTzs32KszYmqjjZ+w8cgKtRgbV0jwxQ= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; HE1PR0701MB2713; 7:x2Dw3zV6tHnOLtzyF1XxLxIab9DUJuAS1nM+Fl1Hxjmdqk5TKjD8BnTWv7O2rs7TkjbqMdo98mwvFKzudoiDQqvXkH9vMOBBfXJrPyLZJk/1PguIL1BDyQ3N9vbKGDuiXjJw/EPCEus7lhfnzk4FHP6eQyIn7RD7oyRdpqmbGBUA+IKcT12xmMXlJbloOGnIxNifxgvrrFnISBVK3sOwcEdV7ExlStiRya7pWcGHXkG2isfIPTsXPSYRrOh6uwnSgRmN4MOu7EfOCZIn151/qREVEVzXPk1iomp++meW0EFI1sKbkYScCCbLdLUgF+rexRgQgEJt+GLbDjCRGHo4ApDGxfQiHOXc92QrEVJXdFRD18fCbGIMTCKDOut19Tukbz4vNbfBovDXOSh5Dyi4ncXh+TkCnPX64e4qFTNWYccLQfCQ5uRUm7xfUOG41cJueVhHXKOEvgpfXgS4qBDxO2eBWrQCd+98Pk7PF1+9sYRypWmuhmGNmU8BLvQOZk7+r9oFpbOk9rC5cenZ8yvzoAwZi0zuNjx7n3r4bipJTrCPyMK2ZzCYYHDa4f3YjSoh X-OriginatorOrg: nokia.onmicrosoft.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 31 Jan 2017 08:07:47.7704 (UTC) X-MS-Exchange-CrossTenant-Id: 5d471751-9675-428d-917b-70f44f9630b0 X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=5d471751-9675-428d-917b-70f44f9630b0; Ip=[131.228.2.36]; Helo=[hybrid2.ext.net.nokia.com] X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: HE1PR0701MB2713 Subject: [lng-odp] [PATCH v4 3/8] abi: classifier: added initial definitions X-BeenThere: lng-odp@lists.linaro.org X-Mailman-Version: 2.1.16 Precedence: list List-Id: "The OpenDataPlane \(ODP\) List" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: lng-odp-bounces@lists.linaro.org Sender: "lng-odp" Initially, use the same default ABI file for all architectures. Default values match those defined in odp-linux implementation to minimize changes in this phase. Removed unused type definitions, documentation of those need to be still removed for API spec. Signed-off-by: Petri Savolainen --- .../arch/arm32-linux/odp/api/abi/classification.h | 7 ++++ .../arch/arm64-linux/odp/api/abi/classification.h | 7 ++++ include/odp/arch/default/api/abi/classification.h | 40 ++++++++++++++++++++++ .../arch/mips64-linux/odp/api/abi/classification.h | 7 ++++ .../power64-linux/odp/api/abi/classification.h | 7 ++++ .../arch/x86_32-linux/odp/api/abi/classification.h | 7 ++++ .../arch/x86_64-linux/odp/api/abi/classification.h | 7 ++++ platform/Makefile.inc | 2 ++ .../linux-generic/include/odp/api/classification.h | 9 +++-- .../include/odp/api/plat/classification_types.h | 34 +++++++----------- .../include/odp_classification_datamodel.h | 3 -- platform/linux-generic/odp_classification.c | 12 +++++-- 12 files changed, 114 insertions(+), 28 deletions(-) create mode 100644 include/odp/arch/arm32-linux/odp/api/abi/classification.h create mode 100644 include/odp/arch/arm64-linux/odp/api/abi/classification.h create mode 100644 include/odp/arch/default/api/abi/classification.h create mode 100644 include/odp/arch/mips64-linux/odp/api/abi/classification.h create mode 100644 include/odp/arch/power64-linux/odp/api/abi/classification.h create mode 100644 include/odp/arch/x86_32-linux/odp/api/abi/classification.h create mode 100644 include/odp/arch/x86_64-linux/odp/api/abi/classification.h -- 2.8.1 diff --git a/include/odp/arch/arm32-linux/odp/api/abi/classification.h b/include/odp/arch/arm32-linux/odp/api/abi/classification.h new file mode 100644 index 0000000..d48a473 --- /dev/null +++ b/include/odp/arch/arm32-linux/odp/api/abi/classification.h @@ -0,0 +1,7 @@ +/* Copyright (c) 2017, Linaro Limited + * All rights reserved. + * + * SPDX-License-Identifier: BSD-3-Clause + */ + +#include diff --git a/include/odp/arch/arm64-linux/odp/api/abi/classification.h b/include/odp/arch/arm64-linux/odp/api/abi/classification.h new file mode 100644 index 0000000..d48a473 --- /dev/null +++ b/include/odp/arch/arm64-linux/odp/api/abi/classification.h @@ -0,0 +1,7 @@ +/* Copyright (c) 2017, Linaro Limited + * All rights reserved. + * + * SPDX-License-Identifier: BSD-3-Clause + */ + +#include diff --git a/include/odp/arch/default/api/abi/classification.h b/include/odp/arch/default/api/abi/classification.h new file mode 100644 index 0000000..771907a --- /dev/null +++ b/include/odp/arch/default/api/abi/classification.h @@ -0,0 +1,40 @@ +/* Copyright (c) 2017, Linaro Limited + * All rights reserved. + * + * SPDX-License-Identifier: BSD-3-Clause + */ + +#ifndef ODP_ABI_CLASSIFICATION_H_ +#define ODP_ABI_CLASSIFICATION_H_ + +#ifdef __cplusplus +extern "C" { +#endif + +/** @internal Dummy type for strong typing */ +typedef struct { char dummy; /**< @internal Dummy */ } _odp_abi_cos_t; + +/** Dummy type for strong typing */ +typedef struct { char dummy; /**< @internal Dummy */ } _odp_abi_pmr_t; + +/** @ingroup odp_classification + * @{ + */ + +typedef _odp_abi_cos_t *odp_cos_t; +typedef _odp_abi_pmr_t *odp_pmr_t; + +#define ODP_COS_INVALID ((odp_cos_t)~0) +#define ODP_PMR_INVAL ((odp_pmr_t)~0) + +#define ODP_COS_NAME_LEN 32 + +/** + * @} + */ + +#ifdef __cplusplus +} +#endif + +#endif diff --git a/include/odp/arch/mips64-linux/odp/api/abi/classification.h b/include/odp/arch/mips64-linux/odp/api/abi/classification.h new file mode 100644 index 0000000..d48a473 --- /dev/null +++ b/include/odp/arch/mips64-linux/odp/api/abi/classification.h @@ -0,0 +1,7 @@ +/* Copyright (c) 2017, Linaro Limited + * All rights reserved. + * + * SPDX-License-Identifier: BSD-3-Clause + */ + +#include diff --git a/include/odp/arch/power64-linux/odp/api/abi/classification.h b/include/odp/arch/power64-linux/odp/api/abi/classification.h new file mode 100644 index 0000000..d48a473 --- /dev/null +++ b/include/odp/arch/power64-linux/odp/api/abi/classification.h @@ -0,0 +1,7 @@ +/* Copyright (c) 2017, Linaro Limited + * All rights reserved. + * + * SPDX-License-Identifier: BSD-3-Clause + */ + +#include diff --git a/include/odp/arch/x86_32-linux/odp/api/abi/classification.h b/include/odp/arch/x86_32-linux/odp/api/abi/classification.h new file mode 100644 index 0000000..d48a473 --- /dev/null +++ b/include/odp/arch/x86_32-linux/odp/api/abi/classification.h @@ -0,0 +1,7 @@ +/* Copyright (c) 2017, Linaro Limited + * All rights reserved. + * + * SPDX-License-Identifier: BSD-3-Clause + */ + +#include diff --git a/include/odp/arch/x86_64-linux/odp/api/abi/classification.h b/include/odp/arch/x86_64-linux/odp/api/abi/classification.h new file mode 100644 index 0000000..d48a473 --- /dev/null +++ b/include/odp/arch/x86_64-linux/odp/api/abi/classification.h @@ -0,0 +1,7 @@ +/* Copyright (c) 2017, Linaro Limited + * All rights reserved. + * + * SPDX-License-Identifier: BSD-3-Clause + */ + +#include diff --git a/platform/Makefile.inc b/platform/Makefile.inc index b078df8..bb40692 100644 --- a/platform/Makefile.inc +++ b/platform/Makefile.inc @@ -63,11 +63,13 @@ odpapispecinclude_HEADERS = \ odpapiabidefaultincludedir= $(includedir)/odp/arch/default/api/abi odpapiabidefaultinclude_HEADERS = \ $(top_srcdir)/include/odp/arch/default/api/abi/buffer.h \ + $(top_srcdir)/include/odp/arch/default/api/abi/classification.h \ $(top_srcdir)/include/odp/arch/default/api/abi/event.h odpapiabiarchincludedir= $(includedir)/odp/arch/@ARCH_ABI@/odp/api/abi odpapiabiarchinclude_HEADERS = \ $(top_srcdir)/include/odp/arch/@ARCH_ABI@/odp/api/abi/buffer.h \ + $(top_srcdir)/include/odp/arch/@ARCH_ABI@/odp/api/abi/classification.h \ $(top_srcdir)/include/odp/arch/@ARCH_ABI@/odp/api/abi/event.h EXTRA_DIST = \ diff --git a/platform/linux-generic/include/odp/api/classification.h b/platform/linux-generic/include/odp/api/classification.h index 0bec38b..2ba6eb0 100644 --- a/platform/linux-generic/include/odp/api/classification.h +++ b/platform/linux-generic/include/odp/api/classification.h @@ -10,8 +10,8 @@ * ODP classification descriptor */ -#ifndef ODP_PLAT_CLASSIFY_H_ -#define ODP_PLAT_CLASSIFY_H_ +#ifndef ODP_PLAT_CLASSIFICATION_H_ +#define ODP_PLAT_CLASSIFICATION_H_ #ifdef __cplusplus extern "C" { @@ -28,6 +28,11 @@ extern "C" { * @{ */ +/* REMOVE THESE FROM API SPEC. Typedefs needed only for suppressing Doxygen + * warning. */ +typedef void odp_flowsig_t; +typedef void odp_cos_flow_set_t; + /** * @} */ diff --git a/platform/linux-generic/include/odp/api/plat/classification_types.h b/platform/linux-generic/include/odp/api/plat/classification_types.h index 2093f54..d210feb 100644 --- a/platform/linux-generic/include/odp/api/plat/classification_types.h +++ b/platform/linux-generic/include/odp/api/plat/classification_types.h @@ -10,46 +10,38 @@ * ODP classification descriptor */ -#ifndef ODP_CLASSIFY_TYPES_H_ -#define ODP_CLASSIFY_TYPES_H_ +#ifndef ODP_CLASSIFICATION_TYPES_H_ +#define ODP_CLASSIFICATION_TYPES_H_ #ifdef __cplusplus extern "C" { #endif +#include +#if ODP_ABI_COMPAT == 1 +#include +#else + #include -/** @addtogroup odp_classification +/** @ingroup odp_classification * @{ */ typedef ODP_HANDLE_T(odp_cos_t); -typedef ODP_HANDLE_T(odp_flowsig_t); - -#define ODP_COS_INVALID _odp_cast_scalar(odp_cos_t, ~0) -#define ODP_COS_NAME_LEN 32 - -typedef uint16_t odp_cos_flow_set_t; +#define ODP_COS_INVALID _odp_cast_scalar(odp_cos_t, ~0) typedef ODP_HANDLE_T(odp_pmr_t); -#define ODP_PMR_INVAL _odp_cast_scalar(odp_pmr_t, ~0) - -/** Get printable format of odp_cos_t */ -static inline uint64_t odp_cos_to_u64(odp_cos_t hdl) -{ - return _odp_pri(hdl); -} +#define ODP_PMR_INVAL _odp_cast_scalar(odp_pmr_t, ~0) -/** Get printable format of odp_pmr_t */ -static inline uint64_t odp_pmr_to_u64(odp_pmr_t hdl) -{ - return _odp_pri(hdl); -} +#define ODP_COS_NAME_LEN 32 /** * @} */ +#endif + #ifdef __cplusplus } #endif diff --git a/platform/linux-generic/include/odp_classification_datamodel.h b/platform/linux-generic/include/odp_classification_datamodel.h index f6393ee..d5382f3 100644 --- a/platform/linux-generic/include/odp_classification_datamodel.h +++ b/platform/linux-generic/include/odp_classification_datamodel.h @@ -83,7 +83,6 @@ struct cos_s { uint32_t valid; /* validity Flag */ odp_cls_drop_t drop_policy; /* Associated Drop Policy */ odp_queue_group_t queue_group; /* Associated Queue Group */ - odp_cos_flow_set_t flow_set; /* Assigned Flow Set */ size_t headroom; /* Headroom for this CoS */ odp_spinlock_t lock; /* cos lock */ odp_atomic_u32_t num_rule; /* num of PMRs attached with this CoS */ @@ -149,8 +148,6 @@ typedef struct classifier { uint32_t l3_precedence; /* L3 QoS precedence */ pmr_l2_cos_t l2_cos_table; /* L2 QoS-CoS table map */ pmr_l3_cos_t l3_cos_table; /* L3 Qos-CoS table map */ - odp_cos_flow_set_t flow_set; /* Flow Set to be calculated - for this pktio */ size_t headroom; /* Pktio Headroom */ size_t skip; /* Pktio Skip Offset */ } classifier_t; diff --git a/platform/linux-generic/odp_classification.c b/platform/linux-generic/odp_classification.c index 50a7e54..e3e3574 100644 --- a/platform/linux-generic/odp_classification.c +++ b/platform/linux-generic/odp_classification.c @@ -185,7 +185,6 @@ odp_cos_t odp_cls_cos_create(const char *name, odp_cls_cos_param_t *param) } cos_tbl->cos_entry[i].s.queue = queue; cos_tbl->cos_entry[i].s.pool = param->pool; - cos_tbl->cos_entry[i].s.flow_set = 0; cos_tbl->cos_entry[i].s.headroom = 0; cos_tbl->cos_entry[i].s.valid = 1; cos_tbl->cos_entry[i].s.drop_policy = drop_policy; @@ -732,7 +731,6 @@ int pktio_classifier_init(pktio_entry_t *entry) if (entry == NULL) return -1; cls = &entry->s.cls; - cls->flow_set = 0; cls->error_cos = NULL; cls->default_cos = NULL; cls->headroom = 0; @@ -897,3 +895,13 @@ cos_t *match_qos_cos(pktio_entry_t *entry, const uint8_t *pkt_addr, } return NULL; } + +uint64_t odp_cos_to_u64(odp_cos_t hdl) +{ + return _odp_pri(hdl); +} + +uint64_t odp_pmr_to_u64(odp_pmr_t hdl) +{ + return _odp_pri(hdl); +} From patchwork Tue Jan 31 08:07:22 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Petri Savolainen X-Patchwork-Id: 92946 Delivered-To: patch@linaro.org Received: by 10.140.20.99 with SMTP id 90csp1815045qgi; Tue, 31 Jan 2017 00:08:05 -0800 (PST) X-Received: by 10.55.44.133 with SMTP id s127mr24780238qkh.131.1485850085263; Tue, 31 Jan 2017 00:08:05 -0800 (PST) Return-Path: Received: from lists.linaro.org (lists.linaro.org. [54.225.227.206]) by mx.google.com with ESMTP id d54si11435863qta.72.2017.01.31.00.08.04; Tue, 31 Jan 2017 00:08:05 -0800 (PST) Received-SPF: pass (google.com: domain of lng-odp-bounces@lists.linaro.org designates 54.225.227.206 as permitted sender) client-ip=54.225.227.206; Authentication-Results: mx.google.com; spf=pass (google.com: domain of lng-odp-bounces@lists.linaro.org designates 54.225.227.206 as permitted sender) smtp.mailfrom=lng-odp-bounces@lists.linaro.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: by lists.linaro.org (Postfix, from userid 109) id 70DF160C5E; Tue, 31 Jan 2017 08:08:04 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on ip-10-142-244-252 X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAD_ENC_HEADER,BAYES_00, RCVD_IN_DNSWL_NONE, RCVD_IN_MSPIKE_H4, RCVD_IN_MSPIKE_WL, SPF_HELO_PASS, URIBL_BLOCKED autolearn=disabled version=3.4.0 Received: from [127.0.0.1] (localhost [127.0.0.1]) by lists.linaro.org (Postfix) with ESMTP id 3F0C1608AE; Tue, 31 Jan 2017 08:07:59 +0000 (UTC) X-Original-To: lng-odp@lists.linaro.org Delivered-To: lng-odp@lists.linaro.org Received: by lists.linaro.org (Postfix, from userid 109) id B367360C53; Tue, 31 Jan 2017 08:07:50 +0000 (UTC) Received: from EUR01-VE1-obe.outbound.protection.outlook.com (mail-ve1eur01on0132.outbound.protection.outlook.com [104.47.1.132]) by lists.linaro.org (Postfix) with ESMTPS id 745BD608A3 for ; Tue, 31 Jan 2017 08:07:48 +0000 (UTC) Received: from VI1PR07CA0113.eurprd07.prod.outlook.com (10.165.229.167) by DB6PR0701MB2710.eurprd07.prod.outlook.com (10.169.215.21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P384) id 15.1.888.5; Tue, 31 Jan 2017 08:07:46 +0000 Received: from DB3FFO11FD020.protection.gbl (2a01:111:f400:7e04::100) by VI1PR07CA0113.outlook.office365.com (2a01:111:e400:7a52::39) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P384) id 15.1.874.6 via Frontend Transport; Tue, 31 Jan 2017 08:07:46 +0000 Received-SPF: SoftFail (protection.outlook.com: domain of transitioning linaro.org discourages use of 131.228.2.35 as permitted sender) Received: from hybrid2.ext.net.nokia.com (131.228.2.35) by DB3FFO11FD020.mail.protection.outlook.com (10.47.217.51) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P384) id 15.1.874.2 via Frontend Transport; Tue, 31 Jan 2017 08:07:46 +0000 Received: from fihe3nok1346.nsn-intra.net (10.158.36.134) by fihe3nok1346.nsn-intra.net (10.158.36.134) with Microsoft SMTP Server (TLS) id 15.1.466.34; Tue, 31 Jan 2017 10:07:45 +0200 Received: from mailrelay.int.nokia.com (10.130.128.21) by fihe3nok1346.nsn-intra.net (10.158.36.134) with Microsoft SMTP Server (TLS) id 15.1.466.34 via Frontend Transport; Tue, 31 Jan 2017 10:07:45 +0200 Received: from fihe3nok0734.emea.nsn-net.net (localhost [127.0.0.1]) by fihe3nok0734.emea.nsn-net.net (8.14.9/8.14.5) with ESMTP id v0V87QSt032659 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT) for ; Tue, 31 Jan 2017 10:07:26 +0200 Received: from 10.144.19.15 ([10.144.104.219]) by fihe3nok0734.emea.nsn-net.net (8.14.9/8.14.5) with ESMTP id v0V87Qap032638 (version=TLSv1/SSLv3 cipher=AES128-SHA256 bits=128 verify=NOT) for ; Tue, 31 Jan 2017 10:07:26 +0200 X-HPESVCS-Source-Ip: 10.144.104.219 From: Petri Savolainen To: Date: Tue, 31 Jan 2017 10:07:22 +0200 Message-ID: <1485850046-28457-5-git-send-email-petri.savolainen@linaro.org> X-Mailer: git-send-email 2.8.1 In-Reply-To: <1485850046-28457-1-git-send-email-petri.savolainen@linaro.org> References: <1485850046-28457-1-git-send-email-petri.savolainen@linaro.org> MIME-Version: 1.0 X-EOPAttributedMessage: 0 X-MS-Office365-Filtering-HT: Tenant X-Forefront-Antispam-Report: CIP:131.228.2.35; IPV:NLI; CTRY:FI; EFV:NLI; SFV:NSPM; SFS:(10019020)(6009001)(7916002)(39850400002)(39860400002)(39840400002)(39410400002)(39450400003)(2980300002)(189002)(199003)(356003)(189998001)(305945005)(107886002)(47776003)(36756003)(92566002)(50466002)(22756006)(2351001)(53936002)(450100001)(8676002)(77096006)(106466001)(105596002)(110136003)(626004)(86362001)(33646002)(575784001)(5660300001)(81166006)(2906002)(8936002)(2950100002)(81156014)(50226002)(6916009)(38730400001)(5003940100001)(50986999)(48376002)(6666003)(76176999)(97736004)(68736007); DIR:OUT; SFP:1102; SCL:1; SRVR:DB6PR0701MB2710; H:hybrid2.ext.net.nokia.com; FPR:; SPF:SoftFail; PTR:InfoDomainNonexistent; MX:1; A:1; LANG:en; X-Microsoft-Exchange-Diagnostics: 1; DB3FFO11FD020; 1:XTIVDTA8IcueBAN4aQ4PbPYZQF2ZQAFj9tmbvdNNHXN8Optr/V13SQxpYzaJfyIDHDjCPV7+uvK5P20PcTUMXRlGG9E3RvYHEGYt/NX81aRZujjtd7vzHMft4V/iy3rD0mghIxoN06EnQGU5LKNmndkbfLyFFIXcLvVhhKp1CSU6pJml1nlhpnC5/sVvajpy+kYW1UGuG8EaWoImI8ZmALGuGp+NW9AedDQwvxJ9CZ0o52Azbl8RBqPtJoWLanvkRLOz36yXdSNbA7R5yNPibRSnHNBojI+1lqaEgf8rR4mi+X8KwLYAetSdTsQvpj/kbmlts7g81RUCaBjHn0v5vyTk52YcEGSKpjO/29wMMbMn9DuLEuyWrB0saHDSuyFxwacwzpmtb5nmZHKoOz3JMN/g7JNRlS9i6AGXp8paH/DxkbCrYvdxCoTIfzmVLnaalnzyvge24f8XeJgTmGtd+g== X-MS-Office365-Filtering-Correlation-Id: f7561547-8821-4d43-ae7b-08d449b03d9d X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(22001); SRVR:DB6PR0701MB2710; X-Microsoft-Exchange-Diagnostics: 1; DB6PR0701MB2710; 3:Kc4lFvCUcFQHdHVXsDYUgcCjSIrt+OtLC1XBzCFS2vh61B4EHQiG77Nvyi8lHUFaE0yyZYFR9SHk2T8c2c70oZcVbPdVQu75kmBqJH24shAAK9EEintNIEdtXBd5wiac9ivMLrQBDs1ujGV0KovjfpTcnwkueJXWaDIdA0qEm5QGjTmAXA5AjoKXLjLuuTQXoCE5leCyKWe/AHW7sxR3SFJAJQGQxXgu2BErRfh+RuOGKeGLojRbJB9Sja4lp+wz6qc6wp6G+KnINTKbtFn0is7SHLt7+p0jHV8Sxre14tAdn8LaTWRHF3G2SClvab6+l2iH2J2lJRTaE9EZFQTPbZSHXusig/EbGb0JkNXpEtw=; 25:HS0WvFxiOAW8/INEDq6r1Iuqw4lo9fjkpudBHlX7WEAdgxJOG906Gx5dV1sf/4Fv8P4XNQ+S5o67ovTUch8Lm8z2YBWigvQ4Wf7cVlycpT6L/Idv9VRjv1GHwk21N9s0mKWz4klZeu2c9w1a2i6wD7F29kCZdCvfhb7kRZqeaOfvrXq4L6nLy6n0vich8KufWKDiLWhbgrYjbwCuNW3rHsoBqyZwtjSq9nvmIuXv1++wTQ6ti5Lq6rX/aofA2RDZJXXWw+iKW+8u19Guw6Ii0iHbC5k7zTZz8X5lbqMzKlTHLYYUF/z6+edncpFptM30ONT7DcYlJ/rIslnlQfZTIjENqiO3DmWHD89PUIlx2yUzFhnhrS1RVBMzGFb34JqMTBJeVcjA5kfLCZidkpBw86owrVq4ktdKDzRKlg+gX7dTHB1NpmL3Oy3nDAqBdGHHXFgY3d3nuEpDjuUw1uHZxg== X-Microsoft-Exchange-Diagnostics: 1; DB6PR0701MB2710; 31:R+EUJ8Hz5ha7AZJZgviv1tCweYI1k4YUV06gYxNkKHFXEB1TcYW6n3EhNwPQEr6xbMlo61XLnczITDt6gdnCAiun2a75MB9eslNJw9T5U4djYZ4UC+89PW+TQqmczzuk2pkCWjw2KJ2j3St1X8G0Hu7q7rbmOHQ5SSmCNRD8MQYeZyVw2gI76/WlnKgLkaiSo+HBaO/aUcA+mRoSNcS2yvNFjJX5ULPuCqO5cOEJ/eRlLQ/R5eIHOO8K8DoymUkK+z0V5WIk3xpgZBGW3G3/Dg==; 20:Q0VsFAOStbV9xI5XqXfqaiX7D9xz3We/MNyKWaTNsIg6GmguRC2wsmt3Bsq3vxRJ/wpQog6FXaRZGmN2RQ1zHRvvdf5BUSEFCNAHU/6Ep2HVm9juwEuFQCZ8bUZUiie+jivf7XdhVZJRcbQNzT9buJHTGW8Zh+SGb+WroRXDV5SF2S7jqxy7rkfT4luF9dbUS/Dmo1EwXIeDkSj6FDhKCNWcsglKhl6EwuxgUFKT48qDIX/s93fKtQsMEZTA0S3L7fQ4g5z2fQT051Nvy5U8Opol/LQ2I8meZf2/2o2Pfia1RsX4MRF7C9Qn0MSmviAZ/stKgduCuzg4fsik6jsCGb0kWmljMMqjkTIEjpLCMr3v793xO5VFtybMGdjSEO62xtlfj3ufENMMjurIgpkrOBANQI6sZfM8DXdcE1b0eVc7cDxD0w0/VK9HHMSJhdWo37TF/YC8WfxQJt/G3j7AMXhE6o7/uWt3MXyn1cR4rZKNNo7FQngRNsShUNFZ1rsAvtzH3xuzM4cugUAUq/86Yzfir9B4ypoqqxUqhGe0j2wUf/YY2sVGUk82Gkd40QQ+9ToB6V+12qXA4WwHjOIAXqxRHw29hTOIsUvjgoFRN54= X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:; X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(6040375)(601004)(2401047)(13016025)(13018025)(8121501046)(5005006)(3002001)(10201501046)(6055026)(6041248)(20161123564025)(20161123560025)(20161123562025)(20161123555025)(6072148); SRVR:DB6PR0701MB2710; BCL:0; PCL:0; RULEID:; SRVR:DB6PR0701MB2710; X-Microsoft-Exchange-Diagnostics: 1; DB6PR0701MB2710; 4:sjTN2Kxco61JSAehLlRWac29je4CN31CSfXq0j0VagdeAqRmFrSqn1ffIcOh1iWMY3uSnR+3ZbXJABw4k/w4pNrBi89KqNPZDH/+W/YVJslnvuOA6j1UnADAQyFVdic/s0fP4AoFsJNbGKJaS24p3dTtoAxL6JfkfTmxiS9SpTaQOzYsE8TwjtL9my0vnGCsXTWoWAd2dgnwd5cAXmOEv8BYKn1T64sL2xjsVXroEHRN6qkCatDQmz/nM3Q12Tw3elQ0enu25JB0ERHo+YndgC1Z+ow2v6Z0nK4KNv7KaJIjhXjpxwpvXWCB+TktH6DYijOoOn7Q03AZaYYsuqoWRj4g5Z+zpb6CKmgVm7ThPGsX/cDLGie+P5QW0lHa8HutcwEwD/+QG4UzEPmeA+D8aiPHwsG/ciIziPaI8zdm+erVESOLYXXfBLh1DZEyjcBflLkkR8UIMuVPxCqsP9w/ODwP1n9dCVeNV2tUtWSSSeCGcP+RbLeGpwUr6ZHDGh1mEgfPR/s6hO3v5pp9RIsemPtHn8vckcUi2nc8gHipvaq+9B226kZdovKjbjvyoUgF1iLDID2YFB0fqwU57zt7+qWZfmUafVgF0IlWVM3tIB7o1PDUEOl0gyp+AMuIToMm X-Forefront-PRVS: 0204F0BDE2 X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; DB6PR0701MB2710; 23:0ROgOmDu/arId0j3saxgZ4EYE/dgDmXFAkqesIY?= 4aLlNWLLPK0a1YQy1Id2ljWggPLlk0po29I6L2Fj2pI07fpNE9erTcL0HSeh9BP6UP7LlfNNXqRmd94NfzpLLKiiBm0wLk+tU29Skt25SCd4b8KYJvQ4SeM8GKtEz1vfWu14vCntIVEBZ13Wsq94wVmVZMkYzCUA0HPRq9zoZeixst05S8TAM5WFEF9lO6bnR00B0/QnP7HUdluFdp2lSNKbODenwWxA9OH9PkVdwwLrdD+QQs7VIIAsFJ7Ao4gxwJu3Tp5eaeRSS4ogSGMPaEofg/RxK4/9ir/xcDJc1udQUYLnHDQvaJsdyNy4vQtjENMUt/uNhCITt4/uMw5drikwiRq6NrmvJjHBc/pbRzrOcJ4aFHlTUfbCqPFH9zAtp2BGgo7ZYbJjCrfu/o2MjoL2VGnb17WFnos5HZ4PznuiHcS6xQNeLQMXq1Lmbetz4bnCq7zLAuuQMFPyIi36csEXp6CJ2q1Dssnm64HNEZ0NYPgA8CfU/Pd5T5SHvucd2V0I7zJpEhgJiefri+oBcPw85vhWRCaQU1F1BO61i8GyLKPJ3zGaTxbfoFNqoQ01pFF85lYPJs5eYKUVrt1lGZba0ftLDn8dcPjbI7rYbH6gvHpnDMsjD3JKPFkCSXqWikMHo3KaxN+e/4+0wbjoB/XO8EtNncMOVg3ENZYPghvC9MIa0l25VjzK0tZ5+QV06I2KHLz6BgY/1ZH/BHsHESuPBVuctd3iSJAeMhhzG1MGaOrV+tYiXYKSrfislFuXVHJJHLORDu3wPbIv4MWPbkcj5HkvRSpWe49ZZbjeS9zDQFcrEAi+2Z2Ne0JNOd3VICd2CFEXUeJHUEO8qbJGvFKuHNrlc1rD087/v4E63vQAnLwHpe+Q4vjFa9v+BGc3yiUb87FQu2mN49gD2XIv9Nd9FswZxmDfZGl0WuNcCv5hEGM9ZMPKtOh9gtZiS2dbh67BagFOjnBpy633gS73HfSt28qjSuPuyS+6HAhldCyylj1U4p52aM6qxvL7vjjL3NA3tE8+qaXxGhWh9h2ey0hZq03cQVVIMh5dG58XMp5jfNftESaICklU4b4xgzyP0PAeXfCrqP0II3NHRkODBUNCDWI9UWtNyymVtAY975cXq2g== X-Microsoft-Exchange-Diagnostics: 1; DB6PR0701MB2710; 6:R9owH3qe3WBZNGN5Ty6Q33pd4o9zzndgwxpMk2mNs8ckg2eUqmN/Irn+WPz3eoD1nY1+e0TQSNVr6BqFvj1uTZmGhZ2kWHLYWruFwlbAbNW/IfnR62pp/dnZTk78/XYbq0zTtkxQdzgpSi0/8ckWyvu1uHs5O1UJTJFKPFF45KinnJWmW0F6yCCqTn5c8h7G/y6Bpqcw+OCz71WmhpmseIfQEsQCw8zH1n1hcPGzw85SlOIhKjbhEBVY+opZLqiEpS5GaE5f87RNYyKzM/wt6RCjhLr5cUJcsYt6dWCNUH+xsKJ1rpijaN3nQJEALH9tNu17fSGxE0ozsU2avkewAWa+jBd4bzvHlfzUVZNg6IXTplgf8UQfszG+hzLczbsWCBJ9Zb10JH+LM1n8GDUSzKAzf718+8mQNSx1AjpXOnrkTZOmyHSi+atKr3BYQesl; 5:qB2pFOaovUtOaj8YngDwbnATd/H58XQzDD4s4lmqI3iePq8KETE3VFjL/bFwwtpLk8fOrjdp47q0d2HKtAEzZzwlolTyj4IeLEiODoJ6P/4sxYhLiTAL66j2ythN90xv7cAE91MMyKaNXJ3ZSpEibg==; 24:IweEruEGKBl9qy/COZTZbSU1Wx6o2yyf6bR0OSntesUR/VJUMaSZQ34pmPojO+uPqVt0U5vmx3aRgeqnBar67YkZzzGRT4WZFI5mlH8Clak= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; DB6PR0701MB2710; 7:rJAuX6KpL1CG2396g0lxRB6isaRjCfs6o1SQHQXWZBHGkJH7On/cagi/BfYUzrjgpXPlwqyCv6LbqICY8I/fUB6goZgIy1AJ1iucODEcuMul0ILf5A9w938cS6H0HOP9THFCcJOrYF8Y2YkVvbHdQU/Shm/5iDVepVcv9ZHxKHwpVfO0b9i8sb+eKWvNaV5L94xMVGXTYbAHRnDxKXe9EaTFj/uU0t5YuMSLbSBvYZU6iOm10t4U29muOcnCsiH+Z4fllWup0Yet2+VvzCbzUG5uIa+zecTG1RNOLhhknWGAGeg96d6Vt6ePvINdrOx1aDsoqmXz5XEHj1SzFjOhlLQGvaKhUDx1FqHedGlGTXwl8NLACPHg9Wvce/Ov/99jiYr10BusPwCh7KQhG3zzDfNGuZIjmL623LNzEZenNQPRyc9F7rjUm0ZANlfuxar8tJbG1fXc097Y9v+bLWU7PIIKPIQMRkry1BrNmq25vsXFz6QEvNLblllqfqBRSJIgsohi+LUvJ1xQT4ngvU8T7sByw1GlN0VjwLxql81S9UuT3Cb6Lbd2LsYV5b0ONsKM X-OriginatorOrg: nokia.onmicrosoft.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 31 Jan 2017 08:07:46.1650 (UTC) X-MS-Exchange-CrossTenant-Id: 5d471751-9675-428d-917b-70f44f9630b0 X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=5d471751-9675-428d-917b-70f44f9630b0; Ip=[131.228.2.35]; Helo=[hybrid2.ext.net.nokia.com] X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB6PR0701MB2710 Subject: [lng-odp] [PATCH v4 4/8] abi: crypto: added initial definitions X-BeenThere: lng-odp@lists.linaro.org X-Mailman-Version: 2.1.16 Precedence: list List-Id: "The OpenDataPlane \(ODP\) List" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: lng-odp-bounces@lists.linaro.org Sender: "lng-odp" Initially, use the same default ABI file for all architectures. Default values match those defined in odp-linux implementation to minimize changes in this phase. Signed-off-by: Petri Savolainen --- include/odp/arch/arm32-linux/odp/api/abi/crypto.h | 7 +++++ include/odp/arch/arm64-linux/odp/api/abi/crypto.h | 7 +++++ include/odp/arch/default/api/abi/crypto.h | 36 ++++++++++++++++++++++ include/odp/arch/mips64-linux/odp/api/abi/crypto.h | 7 +++++ .../odp/arch/power64-linux/odp/api/abi/crypto.h | 7 +++++ include/odp/arch/x86_32-linux/odp/api/abi/crypto.h | 7 +++++ include/odp/arch/x86_64-linux/odp/api/abi/crypto.h | 7 +++++ platform/Makefile.inc | 2 ++ .../include/odp/api/plat/crypto_types.h | 21 +++++-------- platform/linux-generic/odp_crypto.c | 10 ++++++ 10 files changed, 98 insertions(+), 13 deletions(-) create mode 100644 include/odp/arch/arm32-linux/odp/api/abi/crypto.h create mode 100644 include/odp/arch/arm64-linux/odp/api/abi/crypto.h create mode 100644 include/odp/arch/default/api/abi/crypto.h create mode 100644 include/odp/arch/mips64-linux/odp/api/abi/crypto.h create mode 100644 include/odp/arch/power64-linux/odp/api/abi/crypto.h create mode 100644 include/odp/arch/x86_32-linux/odp/api/abi/crypto.h create mode 100644 include/odp/arch/x86_64-linux/odp/api/abi/crypto.h -- 2.8.1 diff --git a/include/odp/arch/arm32-linux/odp/api/abi/crypto.h b/include/odp/arch/arm32-linux/odp/api/abi/crypto.h new file mode 100644 index 0000000..9a9d2dc --- /dev/null +++ b/include/odp/arch/arm32-linux/odp/api/abi/crypto.h @@ -0,0 +1,7 @@ +/* Copyright (c) 2017, Linaro Limited + * All rights reserved. + * + * SPDX-License-Identifier: BSD-3-Clause + */ + +#include diff --git a/include/odp/arch/arm64-linux/odp/api/abi/crypto.h b/include/odp/arch/arm64-linux/odp/api/abi/crypto.h new file mode 100644 index 0000000..9a9d2dc --- /dev/null +++ b/include/odp/arch/arm64-linux/odp/api/abi/crypto.h @@ -0,0 +1,7 @@ +/* Copyright (c) 2017, Linaro Limited + * All rights reserved. + * + * SPDX-License-Identifier: BSD-3-Clause + */ + +#include diff --git a/include/odp/arch/default/api/abi/crypto.h b/include/odp/arch/default/api/abi/crypto.h new file mode 100644 index 0000000..f0793a1 --- /dev/null +++ b/include/odp/arch/default/api/abi/crypto.h @@ -0,0 +1,36 @@ +/* Copyright (c) 2017, Linaro Limited + * All rights reserved. + * + * SPDX-License-Identifier: BSD-3-Clause + */ + +#ifndef ODP_ABI_CRYPTO_H_ +#define ODP_ABI_CRYPTO_H_ + +#ifdef __cplusplus +extern "C" { +#endif + +#include + +/** @internal Dummy type for strong typing */ +typedef struct { char dummy; /**< @internal Dummy */ } _odp_abi_crypto_compl_t; + +/** @ingroup odp_crypto + * @{ + */ + +#define ODP_CRYPTO_SESSION_INVALID (0xffffffffffffffffULL) + +typedef uint64_t odp_crypto_session_t; +typedef _odp_abi_crypto_compl_t *odp_crypto_compl_t; + +/** + * @} + */ + +#ifdef __cplusplus +} +#endif + +#endif diff --git a/include/odp/arch/mips64-linux/odp/api/abi/crypto.h b/include/odp/arch/mips64-linux/odp/api/abi/crypto.h new file mode 100644 index 0000000..9a9d2dc --- /dev/null +++ b/include/odp/arch/mips64-linux/odp/api/abi/crypto.h @@ -0,0 +1,7 @@ +/* Copyright (c) 2017, Linaro Limited + * All rights reserved. + * + * SPDX-License-Identifier: BSD-3-Clause + */ + +#include diff --git a/include/odp/arch/power64-linux/odp/api/abi/crypto.h b/include/odp/arch/power64-linux/odp/api/abi/crypto.h new file mode 100644 index 0000000..9a9d2dc --- /dev/null +++ b/include/odp/arch/power64-linux/odp/api/abi/crypto.h @@ -0,0 +1,7 @@ +/* Copyright (c) 2017, Linaro Limited + * All rights reserved. + * + * SPDX-License-Identifier: BSD-3-Clause + */ + +#include diff --git a/include/odp/arch/x86_32-linux/odp/api/abi/crypto.h b/include/odp/arch/x86_32-linux/odp/api/abi/crypto.h new file mode 100644 index 0000000..9a9d2dc --- /dev/null +++ b/include/odp/arch/x86_32-linux/odp/api/abi/crypto.h @@ -0,0 +1,7 @@ +/* Copyright (c) 2017, Linaro Limited + * All rights reserved. + * + * SPDX-License-Identifier: BSD-3-Clause + */ + +#include diff --git a/include/odp/arch/x86_64-linux/odp/api/abi/crypto.h b/include/odp/arch/x86_64-linux/odp/api/abi/crypto.h new file mode 100644 index 0000000..9a9d2dc --- /dev/null +++ b/include/odp/arch/x86_64-linux/odp/api/abi/crypto.h @@ -0,0 +1,7 @@ +/* Copyright (c) 2017, Linaro Limited + * All rights reserved. + * + * SPDX-License-Identifier: BSD-3-Clause + */ + +#include diff --git a/platform/Makefile.inc b/platform/Makefile.inc index bb40692..29ed347 100644 --- a/platform/Makefile.inc +++ b/platform/Makefile.inc @@ -64,12 +64,14 @@ odpapiabidefaultincludedir= $(includedir)/odp/arch/default/api/abi odpapiabidefaultinclude_HEADERS = \ $(top_srcdir)/include/odp/arch/default/api/abi/buffer.h \ $(top_srcdir)/include/odp/arch/default/api/abi/classification.h \ + $(top_srcdir)/include/odp/arch/default/api/abi/crypto.h \ $(top_srcdir)/include/odp/arch/default/api/abi/event.h odpapiabiarchincludedir= $(includedir)/odp/arch/@ARCH_ABI@/odp/api/abi odpapiabiarchinclude_HEADERS = \ $(top_srcdir)/include/odp/arch/@ARCH_ABI@/odp/api/abi/buffer.h \ $(top_srcdir)/include/odp/arch/@ARCH_ABI@/odp/api/abi/classification.h \ + $(top_srcdir)/include/odp/arch/@ARCH_ABI@/odp/api/abi/crypto.h \ $(top_srcdir)/include/odp/arch/@ARCH_ABI@/odp/api/abi/event.h EXTRA_DIST = \ diff --git a/platform/linux-generic/include/odp/api/plat/crypto_types.h b/platform/linux-generic/include/odp/api/plat/crypto_types.h index 0cbbce8..2cc747e 100644 --- a/platform/linux-generic/include/odp/api/plat/crypto_types.h +++ b/platform/linux-generic/include/odp/api/plat/crypto_types.h @@ -18,7 +18,12 @@ extern "C" { #endif -/** @addtogroup odp_crypto +#include +#if ODP_ABI_COMPAT == 1 +#include +#else + +/** @ingroup odp_crypto * @{ */ @@ -27,22 +32,12 @@ extern "C" { typedef uint64_t odp_crypto_session_t; typedef ODP_HANDLE_T(odp_crypto_compl_t); -/** Get printable format of odp_crypto_session_t */ -static inline uint64_t odp_crypto_session_to_u64(odp_crypto_session_t hdl) -{ - return (uint64_t)hdl; -} - -/** Get printable format of odp_crypto_compl_t_t */ -static inline uint64_t odp_crypto_compl_to_u64(odp_crypto_compl_t hdl) -{ - return _odp_pri(hdl); -} - /** * @} */ +#endif + #ifdef __cplusplus } #endif diff --git a/platform/linux-generic/odp_crypto.c b/platform/linux-generic/odp_crypto.c index 4f17fd6..b53b0fc 100644 --- a/platform/linux-generic/odp_crypto.c +++ b/platform/linux-generic/odp_crypto.c @@ -1120,3 +1120,13 @@ void odp_crypto_session_param_init(odp_crypto_session_param_t *param) { memset(param, 0, sizeof(odp_crypto_session_param_t)); } + +uint64_t odp_crypto_session_to_u64(odp_crypto_session_t hdl) +{ + return (uint64_t)hdl; +} + +uint64_t odp_crypto_compl_to_u64(odp_crypto_compl_t hdl) +{ + return _odp_pri(hdl); +} From patchwork Tue Jan 31 08:07:23 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Petri Savolainen X-Patchwork-Id: 92953 Delivered-To: patch@linaro.org Received: by 10.140.20.99 with SMTP id 90csp1817126qgi; Tue, 31 Jan 2017 00:15:24 -0800 (PST) X-Received: by 10.36.82.22 with SMTP id d22mr20279475itb.0.1485850524130; Tue, 31 Jan 2017 00:15:24 -0800 (PST) Return-Path: Received: from lists.linaro.org (lists.linaro.org. [54.225.227.206]) by mx.google.com with ESMTP id 130si9834751ith.47.2017.01.31.00.15.23; Tue, 31 Jan 2017 00:15:24 -0800 (PST) Received-SPF: pass (google.com: domain of lng-odp-bounces@lists.linaro.org designates 54.225.227.206 as permitted sender) client-ip=54.225.227.206; Authentication-Results: mx.google.com; spf=pass (google.com: domain of lng-odp-bounces@lists.linaro.org designates 54.225.227.206 as permitted sender) smtp.mailfrom=lng-odp-bounces@lists.linaro.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: by lists.linaro.org (Postfix, from userid 109) id 8DB80607A9; Tue, 31 Jan 2017 08:15:23 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on ip-10-142-244-252 X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAD_ENC_HEADER,BAYES_00, RCVD_IN_DNSWL_NONE,RCVD_IN_MSPIKE_H2,SPF_HELO_PASS,URIBL_BLOCKED autolearn=disabled version=3.4.0 Received: from [127.0.0.1] (localhost [127.0.0.1]) by lists.linaro.org (Postfix) with ESMTP id DB4E662B83; Tue, 31 Jan 2017 08:08:39 +0000 (UTC) X-Original-To: lng-odp@lists.linaro.org Delivered-To: lng-odp@lists.linaro.org Received: by lists.linaro.org (Postfix, from userid 109) id 610FB60C07; Tue, 31 Jan 2017 08:07:58 +0000 (UTC) Received: from EUR01-VE1-obe.outbound.protection.outlook.com (mail-ve1eur01on0124.outbound.protection.outlook.com [104.47.1.124]) by lists.linaro.org (Postfix) with ESMTPS id 40FB1608A3 for ; Tue, 31 Jan 2017 08:07:51 +0000 (UTC) Received: from VI1PR07CA0090.eurprd07.prod.outlook.com (10.165.229.144) by VI1PR0701MB2719.eurprd07.prod.outlook.com (10.173.80.143) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P384) id 15.1.888.5; Tue, 31 Jan 2017 08:07:49 +0000 Received: from DB3FFO11FD020.protection.gbl (2a01:111:f400:7e04::197) by VI1PR07CA0090.outlook.office365.com (2a01:111:e400:7a52::16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P384) id 15.1.888.5 via Frontend Transport; Tue, 31 Jan 2017 08:07:47 +0000 Received-SPF: SoftFail (protection.outlook.com: domain of transitioning linaro.org discourages use of 131.228.2.35 as permitted sender) Received: from hybrid2.ext.net.nokia.com (131.228.2.35) by DB3FFO11FD020.mail.protection.outlook.com (10.47.217.51) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P384) id 15.1.874.2 via Frontend Transport; Tue, 31 Jan 2017 08:07:47 +0000 Received: from fihe3nok1346.nsn-intra.net (10.158.36.134) by fihe3nok1346.nsn-intra.net (10.158.36.134) with Microsoft SMTP Server (TLS) id 15.1.466.34; Tue, 31 Jan 2017 10:07:46 +0200 Received: from mailrelay.int.nokia.com (10.130.128.21) by fihe3nok1346.nsn-intra.net (10.158.36.134) with Microsoft SMTP Server (TLS) id 15.1.466.34 via Frontend Transport; Tue, 31 Jan 2017 10:07:46 +0200 Received: from fihe3nok0734.emea.nsn-net.net (localhost [127.0.0.1]) by fihe3nok0734.emea.nsn-net.net (8.14.9/8.14.5) with ESMTP id v0V87QEC032666 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT) for ; Tue, 31 Jan 2017 10:07:26 +0200 Received: from 10.144.19.15 ([10.144.104.219]) by fihe3nok0734.emea.nsn-net.net (8.14.9/8.14.5) with ESMTP id v0V87Qaq032638 (version=TLSv1/SSLv3 cipher=AES128-SHA256 bits=128 verify=NOT) for ; Tue, 31 Jan 2017 10:07:26 +0200 X-HPESVCS-Source-Ip: 10.144.104.219 From: Petri Savolainen To: Date: Tue, 31 Jan 2017 10:07:23 +0200 Message-ID: <1485850046-28457-6-git-send-email-petri.savolainen@linaro.org> X-Mailer: git-send-email 2.8.1 In-Reply-To: <1485850046-28457-1-git-send-email-petri.savolainen@linaro.org> References: <1485850046-28457-1-git-send-email-petri.savolainen@linaro.org> MIME-Version: 1.0 X-EOPAttributedMessage: 0 X-MS-Office365-Filtering-HT: Tenant X-Forefront-Antispam-Report: CIP:131.228.2.35; IPV:NLI; CTRY:FI; EFV:NLI; SFV:NSPM; SFS:(10019020)(6009001)(7916002)(39840400002)(39450400003)(39410400002)(39850400002)(39860400002)(2980300002)(199003)(189002)(450100001)(6666003)(77096006)(76176999)(33646002)(50466002)(50226002)(92566002)(5003940100001)(47776003)(189998001)(2906002)(2950100002)(575784001)(86362001)(6916009)(38730400001)(50986999)(97736004)(53936002)(5660300001)(107886002)(110136003)(105596002)(68736007)(8936002)(305945005)(626004)(2351001)(356003)(81166006)(48376002)(8676002)(81156014)(22756006)(36756003)(106466001); DIR:OUT; SFP:1102; SCL:1; SRVR:VI1PR0701MB2719; H:hybrid2.ext.net.nokia.com; FPR:; SPF:SoftFail; PTR:InfoDomainNonexistent; A:1; MX:1; LANG:en; X-Microsoft-Exchange-Diagnostics: 1; DB3FFO11FD020; 1:0T8KDrSkux6E75+oBqfzFGUHHPHnd4Bmuu3nYykX72JsefQpsKyS9hnVo93zxflVo1Gg6JsiZUpw8TX0XbsnuBVU4ArohXHaEgCs+PHjQC/P8aMlFel6LMWNDoiBg2UHpHPVjF4QQwYBf27I+SE2zmDIj6w7JmtH8kyUp6h6ZRxOiPJ8Cf674sJzzHoiRMrnjn67Pg7vg+f9qSuDILcNlLI/IwG6BwGYEoIr+uZEDyvkzHut9rwPPgispo5J5VWp3A1YsrNJW/cI0kUNSoBGSjv2OMi64MnILSXwh+ZNKLu0Qu1PM2S816Z2cH2QeitkT0cbsWjZhurMYk34S5z1R1FVKQGRMSlBt7bAmNhX+21o3bzTIwz45EopXVrEX7aZ8XUrtTdNXsvTqGXso8gfhIFtTSQIzVjES80eulC/dmqMY5WPVeZW/WIx34XPWcz+P3dCBb04GeMQ+Qqm8QffMg== X-MS-Office365-Filtering-Correlation-Id: 0d664758-1026-4e7f-8137-08d449b03e2c X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(22001); SRVR:VI1PR0701MB2719; X-Microsoft-Exchange-Diagnostics: 1; VI1PR0701MB2719; 3:U2Fkvmnq38k2tBOe9waoyKqHZIuUuwkbYZZ/hOneDCycL6jg/fzsAqnpPXs6PESjQTs6/TjnPAMYpBcqfRwIBoCYW1a4qciu2GBN/RIzii/dn6WlJJkqQUv9cSzdda+n0oP5hL+WUDildb5heUWm6SHT6wZzxP/3soQejVNYdaZZi486xPVzPbHMJqGTwj1oZT3MSNhgVuP9CVhP22MmemWtTWUCMpC+Q2m59Ehu5Jeh3WtczpeBCtXEHZ/msIuVHjgi443t9W+b+ZbWgsN2+ukWjoxzoO2GZ6yepWcsP5S1Hs92urZKH5/bar3FVCMcoBhY9I55QLToUsvg4f97KHFice/YOfqdJ96rvHKiJwg=; 25:71f9y9M2a8v04JpFvxxzgkQDtTgSCDC0iOKbPsLZVIwS+Noipfme7Ewa3aQ4CX+V/G4Ioc7FmVmORvUdP75XCmttJ9ERAPGRSzmWFkMWBiBI8EwM+YYrpNKPTevD/sfql4JcOWhHKFMCM1MlQCPvG8oe8vh7I5l4VRSooXU/Mv992zIigYJ6QCskM0P8P5qoVa9DB47SKq7nF95Iq4xGplchcgPEOZ0x8RBOu7r3QwmP3qjZUmDURct4Ez41RxaKjJlfxGBsOvWf4eJQDafehYd++7gIvzgy1w39UlI2ZrWcDcsoeuOmpQl1Zmt6CDze9lAZ0w6ojgIUNUn2hFtdxHzULRSq9br+uK3QH5EQ+8PYkqozY2LH9eVCUtW+qV3LoCeiZukeIUM9rO70vnvHmYVE0H+QEqKHjnNB/tDEDkdEk+SmOCg4fTBfKzIbQ74MOl1MGG70jHZpJYDIcFwJyw== X-Microsoft-Exchange-Diagnostics: 1; VI1PR0701MB2719; 31:GpUywoCfOBlXPSmb8vMp+USeMIC6xvznLFLvhZduyzro5zzlUiJoh5VyU4f6E/0pkvlQaWedsb8N86sYEZxvmQL/T24tAcxPRI7+zbmKAtmYIshUxscsdF4LSxzzHkMj8TGLgjGcxQhdBd1wkdtroI8qZeiyqLQtimz/kYtzl4Rqsi5ysj9QTR7zz8FicijgCf4lBbnDxlRflqrOJd2xcgg5Oz9YSd7LWICOh9wpl7l9AUz1ieVX/VeEL1LeR5gvpNcAIHIwVqkdQ7XccRCloQ==; 20:jGTvoRZAiuWSsh9b9lQ7bvc/X5DnzFlJhr+AWfHFk554TM4tT3ItYTPdkAp73BFc8pSzEtu0eG8qaWskSV1AUoYV/qqnUsSE5hHC3dgyUadFhNWBxFRbwI8MWuIxe0SBUvCSjV8LnSWwIri9ujQMGVMaJv1lqgDt/OoTRLJvdQP8MbAaaSQzSaPyhrx8N5qoLFtjy+IsY58P8QkxJV8Nmc+WkTR4Rj9imXCE+rARzTFuG9MEdyB0xEjE0SlUJliv7q9MLSCkOipeRrBePz1rMZ/AsYX3D0jigdAzGSJtmvWkjA4eU51gRQxwaumqtC8MYUC9lAPNcb6bBFkk8cI0GkrywiapkNuX4Jh+6Ig6kh2p6cnno6XjfxFr6944zGUOiP3Zd72wR0eMTtMgvto4MYCMyKC2mx5Yg4bdFTnmLggSzDp0h+fRAxjcvKFw94J4cmZ9xlq0AMK8jaSFfO7dUgeC2lu8PPexITfX3fZz43NvdxgLexJMacjB258EHriqfQ8629GsQEgwF3Wfvt917WCQaLw/CGtuiq3FB4PSD6Aph72OGyWbdrwIbuJ1GB5RvyOrnYPjRtc9ZlNiHV7aZntE+u58SVzHE0L7wXk8v8A= X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:; X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(6040375)(601004)(2401047)(8121501046)(5005006)(13018025)(13016025)(10201501046)(3002001)(6055026)(6041248)(20161123560025)(20161123562025)(20161123564025)(20161123555025)(6072148); SRVR:VI1PR0701MB2719; BCL:0; PCL:0; RULEID:; SRVR:VI1PR0701MB2719; X-Microsoft-Exchange-Diagnostics: 1; VI1PR0701MB2719; 4:00/v413B9dgi0auja1NvFjD40sB1cWKRhybOulXw6VSOS05vj2JCzZIQM/l3lx75aLkoDo1BR7XinNSpGLQAwuJrT2aRfv1mCXeHPay1KeE69PMnXEC3y+Kb3GpmwQytK9GqaoehDz4FcOUYeHEjsVDFqoFPn1FMFJznIxQ44XdZBQJHJ5YzdIPx04IHy/6CjHVC3GQswGKolwwjjuIWuFDziYRSB9KUWUmpPr9jaWPb2kaJWImZ7X4tyyz/Tfw+PdJY7CLT3/OyB3eFaz8dD3JVhXpQaX+29VOTNQMfZZMhgNANajDsLs3AISZ9lIMxPfD6g7TjTxAOs0hHARsw1nS7nl9HBVpmYUitw86MFCUOPgtreKt6/NiKol9l+b1egtZyV0oKbWiMyU6byOGLMb3q2/cwQ1is2QcJjOvS5ROS0rmmZ+/sxYmRlbqlp4hE3t46tQMGOsS55aJjdFnv0VR8FiRfftAKIJFVZ7SGBAO6lYoUvaovuomoeh+Q/hwIKQzhYLJOOtymDeVE6s5MTGuASp8UWUtRk7njxJrqVlyryuv0gxK1DvyTrHxMY7VbOCFaK/VdWHnYwt9JYym7vWqwUr4d9fXUQRdJ5aLTy7a66GcOxT9W0/P/equLLESc X-Forefront-PRVS: 0204F0BDE2 X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; VI1PR0701MB2719; 23:57RwwukdlcPfk1J4onia49rixfeh125qbDPZMU4?= Yg2TMf2uMAN4M6vYu+Ja1k4jbFG63eGJHr6y29VA6b7c0JOCzVITOkuXQmTdypz/9goY34YDLfpwLCPSKw9a3WqlVOtQCVpq0LMl00INfAIaStYFM2alKgKqcrIistlEBAWxzNLDMkck8QRiG3BOAUy8c2MedMduy74xdnkNwjmfA1jcNVtxL5mikLF+1MX3Wy3AkzvV1kB3DUthyEB2/ESNUPH4oWVKkZbqtRmf7WYDx3MjgQnjSE7RsTC83KnD8UE7mGC9E+94HG5zcPxLnQUzkM97MiS3eFZtf0OUZltstexm9QxjiOA+Yn1DMbj53PQJQ46kukrfD32zYmJNV7S1jcngsrQKo9XIiusuyubJwdiSUuyOQM/EHnwLwwC2056yfNbSr5xvEkUSs9QldK9wMCr/AkBbJNXnM3DOMg1ud+gUMNevg3n156adUZf8wuZIzBMfQvdQKGV8tJwGfNSJqWzW35BvNk21ieMtNE1CVXbLVlPe7HJGw27ViPaorZXOUk4zFVrbOlTpqJMn1O36oQuW7PCGKBHy2xZzk/YMmkXpr5+/dt32Off2VIIs+GIydpLxEvl5m9Zml5XgvGoE9HD2omPf6D4ISXYW6PsegyTggU8SMxpcs7PgY8QVsd6POE148/4ZIN8vHwjVcnlraIB1Zvz/C0NRQgGlPLP4OtvoiJl64EXkSgSAhKMCRX6k5x+Dh7gJGlIDQRUvMgR9xzfAhymMIW6Nbi7Ki+77om8uqu/xqUqTqFlpT9PEec1mEqfx+KaV9YQwW9FREatnjk+TBNbZ/9zDAY9Q1PagNeMvU1F5KtH0MMe8KHYv7yXdbE534Z1vU8fastxVApbGQCn44CCfFJK7CucViJiRi7Wv7lfSszTXFinRxeG579wyYZHNmuVRZ6wQTEdWlH8VJ7PT4JvnI7LoLjbyfLMrLShvtQN3C4arcIJUGyZIaL0pmc98oTsYFtivXuVWZmHP9J9M0Fbk7aB/SiRHhksv9GptQgr4MYZ1x/+Fpn9r0IV8AKZaiT0CbJdrbKhMwKfWiP5BysembpDFImMHQHJhsD1TcbO/DJHQTSqWyUrMBO6NLsZkD+ltCevV6yA8mvuqEHEMi2IqJ+IuF3qgXjD9DSg== X-Microsoft-Exchange-Diagnostics: 1; VI1PR0701MB2719; 6:F1lTip7Tt2l3qKT5hucbnuw2UFn7yjhpBQEhCm3+XAZqgJuCiRo5WNT65UfJokz8M3hL83TXfxZO2VoCZJllumnNi3+7oQxPS8n/fm6gfMozeNwK677x5Sv9xwcmmtXebGsIonJ7LgW9U1XFz7w+eLeqXpQzZRhOthRIaUGF+S4MqZbRPrUVWZbF1nvb18AYtjwy+MzZThEWECcOn177cQW9gs2E7+MlUxnZFNk048G1mMyNHx4b0zsDbcQbXGhP3JtPX1eyUoddmA7WlASWahzs/O/L5X43BrmwoB34h4yN8ywOQyNKU3AuCcROGpSJcSZShQWiHQIX/AmkPfi+EVYrp82VfLoa4ObPBD/tN4yRVcPuwFDF8l1KFTHdB0v6oJ3cCmgiITHA+AgIvXRCldRrgOAu9RLbNQ2nXvz74OmpnD6u+URDKB/SzvXuF7Ae; 5:mKTvsYB2uZD3u/i08ect3ovg2+xVf429gKl1mIsqRIrIEAIvmBt1ZjbXouWeKEc33yIfIzvT+yDeucEDx0zJ/L8eWXQI1Sy7439cJ2tp52DZXho203Be6y2YSCZOWjGP8omSedSrFZVukF/v8e3ASw==; 24:suxEWaCivg98sjRjW6wW7EBgOalG84QPFvYBuwdqJydGBRE6OUg1AV9U7OTQ9E1QqDk3DLhzbu0hIqi/pDvEz06HiIXuKxvIAoaAAJZY1hQ= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; VI1PR0701MB2719; 7:JjqEk8d3Ru/WUOMjUTu1HFhSiSJwiscNY9sv4goP/JY9Qa4C1rfOSD7H7tWYlSycncb8Q7W13kjDpBD8htCp+uQzox7W3jICj5Y5I0JK/OQbXZHcscoaib3c26n+73z1uSuuxFtRke6Ge5G54xun5cF56KvYR3VxabMXZGW6zd11mynjrAziDq5INfa2+2WEGu7dwsw7iBYV32FU+ivKRWhlxZWoOq+t+jAL0fBcSn+rtQUOPoqHLipqdva0T+4VXDufb2eXFVgCHi3BwYv1XBatYfXnNZTcR9feXzd1KwPbOg9baexvIJRizR5trkXeJfeWn4/4wlg81B4m3GaYLU2mgVUgEMghRLjpB1wxug0vpBBwrES9pgyPzTU0Y4+jwhA/nrpLcwdeljMpc2n6duSHwNFmjnKO3A8OjCzAyvUkukvhfqdshAeiRmX+ftAPUkdnDyEMhFkTyDPVRfhHa1fQip5+s4HJkHnVwRaXkfDXyXAK7KyggjSXbCY/9WD5hu1SnPlUDKS3CvL23FWBde8YWDGyBuc8gsDz+CSA/usGlJdkE1R6qRCLEISFdK0n X-OriginatorOrg: nokia.onmicrosoft.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 31 Jan 2017 08:07:47.1166 (UTC) X-MS-Exchange-CrossTenant-Id: 5d471751-9675-428d-917b-70f44f9630b0 X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=5d471751-9675-428d-917b-70f44f9630b0; Ip=[131.228.2.35]; Helo=[hybrid2.ext.net.nokia.com] X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR0701MB2719 Subject: [lng-odp] [PATCH v4 5/8] abi: packet: added initial definitions X-BeenThere: lng-odp@lists.linaro.org X-Mailman-Version: 2.1.16 Precedence: list List-Id: "The OpenDataPlane \(ODP\) List" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: lng-odp-bounces@lists.linaro.org Sender: "lng-odp" Initially, use the same default ABI file for all architectures. Default values match those defined in odp-linux implementation to minimize changes in this phase. Signed-off-by: Petri Savolainen --- include/odp/arch/arm32-linux/odp/api/abi/packet.h | 7 ++++ include/odp/arch/arm64-linux/odp/api/abi/packet.h | 7 ++++ include/odp/arch/default/api/abi/packet.h | 47 ++++++++++++++++++++++ include/odp/arch/mips64-linux/odp/api/abi/packet.h | 7 ++++ .../odp/arch/power64-linux/odp/api/abi/packet.h | 7 ++++ include/odp/arch/x86_32-linux/odp/api/abi/packet.h | 7 ++++ include/odp/arch/x86_64-linux/odp/api/abi/packet.h | 7 ++++ platform/Makefile.inc | 6 ++- .../include/odp/api/plat/packet_types.h | 26 ++++-------- platform/linux-generic/odp_packet.c | 10 +++++ 10 files changed, 111 insertions(+), 20 deletions(-) create mode 100644 include/odp/arch/arm32-linux/odp/api/abi/packet.h create mode 100644 include/odp/arch/arm64-linux/odp/api/abi/packet.h create mode 100644 include/odp/arch/default/api/abi/packet.h create mode 100644 include/odp/arch/mips64-linux/odp/api/abi/packet.h create mode 100644 include/odp/arch/power64-linux/odp/api/abi/packet.h create mode 100644 include/odp/arch/x86_32-linux/odp/api/abi/packet.h create mode 100644 include/odp/arch/x86_64-linux/odp/api/abi/packet.h -- 2.8.1 diff --git a/include/odp/arch/arm32-linux/odp/api/abi/packet.h b/include/odp/arch/arm32-linux/odp/api/abi/packet.h new file mode 100644 index 0000000..f44cb53 --- /dev/null +++ b/include/odp/arch/arm32-linux/odp/api/abi/packet.h @@ -0,0 +1,7 @@ +/* Copyright (c) 2017, Linaro Limited + * All rights reserved. + * + * SPDX-License-Identifier: BSD-3-Clause + */ + +#include diff --git a/include/odp/arch/arm64-linux/odp/api/abi/packet.h b/include/odp/arch/arm64-linux/odp/api/abi/packet.h new file mode 100644 index 0000000..f44cb53 --- /dev/null +++ b/include/odp/arch/arm64-linux/odp/api/abi/packet.h @@ -0,0 +1,7 @@ +/* Copyright (c) 2017, Linaro Limited + * All rights reserved. + * + * SPDX-License-Identifier: BSD-3-Clause + */ + +#include diff --git a/include/odp/arch/default/api/abi/packet.h b/include/odp/arch/default/api/abi/packet.h new file mode 100644 index 0000000..60a41b8 --- /dev/null +++ b/include/odp/arch/default/api/abi/packet.h @@ -0,0 +1,47 @@ +/* Copyright (c) 2017, Linaro Limited + * All rights reserved. + * + * SPDX-License-Identifier: BSD-3-Clause + */ + +#ifndef ODP_ABI_PACKET_H_ +#define ODP_ABI_PACKET_H_ + +#ifdef __cplusplus +extern "C" { +#endif + +#include + +/** @internal Dummy type for strong typing */ +typedef struct { char dummy; /**< @internal Dummy */ } _odp_abi_packet_t; + +/** @ingroup odp_packet + * @{ + */ + +typedef _odp_abi_packet_t *odp_packet_t; +typedef uint8_t odp_packet_seg_t; + +#define ODP_PACKET_INVALID ((odp_packet_t)0xffffffff) +#define ODP_PACKET_SEG_INVALID ((odp_packet_seg_t)-1) +#define ODP_PACKET_OFFSET_INVALID (0x0fffffff) + +typedef enum { + ODP_PACKET_GREEN = 0, + ODP_PACKET_YELLOW = 1, + ODP_PACKET_RED = 2, + ODP_PACKET_ALL_COLORS = 3, +} odp_packet_color_t; + +#define ODP_NUM_PACKET_COLORS 3 + +/** + * @} + */ + +#ifdef __cplusplus +} +#endif + +#endif diff --git a/include/odp/arch/mips64-linux/odp/api/abi/packet.h b/include/odp/arch/mips64-linux/odp/api/abi/packet.h new file mode 100644 index 0000000..f44cb53 --- /dev/null +++ b/include/odp/arch/mips64-linux/odp/api/abi/packet.h @@ -0,0 +1,7 @@ +/* Copyright (c) 2017, Linaro Limited + * All rights reserved. + * + * SPDX-License-Identifier: BSD-3-Clause + */ + +#include diff --git a/include/odp/arch/power64-linux/odp/api/abi/packet.h b/include/odp/arch/power64-linux/odp/api/abi/packet.h new file mode 100644 index 0000000..f44cb53 --- /dev/null +++ b/include/odp/arch/power64-linux/odp/api/abi/packet.h @@ -0,0 +1,7 @@ +/* Copyright (c) 2017, Linaro Limited + * All rights reserved. + * + * SPDX-License-Identifier: BSD-3-Clause + */ + +#include diff --git a/include/odp/arch/x86_32-linux/odp/api/abi/packet.h b/include/odp/arch/x86_32-linux/odp/api/abi/packet.h new file mode 100644 index 0000000..f44cb53 --- /dev/null +++ b/include/odp/arch/x86_32-linux/odp/api/abi/packet.h @@ -0,0 +1,7 @@ +/* Copyright (c) 2017, Linaro Limited + * All rights reserved. + * + * SPDX-License-Identifier: BSD-3-Clause + */ + +#include diff --git a/include/odp/arch/x86_64-linux/odp/api/abi/packet.h b/include/odp/arch/x86_64-linux/odp/api/abi/packet.h new file mode 100644 index 0000000..f44cb53 --- /dev/null +++ b/include/odp/arch/x86_64-linux/odp/api/abi/packet.h @@ -0,0 +1,7 @@ +/* Copyright (c) 2017, Linaro Limited + * All rights reserved. + * + * SPDX-License-Identifier: BSD-3-Clause + */ + +#include diff --git a/platform/Makefile.inc b/platform/Makefile.inc index 29ed347..03d9376 100644 --- a/platform/Makefile.inc +++ b/platform/Makefile.inc @@ -65,14 +65,16 @@ odpapiabidefaultinclude_HEADERS = \ $(top_srcdir)/include/odp/arch/default/api/abi/buffer.h \ $(top_srcdir)/include/odp/arch/default/api/abi/classification.h \ $(top_srcdir)/include/odp/arch/default/api/abi/crypto.h \ - $(top_srcdir)/include/odp/arch/default/api/abi/event.h + $(top_srcdir)/include/odp/arch/default/api/abi/event.h \ + $(top_srcdir)/include/odp/arch/default/api/abi/packet.h odpapiabiarchincludedir= $(includedir)/odp/arch/@ARCH_ABI@/odp/api/abi odpapiabiarchinclude_HEADERS = \ $(top_srcdir)/include/odp/arch/@ARCH_ABI@/odp/api/abi/buffer.h \ $(top_srcdir)/include/odp/arch/@ARCH_ABI@/odp/api/abi/classification.h \ $(top_srcdir)/include/odp/arch/@ARCH_ABI@/odp/api/abi/crypto.h \ - $(top_srcdir)/include/odp/arch/@ARCH_ABI@/odp/api/abi/event.h + $(top_srcdir)/include/odp/arch/@ARCH_ABI@/odp/api/abi/event.h \ + $(top_srcdir)/include/odp/arch/@ARCH_ABI@/odp/api/abi/packet.h EXTRA_DIST = \ arch/arm/odp/api/cpu_arch.h \ diff --git a/platform/linux-generic/include/odp/api/plat/packet_types.h b/platform/linux-generic/include/odp/api/plat/packet_types.h index 864494d..34e5dd8 100644 --- a/platform/linux-generic/include/odp/api/plat/packet_types.h +++ b/platform/linux-generic/include/odp/api/plat/packet_types.h @@ -18,11 +18,15 @@ extern "C" { #endif +#include +#if ODP_ABI_COMPAT == 1 +#include +#else + #include #include -/** @addtogroup odp_packet ODP PACKET - * Operations on a packet. +/** @ingroup odp_packet * @{ */ @@ -32,13 +36,10 @@ typedef ODP_HANDLE_T(odp_packet_t); #define ODP_PACKET_OFFSET_INVALID (0x0fffffff) -/* A packet segment handle stores a small index. Strong type handles are - * pointers, which would be wasteful in this case. */ typedef uint8_t odp_packet_seg_t; #define ODP_PACKET_SEG_INVALID ((odp_packet_seg_t)-1) -/** odp_packet_color_t assigns names to the various pkt "colors" */ typedef enum { ODP_PACKET_GREEN = 0, ODP_PACKET_YELLOW = 1, @@ -46,25 +47,14 @@ typedef enum { ODP_PACKET_ALL_COLORS = 3, } odp_packet_color_t; -/** Sets the maximum number of pkt "colors" */ #define ODP_NUM_PACKET_COLORS 3 -/** Get printable format of odp_packet_t */ -static inline uint64_t odp_packet_to_u64(odp_packet_t hdl) -{ - return _odp_pri(hdl); -} - -/** Get printable format of odp_packet_seg_t */ -static inline uint64_t odp_packet_seg_to_u64(odp_packet_seg_t hdl) -{ - return _odp_pri(hdl); -} - /** * @} */ +#endif + #ifdef __cplusplus } #endif diff --git a/platform/linux-generic/odp_packet.c b/platform/linux-generic/odp_packet.c index 34d720c..8833822 100644 --- a/platform/linux-generic/odp_packet.c +++ b/platform/linux-generic/odp_packet.c @@ -2211,3 +2211,13 @@ int packet_parse_layer(odp_packet_hdr_t *pkt_hdr, layer_t layer) return packet_parse_common(&pkt_hdr->p, base, pkt_hdr->frame_len, seg_len, layer); } + +uint64_t odp_packet_to_u64(odp_packet_t hdl) +{ + return _odp_pri(hdl); +} + +uint64_t odp_packet_seg_to_u64(odp_packet_seg_t hdl) +{ + return _odp_pri(hdl); +} From patchwork Tue Jan 31 08:07:24 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Petri Savolainen X-Patchwork-Id: 92948 Delivered-To: patch@linaro.org Received: by 10.140.20.99 with SMTP id 90csp1815579qgi; Tue, 31 Jan 2017 00:09:49 -0800 (PST) X-Received: by 10.36.52.197 with SMTP id z188mr19750321itz.71.1485850189917; Tue, 31 Jan 2017 00:09:49 -0800 (PST) Return-Path: Received: from lists.linaro.org (lists.linaro.org. [54.225.227.206]) by mx.google.com with ESMTP id h76si12492378ioi.174.2017.01.31.00.09.49; Tue, 31 Jan 2017 00:09:49 -0800 (PST) Received-SPF: pass (google.com: domain of lng-odp-bounces@lists.linaro.org designates 54.225.227.206 as permitted sender) client-ip=54.225.227.206; Authentication-Results: mx.google.com; spf=pass (google.com: domain of lng-odp-bounces@lists.linaro.org designates 54.225.227.206 as permitted sender) smtp.mailfrom=lng-odp-bounces@lists.linaro.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: by lists.linaro.org (Postfix, from userid 109) id 1BC6D60C4E; Tue, 31 Jan 2017 08:09:49 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on ip-10-142-244-252 X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAD_ENC_HEADER,BAYES_00, RCVD_IN_DNSWL_NONE,RCVD_IN_MSPIKE_H2,SPF_HELO_PASS,URIBL_BLOCKED autolearn=disabled version=3.4.0 Received: from [127.0.0.1] (localhost [127.0.0.1]) by lists.linaro.org (Postfix) with ESMTP id 2A79260C5E; Tue, 31 Jan 2017 08:08:07 +0000 (UTC) X-Original-To: lng-odp@lists.linaro.org Delivered-To: lng-odp@lists.linaro.org Received: by lists.linaro.org (Postfix, from userid 109) id E7B3560C53; Tue, 31 Jan 2017 08:07:54 +0000 (UTC) Received: from EUR01-DB5-obe.outbound.protection.outlook.com (mail-db5eur01on0126.outbound.protection.outlook.com [104.47.2.126]) by lists.linaro.org (Postfix) with ESMTPS id 3B05F608AE for ; Tue, 31 Jan 2017 08:07:49 +0000 (UTC) Received: from AMXPR07CA0032.eurprd07.prod.outlook.com (10.242.64.32) by VI1PR07MB0816.eurprd07.prod.outlook.com (10.161.107.151) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P384) id 15.1.888.5; Tue, 31 Jan 2017 08:07:47 +0000 Received: from DB3FFO11FD022.protection.gbl (2a01:111:f400:7e04::162) by AMXPR07CA0032.outlook.office365.com (2a01:111:e400:1000::32) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P384) id 15.1.888.5 via Frontend Transport; Tue, 31 Jan 2017 08:07:46 +0000 Received-SPF: SoftFail (protection.outlook.com: domain of transitioning linaro.org discourages use of 131.228.2.36 as permitted sender) Received: from hybrid2.ext.net.nokia.com (131.228.2.36) by DB3FFO11FD022.mail.protection.outlook.com (10.47.217.53) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P384) id 15.1.874.2 via Frontend Transport; Tue, 31 Jan 2017 08:07:46 +0000 Received: from fihe3nok1346.nsn-intra.net (10.158.36.134) by fihe3nok1347.nsn-intra.net (10.158.36.135) with Microsoft SMTP Server (TLS) id 15.1.466.34; Tue, 31 Jan 2017 10:07:45 +0200 Received: from mailrelay.int.nokia.com (10.130.128.21) by fihe3nok1346.nsn-intra.net (10.158.36.134) with Microsoft SMTP Server (TLS) id 15.1.466.34 via Frontend Transport; Tue, 31 Jan 2017 10:07:45 +0200 Received: from fihe3nok0734.emea.nsn-net.net (localhost [127.0.0.1]) by fihe3nok0734.emea.nsn-net.net (8.14.9/8.14.5) with ESMTP id v0V87Qqs032669 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT) for ; Tue, 31 Jan 2017 10:07:26 +0200 Received: from 10.144.19.15 ([10.144.104.219]) by fihe3nok0734.emea.nsn-net.net (8.14.9/8.14.5) with ESMTP id v0V87Qar032638 (version=TLSv1/SSLv3 cipher=AES128-SHA256 bits=128 verify=NOT) for ; Tue, 31 Jan 2017 10:07:26 +0200 X-HPESVCS-Source-Ip: 10.144.104.219 From: Petri Savolainen To: Date: Tue, 31 Jan 2017 10:07:24 +0200 Message-ID: <1485850046-28457-7-git-send-email-petri.savolainen@linaro.org> X-Mailer: git-send-email 2.8.1 In-Reply-To: <1485850046-28457-1-git-send-email-petri.savolainen@linaro.org> References: <1485850046-28457-1-git-send-email-petri.savolainen@linaro.org> MIME-Version: 1.0 X-EOPAttributedMessage: 0 X-MS-Office365-Filtering-HT: Tenant X-Forefront-Antispam-Report: CIP:131.228.2.36; IPV:NLI; CTRY:FI; EFV:NLI; SFV:NSPM; SFS:(10019020)(6009001)(7916002)(39410400002)(39840400002)(39860400002)(39850400002)(39450400003)(2980300002)(189002)(199003)(8936002)(8676002)(626004)(33646002)(450100001)(81166006)(81156014)(22756006)(50226002)(189998001)(5660300001)(305945005)(107886002)(2906002)(68736007)(356003)(2950100002)(97736004)(6916009)(110136003)(38730400001)(76176999)(47776003)(50986999)(77096006)(53936002)(86362001)(50466002)(48376002)(92566002)(2351001)(36756003)(105596002)(106466001)(5003940100001); DIR:OUT; SFP:1102; SCL:1; SRVR:VI1PR07MB0816; H:hybrid2.ext.net.nokia.com; FPR:; SPF:SoftFail; PTR:InfoDomainNonexistent; MX:1; A:1; LANG:en; X-Microsoft-Exchange-Diagnostics: 1; DB3FFO11FD022; 1:p/29Maudz4n2DPN3O5yasoGE+xJD84ThpWJZCTWd55t7sVv4Px0AURjN2Zgap46UJ904ZMA/jv53Xx1ARvQfPgAZ0fipCC5syqYurKoEfWidkBwOC0qtDIFY445nhOaa9K4qFjszVhE+JUVtS3UgBhfcoi+z6CWzj1VDM9BJsprfKAhb0Eojk400Dx21M2T1vL5gb+VRuR1DDhxcEZgEq72FZ6N/KftTZOl0+viZVlZ4nmtLBDpbMR+/hQ81vNYZpjy9dgyB5Q83NbzDhnc7q1ybST0DdUN69rRhk//044V3Bt6ijAupxXdKVafHSgtjVUq0LtcNk9UXvDCNNBexkQf0CDOf9KM6lAaj6XgNeCpipvb3SKdC+guZk9jX7ewXGrZ+j7Puh4qsr1JfQcyh2RXlbti5VxOK2EuCUt9+BYiT1vBYJ22L0ormnlOQcwbo/4IVKegm5bReM9aa+hCn5Q== X-MS-Office365-Filtering-Correlation-Id: aeb0ffd5-d349-4299-9c49-08d449b03da4 X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(22001); SRVR:VI1PR07MB0816; X-Microsoft-Exchange-Diagnostics: 1; VI1PR07MB0816; 3:GClu1eNdxxt/WSZG4Ug7Db15zPMq+H0sKpStXU0pNJsLmHbn+Ss8HKBVaWRWZwjh1TPabP1bnc85dNXLoPUd/2XFMeCjeOamcibuu27LAnJL9Q7xr8c7P0ZuD53Im6X3B9fsEtgxzRQmqhXSUJWdQ5tE2lHHAY9ZgpThtvQ50g6jpjjR2wmRNvXNrznkS+jzsFNxUrxiX5T1eZJcasavwg7PbaxxflNOHKR34Uv3K+XNRx4iJQBIljjj7V7DmeMd+kuB3A/8w/5/UegnBPQhdtVxJtWBpTVcMF0p7w37CX0vEiVdbhsB+XOe+JIHx9J1Qwi6bsNbZSwYVoXuoupEdZvzWU6TWidMZNvUomLiLG8= X-Microsoft-Exchange-Diagnostics: 1; VI1PR07MB0816; 25:1HoH/b4969CDIrMS7HnbE5r4IUEXGZIPsasMXzVbYWZuxTgQDECURz2ZU23dpI8XmE7KC2ZonVgcl0cGvcixe5H9FzVUrvY125eyz677DwpOUCqpucHLLUEXSpEiYdJvRAMK/CTz6MEgRVT3m/BPhEeiXXirARx4bUxIsbgyUF1yvbik4ybNtTB/QF7ymw3YOX+GsAgf0TafZwsFBd7o552CO6559CXYwLt/gGTt/RYcRG+HRQoyzoOhp+D7S9oqrxmYqcMbj2LMoUVC4PmIyvMSMe4whpPztM4FcTb6vFDdEELr6nt8HbaLf5+UiomnyXu8i+DNotb/djI9tdU0+fZy464CpS4fa/gxLBYBlte2wAWyfQcB5nkZ9nxTw0RU/lMcsjjQKdU2UgZna2V+croEUCGTpoyTGA1Y+x6qMz9y50OnZYS989ARyyBaBj1IJI6/3xMrOGOaA39F/BuChq2qWOfxclhMoQuIyzIv61nQssJP9Gg15Dj3NA9hebFTBVzyYIgyfxACnQMyMj0xmX1hRFvP8yogHY5pC+5n4D3TGYnITDkeV3Aeb/G97GxNyuTzw8c4iQm2lpdXvPv4bZrr1T3rY1czcIlNXt+3/X9gNNJ2QihcG1ngWWY6f6JFWdmNTHJdj9uyMnD6s9KGypv2JequGaw72fUtqp493AJCxdeNch/QAyeNc7q2nbsEdejBKaWgS3TGmA2HBgsg8cyl7aygWX8XdmdD8WuhIiM= X-Microsoft-Exchange-Diagnostics: 1; VI1PR07MB0816; 31:Y2Wi7owjgkLWRCvZq4we2w3EH9YDx+SOlT9R/yK89670vl+Jphbxt9ZN5KQHcGDmh2IGr461NlOaDVTjyGg3lr4ucv45aeWsrpJU6SAOQugR9s3ZNBevmwrMSgA/UvsDkbYbV024S+rqzbeQeBtOKnotYxYyHOqBYXKhIsdm/0stn6Slul1Zi+gucH+r1hWMRF3xzmhCmskNunnxU2+/gnHLA6c9DfZyVlDqwopJ8hm64cIQCkv5Z2tPdRG/nQtqJqctyqbQP6sU31S7JqpN1BiAKPfuLSKNMFZYsgi71d0=; 20:gujy8KdZi8XfPJADck0Vf+ZIGNe3KXHuR7QgZZ08eLTY2EmVfPLBIMFHwSHCZMfI9+0MV5m/v1/GbCvipbGR6HZEys0hi8agG+vj32nRaGrlnBv/xq97rJrLiOPXFPEMBPZlMWP8h6QK/hXj+RfbIYLkRLCyVTf6Fz6oOv7kwPwDlmydZprwdc+BcHzC6wIS47W1ozFVjcO1Yh3UDenyxpLWDjrjle1idKVJ7ygDCKP1vMxqd5hiVQGnEI4E3vKD3IWtco++xoIlBp9MdNSyVkEJRMRNa5YjfxnI+GEZp3vig5vfHRTJNHaLqhjmPgqCWS2Wvx6tXn2CovFuuEQUH3it5+WS//8QJo7N+SPyXnAHeGRyanYHjAG7Hy2ArMqR1RXpVE5MZeyQGCHePE3bipbPj8A6cDCHq+dRZkvLRMluvN4o2T5QTfrj4tWDZCOwJ6KwXzo4c9I6ks4rqa0PjpBUoG5DKJNa6hP2d9gSwqwKT8m5lm+1dHnOEqCDG7lioxRcgbADI+mnCjkN66EsIrm+SKDTZGtUH1Xekmjc25RLfEMIt9PqMk7bXM6WIP+3LFEl2cBXFvst0RsXVx89XuIayk8oL6lc4dn9gt2DMtg= X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:; X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(6040375)(601004)(2401047)(8121501046)(5005006)(13016025)(13018025)(10201501046)(3002001)(6055026)(6041248)(20161123560025)(20161123555025)(20161123558021)(20161123562025)(20161123564025)(6072148); SRVR:VI1PR07MB0816; BCL:0; PCL:0; RULEID:; SRVR:VI1PR07MB0816; X-Microsoft-Exchange-Diagnostics: 1; VI1PR07MB0816; 4:AqAVMxGfKWOMspsKldpSKkNlgH8siWW5X3IiODCuxn1zY3XKGWOiV/L0MBQevhY+HZe/l5dh1MnAO5ZFnanOMS+Qh6rn8IatOzS1PTLh4w5Vqup9tdqUhgwdgu/TIzEfO0qW//3Zd0CtzLW5stPZzdwStYl8oKFL7HeilakhP3nyDYF2ichD7lOI69PvCgphZk/WyEa29ZvYiEmsKaoDcrVaMZKNzw3uiq88itnTOSeJjdOP85Lg/APDk5g0DMzCYcA3X/eSmi+P85wBDS3RPEf0hTb73uPNsXfH1mQ+Q2G/lnfDEt+U3DpDJQj9+YrBGYwWByPmDacTxumAVwWRUwjVv+WJCWu088LS+n1RhO+sXU1gvoj4fAkK+U0jgq8tvvn4zPDfpk8AeQhds1jo8XV2Olo1aR1OyXGSvZA/tcEGGOVvZaOZq23w64WICPLOYx9avuF7blKB4thV/xPVjsvsFp5Hw4ZB1vWrW5pnOfkNqNRh1A3sN6Org2RSXLpXL9gQIIUFsIcBClzJTAik8R459Bo/HEm247m53UCcGUk9h0ESdY1Ait5h03s9rwSwOS/QjaqMD/snf1keZCefrBlU/TnHFUBSm2vUzBHiNqXcRAh/oXMbhQ3mV//Wc1/mYgTroC7Lyk+1GiACiqNoWVaXVT6bDHx0SNJV8UEZGsc= X-Forefront-PRVS: 0204F0BDE2 X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; VI1PR07MB0816; 23:Ngh9jUdulZVwapd25IpSprs1VkNOyXmkAAhQVstoi?= 5gATwXjb5uWeiNdDfO+NqjS77KflHLwimZB0c/LSpK9rK5nT8g3h0qspwoVRhFrul5SC3Bc1O7/c3XndFMdv6um5hEVp717h53lWB/pQ9J6sJ27wWlB+75OR9Hhd0vKEZpvMuJ4iGeffHUicUf/Ag5SKu09a6Qg9+6VAMWo/kalxA8ME5TMEWBNPpCyHRnTFNi81RkLYpFJv6I52pBCEXFLbYLpejskxoUxkFZSEiW5prZ5cQleRe5EmJZdSsaulL6bCnJNiMauK0vgL0aFnccpuw4XgBVw0l+mFQxOcXfBW9X/V2Po2Ucyl3QCOOHDnJICblsv5e5yd3vKzj9vqKGLmPSBZstfHu6L1fC5pC6lMDHZ9IQtrrfcAySn4EoloQMgAp25JvGqqzQikLWvK7s3ltCK/Xu0a6gfuxbjBpvm/Zz4ZIlOnBF+d5z6wur8jhfHTqxXxrk2ccCsoDo9etZkOuU3CdnL3tSF1xsKCyFvUOeYcO/gJG63nQCQIeoMmyUBsGTYLd51t+EVY+K57PjTbrwopYybeEmh0+MsYhVpufeuEV5qwYpPRfUl9xUUZEUF20FPUQUUR3sgJmH7yggfkqAuY+T5cBoQ6mnhNvWvwTFW1MdU/jt0HzU9737awCMNUgp1NmAAW1FK1ig0JeXf1qvhw5fZvLYbUtJNjq4IEopVKe/rIm/t8WzIxof8IvdpWRwnQo94lGBYKme1IrhvGIFIB62qO8Y8gbLGSi9pGfw72uYM7B+cgKZDwRq/OJB5mTu2vFGvvKu5VJDWvNhbP9lY6fCkKUPECQuQH5ZLx5T+jIxxTPO2AB6tI61BykZOGK5TZgBR+cuSwAu8hKAJS9bHbpjD5hbDDksnHK+Q8+nEE/UBRP6WZXM36CZmzofh6U+f60n/5orrF3MjFwGB2gqxPG10faytvvSKqbN50CVDg5omoJvDVnE3YgywwF/j90a6bQqcnynmSSs2+FXieKA716TF+XGtv7QxmA02RkXPnlUDMfpLJVzaoFfBoT7bQ57IaErpAfkiyiE7meChYB9RcVXoDbKkZVUjkIZZMx0QfxM5yQuZuUlRHGJUV8A= X-Microsoft-Exchange-Diagnostics: 1; VI1PR07MB0816; 6:U0b5xEL0lvSCzcfbQEt1UAeRyOgQQx18C/t7cLMd5wKolyufNN3fVtc27dA9G45V6HoNzZ+oyHEAFdlMThHr5m+HXdnIgUa3LbXR4CVJkxMiSbYpg4bH9fIurFTd5gYFUoA71fb2YARxgPXUBpcWChze0wttF3Dj2Epdq7hFwirNFcvCzCUCPz2f+V6ckQCMZ6+yl/nS6I2fJCDzLla4fCQezbZnaS3FULCKL22puqR15rIKpoMCdK4T9VKd8cPDiLeLPRYRxe61qwKGug6GWivDJFip/ag6bEv9SzFsBB+5tPKnnr8gwUR6ej2sfsRnP65y/gXZWKkb/Cgurk+RFrK4ugvDSwKx1dVW+GJJR/aQnI/Yj18icR0gDcjiE56/F7/PZfHZekjShQSbUMjKvm0h4O1NF5bU/IyXp39W9t1FXxfseW3dB4osngU9cweY; 5:Ic7OP++1lNcqDfow+GRRMyn3ZHBHodbnRRgVVj79X+Ma57fKI8J159dusLdp2A/4UOK401OasiU+6SU5jtdlxHlkv3FIaETAvs5gc13ThBhbfzr0DQS/y2Q3PzUd7bCVuuUFtbu99li3B2x/V/PdMw==; 24:0WB0CVixhErck66guKiycPZ3M9AQZIcZvHu54Y8SSLeqw2UmUoelXA93Se0pJjUQ5f4B1JPNOqxb3XbHCICc+c0CAoRNvpHVqAlTIcmkOgo= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; VI1PR07MB0816; 7:06EdcQaa1MOBXc6XTsA/Acq4a/jyGo5av+k413zF5pq47ESLkHYp0cqdjmYqPUYH6XmEJoSmAKqfmfa2pxsIGgk4NxNKzSawdUbGVDmNDfDpOAJ4MlPz23BaIJEMsOO6YL65KMdObS/aUAmvIzUzdoLZIQW78JgdKOfmZfwMncmDE25JEmsIE6xMfVhifGS/HEoaq8/F88CbfBRMnPLjTPxg0OltmDF/5U8YxjlmKUYTSPeoYBTsjASRo4qIA7UugHQaJoXMnmcHC5ZbuFkoNIMfHl2dZyt98gcV1sIJfbqXjXWCcVY6p4ipcXaV7DE2Ys+tt3JkhvAOMUCOvP5xCAMvX9GXim+vucpixhXd/Uz5p2oU0On/hZEYiedn+eR/8azSO24fiW5xn8zIbfS3br7xCcVs2EveN1UIGMy1+Mh/p+xbHyihDdvZ2HEOgvdRDc9K0mGk88r9JDNUZ5KLjpw9tyBvnqEv1EQ0YlBwOkI8ZadhDvf+OSEg3dRm648BmMGfEl2brb4p4+PFdzNPU1ZMPHYdNZcuKl77PH3pm0ZS6DM5RLakQVI/4yZnw5Wc X-OriginatorOrg: nokia.onmicrosoft.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 31 Jan 2017 08:07:46.2260 (UTC) X-MS-Exchange-CrossTenant-Id: 5d471751-9675-428d-917b-70f44f9630b0 X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=5d471751-9675-428d-917b-70f44f9630b0; Ip=[131.228.2.36]; Helo=[hybrid2.ext.net.nokia.com] X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR07MB0816 Subject: [lng-odp] [PATCH v4 6/8] abi: pool: added initial definitions X-BeenThere: lng-odp@lists.linaro.org X-Mailman-Version: 2.1.16 Precedence: list List-Id: "The OpenDataPlane \(ODP\) List" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: lng-odp-bounces@lists.linaro.org Sender: "lng-odp" Initially, use the same default ABI file for all architectures. Default values match those defined in odp-linux implementation to minimize changes in this phase. Signed-off-by: Petri Savolainen --- example/timer/odp_timer_test.c | 2 +- include/odp/arch/arm32-linux/odp/api/abi/pool.h | 7 ++++ include/odp/arch/arm64-linux/odp/api/abi/pool.h | 7 ++++ include/odp/arch/default/api/abi/pool.h | 43 ++++++++++++++++++++++ include/odp/arch/mips64-linux/odp/api/abi/pool.h | 7 ++++ include/odp/arch/power64-linux/odp/api/abi/pool.h | 7 ++++ include/odp/arch/x86_32-linux/odp/api/abi/pool.h | 7 ++++ include/odp/arch/x86_64-linux/odp/api/abi/pool.h | 7 ++++ platform/Makefile.inc | 6 ++- .../include/odp/api/plat/pool_types.h | 21 ++++++----- 10 files changed, 102 insertions(+), 12 deletions(-) create mode 100644 include/odp/arch/arm32-linux/odp/api/abi/pool.h create mode 100644 include/odp/arch/arm64-linux/odp/api/abi/pool.h create mode 100644 include/odp/arch/default/api/abi/pool.h create mode 100644 include/odp/arch/mips64-linux/odp/api/abi/pool.h create mode 100644 include/odp/arch/power64-linux/odp/api/abi/pool.h create mode 100644 include/odp/arch/x86_32-linux/odp/api/abi/pool.h create mode 100644 include/odp/arch/x86_64-linux/odp/api/abi/pool.h -- 2.8.1 diff --git a/example/timer/odp_timer_test.c b/example/timer/odp_timer_test.c index 1088a74..2196b8c 100644 --- a/example/timer/odp_timer_test.c +++ b/example/timer/odp_timer_test.c @@ -520,7 +520,7 @@ err: if (gbls != NULL && gbls->tp != ODP_TIMER_POOL_INVALID) odp_timer_pool_destroy(gbls->tp); - if (gbls != NULL && gbls->pool != ODP_TIMER_POOL_INVALID) + if (gbls != NULL && gbls->pool != ODP_POOL_INVALID) if (odp_pool_destroy(gbls->pool)) err = 1; diff --git a/include/odp/arch/arm32-linux/odp/api/abi/pool.h b/include/odp/arch/arm32-linux/odp/api/abi/pool.h new file mode 100644 index 0000000..b354afb --- /dev/null +++ b/include/odp/arch/arm32-linux/odp/api/abi/pool.h @@ -0,0 +1,7 @@ +/* Copyright (c) 2017, Linaro Limited + * All rights reserved. + * + * SPDX-License-Identifier: BSD-3-Clause + */ + +#include diff --git a/include/odp/arch/arm64-linux/odp/api/abi/pool.h b/include/odp/arch/arm64-linux/odp/api/abi/pool.h new file mode 100644 index 0000000..b354afb --- /dev/null +++ b/include/odp/arch/arm64-linux/odp/api/abi/pool.h @@ -0,0 +1,7 @@ +/* Copyright (c) 2017, Linaro Limited + * All rights reserved. + * + * SPDX-License-Identifier: BSD-3-Clause + */ + +#include diff --git a/include/odp/arch/default/api/abi/pool.h b/include/odp/arch/default/api/abi/pool.h new file mode 100644 index 0000000..4637d19 --- /dev/null +++ b/include/odp/arch/default/api/abi/pool.h @@ -0,0 +1,43 @@ +/* Copyright (c) 2017, Linaro Limited + * All rights reserved. + * + * SPDX-License-Identifier: BSD-3-Clause + */ + +#ifndef ODP_ABI_POOL_H_ +#define ODP_ABI_POOL_H_ + +#ifdef __cplusplus +extern "C" { +#endif + +#include + +/** @internal Dummy type for strong typing */ +typedef struct { char dummy; /**< @internal Dummy */ } _odp_abi_pool_t; + +/** @ingroup odp_pool + * @{ + */ + +typedef _odp_abi_pool_t *odp_pool_t; + +#define ODP_POOL_INVALID ((odp_pool_t)0xffffffff) + +#define ODP_POOL_NAME_LEN 32 + +typedef enum odp_pool_type_t { + ODP_POOL_BUFFER = ODP_EVENT_BUFFER, + ODP_POOL_PACKET = ODP_EVENT_PACKET, + ODP_POOL_TIMEOUT = ODP_EVENT_TIMEOUT +} odp_pool_type_t; + +/** + * @} + */ + +#ifdef __cplusplus +} +#endif + +#endif diff --git a/include/odp/arch/mips64-linux/odp/api/abi/pool.h b/include/odp/arch/mips64-linux/odp/api/abi/pool.h new file mode 100644 index 0000000..b354afb --- /dev/null +++ b/include/odp/arch/mips64-linux/odp/api/abi/pool.h @@ -0,0 +1,7 @@ +/* Copyright (c) 2017, Linaro Limited + * All rights reserved. + * + * SPDX-License-Identifier: BSD-3-Clause + */ + +#include diff --git a/include/odp/arch/power64-linux/odp/api/abi/pool.h b/include/odp/arch/power64-linux/odp/api/abi/pool.h new file mode 100644 index 0000000..b354afb --- /dev/null +++ b/include/odp/arch/power64-linux/odp/api/abi/pool.h @@ -0,0 +1,7 @@ +/* Copyright (c) 2017, Linaro Limited + * All rights reserved. + * + * SPDX-License-Identifier: BSD-3-Clause + */ + +#include diff --git a/include/odp/arch/x86_32-linux/odp/api/abi/pool.h b/include/odp/arch/x86_32-linux/odp/api/abi/pool.h new file mode 100644 index 0000000..b354afb --- /dev/null +++ b/include/odp/arch/x86_32-linux/odp/api/abi/pool.h @@ -0,0 +1,7 @@ +/* Copyright (c) 2017, Linaro Limited + * All rights reserved. + * + * SPDX-License-Identifier: BSD-3-Clause + */ + +#include diff --git a/include/odp/arch/x86_64-linux/odp/api/abi/pool.h b/include/odp/arch/x86_64-linux/odp/api/abi/pool.h new file mode 100644 index 0000000..b354afb --- /dev/null +++ b/include/odp/arch/x86_64-linux/odp/api/abi/pool.h @@ -0,0 +1,7 @@ +/* Copyright (c) 2017, Linaro Limited + * All rights reserved. + * + * SPDX-License-Identifier: BSD-3-Clause + */ + +#include diff --git a/platform/Makefile.inc b/platform/Makefile.inc index 03d9376..deeebff 100644 --- a/platform/Makefile.inc +++ b/platform/Makefile.inc @@ -66,7 +66,8 @@ odpapiabidefaultinclude_HEADERS = \ $(top_srcdir)/include/odp/arch/default/api/abi/classification.h \ $(top_srcdir)/include/odp/arch/default/api/abi/crypto.h \ $(top_srcdir)/include/odp/arch/default/api/abi/event.h \ - $(top_srcdir)/include/odp/arch/default/api/abi/packet.h + $(top_srcdir)/include/odp/arch/default/api/abi/packet.h \ + $(top_srcdir)/include/odp/arch/default/api/abi/pool.h odpapiabiarchincludedir= $(includedir)/odp/arch/@ARCH_ABI@/odp/api/abi odpapiabiarchinclude_HEADERS = \ @@ -74,7 +75,8 @@ odpapiabiarchinclude_HEADERS = \ $(top_srcdir)/include/odp/arch/@ARCH_ABI@/odp/api/abi/classification.h \ $(top_srcdir)/include/odp/arch/@ARCH_ABI@/odp/api/abi/crypto.h \ $(top_srcdir)/include/odp/arch/@ARCH_ABI@/odp/api/abi/event.h \ - $(top_srcdir)/include/odp/arch/@ARCH_ABI@/odp/api/abi/packet.h + $(top_srcdir)/include/odp/arch/@ARCH_ABI@/odp/api/abi/packet.h \ + $(top_srcdir)/include/odp/arch/@ARCH_ABI@/odp/api/abi/pool.h EXTRA_DIST = \ arch/arm/odp/api/cpu_arch.h \ diff --git a/platform/linux-generic/include/odp/api/plat/pool_types.h b/platform/linux-generic/include/odp/api/plat/pool_types.h index 6baff09..8bc816d 100644 --- a/platform/linux-generic/include/odp/api/plat/pool_types.h +++ b/platform/linux-generic/include/odp/api/plat/pool_types.h @@ -13,16 +13,20 @@ #ifndef ODP_POOL_TYPES_H_ #define ODP_POOL_TYPES_H_ -#include -#include -#include - #ifdef __cplusplus extern "C" { #endif -/** @addtogroup odp_buffer - * Operations on a pool. +#include +#if ODP_ABI_COMPAT == 1 +#include +#else + +#include +#include +#include + +/** @ingroup odp_pool * @{ */ @@ -32,9 +36,6 @@ typedef ODP_HANDLE_T(odp_pool_t); #define ODP_POOL_NAME_LEN 32 -/** - * Pool type - */ typedef enum odp_pool_type_t { ODP_POOL_BUFFER = ODP_EVENT_BUFFER, ODP_POOL_PACKET = ODP_EVENT_PACKET, @@ -45,6 +46,8 @@ typedef enum odp_pool_type_t { * @} */ +#endif + #ifdef __cplusplus } #endif From patchwork Tue Jan 31 08:07:25 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Petri Savolainen X-Patchwork-Id: 92954 Delivered-To: patch@linaro.org Received: by 10.140.20.99 with SMTP id 90csp1817358qgi; Tue, 31 Jan 2017 00:16:15 -0800 (PST) X-Received: by 10.55.80.136 with SMTP id e130mr14992225qkb.52.1485850575137; Tue, 31 Jan 2017 00:16:15 -0800 (PST) Return-Path: Received: from lists.linaro.org (lists.linaro.org. [54.225.227.206]) by mx.google.com with ESMTP id n63si11453183qka.173.2017.01.31.00.16.14; Tue, 31 Jan 2017 00:16:15 -0800 (PST) Received-SPF: pass (google.com: domain of lng-odp-bounces@lists.linaro.org designates 54.225.227.206 as permitted sender) client-ip=54.225.227.206; Authentication-Results: mx.google.com; spf=pass (google.com: domain of lng-odp-bounces@lists.linaro.org designates 54.225.227.206 as permitted sender) smtp.mailfrom=lng-odp-bounces@lists.linaro.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: by lists.linaro.org (Postfix, from userid 109) id B97D160C2A; Tue, 31 Jan 2017 08:16:14 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on ip-10-142-244-252 X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAD_ENC_HEADER,BAYES_00, RCVD_IN_DNSWL_NONE, RCVD_IN_MSPIKE_H4, RCVD_IN_MSPIKE_WL, SPF_HELO_PASS, URIBL_BLOCKED autolearn=disabled version=3.4.0 Received: from [127.0.0.1] (localhost [127.0.0.1]) by lists.linaro.org (Postfix) with ESMTP id 4CF8062DAA; Tue, 31 Jan 2017 08:08:44 +0000 (UTC) X-Original-To: lng-odp@lists.linaro.org Delivered-To: lng-odp@lists.linaro.org Received: by lists.linaro.org (Postfix, from userid 109) id 52FCD60C43; Tue, 31 Jan 2017 08:07:59 +0000 (UTC) Received: from EUR01-VE1-obe.outbound.protection.outlook.com (mail-ve1eur01on0111.outbound.protection.outlook.com [104.47.1.111]) by lists.linaro.org (Postfix) with ESMTPS id 300DF608AB for ; Tue, 31 Jan 2017 08:07:52 +0000 (UTC) Received: from VI1PR07CA0123.eurprd07.prod.outlook.com (10.165.229.177) by VI1PR07MB0815.eurprd07.prod.outlook.com (10.161.107.150) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P384) id 15.1.888.5; Tue, 31 Jan 2017 08:07:50 +0000 Received: from DB3FFO11FD020.protection.gbl (2a01:111:f400:7e04::122) by VI1PR07CA0123.outlook.office365.com (2a01:111:e400:7a52::49) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P384) id 15.1.874.6 via Frontend Transport; Tue, 31 Jan 2017 08:07:50 +0000 Received-SPF: SoftFail (protection.outlook.com: domain of transitioning linaro.org discourages use of 131.228.2.35 as permitted sender) Received: from hybrid2.ext.net.nokia.com (131.228.2.35) by DB3FFO11FD020.mail.protection.outlook.com (10.47.217.51) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P384) id 15.1.874.2 via Frontend Transport; Tue, 31 Jan 2017 08:07:49 +0000 Received: from fihe3nok1346.nsn-intra.net (10.158.36.134) by fihe3nok1346.nsn-intra.net (10.158.36.134) with Microsoft SMTP Server (TLS) id 15.1.466.34; Tue, 31 Jan 2017 10:07:46 +0200 Received: from mailrelay.int.nokia.com (10.130.128.21) by fihe3nok1346.nsn-intra.net (10.158.36.134) with Microsoft SMTP Server (TLS) id 15.1.466.34 via Frontend Transport; Tue, 31 Jan 2017 10:07:46 +0200 Received: from fihe3nok0734.emea.nsn-net.net (localhost [127.0.0.1]) by fihe3nok0734.emea.nsn-net.net (8.14.9/8.14.5) with ESMTP id v0V87QUg032672 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT) for ; Tue, 31 Jan 2017 10:07:26 +0200 Received: from 10.144.19.15 ([10.144.104.219]) by fihe3nok0734.emea.nsn-net.net (8.14.9/8.14.5) with ESMTP id v0V87Qas032638 (version=TLSv1/SSLv3 cipher=AES128-SHA256 bits=128 verify=NOT) for ; Tue, 31 Jan 2017 10:07:26 +0200 X-HPESVCS-Source-Ip: 10.144.104.219 From: Petri Savolainen To: Date: Tue, 31 Jan 2017 10:07:25 +0200 Message-ID: <1485850046-28457-8-git-send-email-petri.savolainen@linaro.org> X-Mailer: git-send-email 2.8.1 In-Reply-To: <1485850046-28457-1-git-send-email-petri.savolainen@linaro.org> References: <1485850046-28457-1-git-send-email-petri.savolainen@linaro.org> MIME-Version: 1.0 X-EOPAttributedMessage: 0 X-MS-Office365-Filtering-HT: Tenant X-Forefront-Antispam-Report: CIP:131.228.2.35; IPV:NLI; CTRY:FI; EFV:NLI; SFV:NSPM; SFS:(10019020)(6009001)(7916002)(39860400002)(39840400002)(39850400002)(39450400003)(39410400002)(2980300002)(199003)(189002)(5660300001)(5003940100001)(107886002)(6916009)(22756006)(2950100002)(33646002)(110136003)(50466002)(626004)(2906002)(68736007)(189998001)(77096006)(48376002)(5890100001)(38730400001)(50226002)(92566002)(450100001)(50986999)(81156014)(2351001)(86362001)(356003)(8936002)(53936002)(305945005)(97736004)(105596002)(106466001)(81166006)(36756003)(8676002)(47776003)(76176999); DIR:OUT; SFP:1102; SCL:1; SRVR:VI1PR07MB0815; H:hybrid2.ext.net.nokia.com; FPR:; SPF:SoftFail; PTR:InfoDomainNonexistent; A:1; MX:1; LANG:en; X-Microsoft-Exchange-Diagnostics: 1; DB3FFO11FD020; 1:CBxw1VBX6f65/dQ2fA8GkxBck+bOr4b3oH4j7/Np2XitAiei+89RqymV2G8rVdYQD5/pKseiU3cxF/hKe7BA9BSt42kLIn9eCeyiPxp8PCKsonAPKhLC6u6UsKlzfq8SwUojNzxzxNnqfsaQpak55505++1cFrlhk2VRqHAdg6JboLyeWn8qFI3beklSbeiqPbibq6Jd1VDffGqg0DrrhD74l1D/rvkMEO21yPeDBhxjvrrvdqVl4gUKVVcZb3bJylG2EB6g0ou2HKv/AiAGUfY/OryOWgzjrTKs4KKYqGwhZAZTQpJI7+LobcmEEH55TEy6nx9eGQr282qCvxDncncQeXuvkHf7qj4x27DuEshZ6FizHuf1mEtwPgOzhDlgdGBgzHX0N40VzKG3nI0KTVa8PMNqnF4sBtFuX0XUY2FjT8LQHDtpn6MS8U4d+pc0F5nSZcEmy9zMzcKjweTMtA== X-MS-Office365-Filtering-Correlation-Id: fedde468-7aaa-4441-d548-08d449b03fd1 X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(22001); SRVR:VI1PR07MB0815; X-Microsoft-Exchange-Diagnostics: 1; VI1PR07MB0815; 3:MoHhtvcSrHnhWv4hLSO9tO0wvS2jOXEbSY+q3jN2KK2jlsWoEvE7LBJ12EVtFV0rGpPtriJf9Q4lHcnh+BipNYjxD6hpaNIr4vJ8Xzz6Erhqh0BoYxl0dKCBE2ydt3LdFpTjGJ4KGT5GM8ZAm9tqb7JlcayN5BDeQtxiBCBChU7am4g/k0ktI5ANRnBDx+sZY+DsRlUHCiEYucRAdnNfXU9l2AL2Wb2NURIkzMZVfhmjzywuPJ7gqfgEpIt2AIOjB1lk5nFMVQEcBTrbm/3y+KD3a5JZibXHDbTxT75lAPG3+Gw0FDc8Jzty89Zo/NMNSiWC33MvPL8UapInKFLN+mEG0RmpMkRnyFcdL2c9nA8= X-Microsoft-Exchange-Diagnostics: 1; VI1PR07MB0815; 25:SUwEhsQF3fteL7jZFRtBgkZNdWwwSdZvG0uFdFbobh9Tc9RJZAdebxvPremCG5r0OWPyD6dXOXkfU22Iobe7KG6eW7WZ2zF57bFjdl5u3dHAJ4LP8pw0h4RwcopDJvA8OXypbZgSO0cSus8gnGRwsng1y8h66cSiHh6qrygqSdEDISqPvV/D5CslcXbY39OCX3+71BGt0XHNXss6uqQzEYlZ+XhAqiNaa2QJ0/nOQ5KtNsb5pEmzDEswKWVvGf0ykkQyo2GKBp9oWdVeru4HnM9MaNCN2PNgegBSqWq2tuRJIF/ZL4QQq+nRTNERqWAIJ3PYyFEjVHJHCED+sRVSjEB/AzJp63dYrl9tBBYJBaSqLW6t2oL6tOufPKX4NsGA+BfInE4iHikOVICcLW59fNxBq2vH9CJ2JWBNto1I7AQKhzEDszu9HnV5NuKJvzc0FQeDtfbLmLLcZWURLNuOZ2jEna5KLmcwO7MFZ2Plkaet3MuvBstxzwGnrXgP5yXcy+wxxgc7z81qko1LCH+AQSDUYKbBKbd2Ewu3+11qz3oDszzz5dQJ5GLfx8MFPftkz1NgNGvqAuQsMXfm9f+nOtPUUnsaQZ9nt23q+NIcvrNR3MDu7JuqS+BligUOyaNa4BoBE8OjH7KYC+dK8vVfiIpIMdKRprEL8fJKikuEZW/5M7VFWGbTVn6TQ3ZQkumhd0wq/OVrYtWbUr582SYViUbDZQOfPRC1uoN5Y7hJPkvr94vUxwbIuwOV7sbHjmDxDby2RCQ6mS2vc21nrA7cjw== X-Microsoft-Exchange-Diagnostics: 1; VI1PR07MB0815; 31:sFwlhXwTWB1cz/jWNNO3sgLnOyx8yF7j+GkiZD7UqJgAWFInXoDNyCxDuHOPy4/Z+iWpq8hpMVyB7rGNgnnpF+qnl1TsWG2sybUuq6UuZ7JG8SoNvqmLnAFmqQ7KNS6gEw2+frpNPwkASvErZ5mVsMTHnSEpJ3y/SlmItd7FRc3h/9b4aCcrpLEGI0nzFG3ZcKMrj1n7Cm3HU1dZhxs0quWogqS6pZJia28ypgQTOhuKvT9yG54Bi14gS7ueXB27UJuRupg+27EPy38C+a5bfIYUS1jXtARaesLZkQTNqEk=; 20:AWZinKDqKfrtP3YgI1GPa/j0G29Qc4aLdP1i0GMY/5DW0+xdTewtLy/NnXBWXh0ZvbqLhgVby2rOs5eQLDAaBPrEpFptLzQ+ecOt63q3zUvP0/a1KBSpWKAfaNuKcG2dCoxl2rPnV82TBAuUn7VN8VDb6T6Te2nsd72qVjzcO8q2GJC3Mv6zhiCk98ESMsVVXn3hEwI9lUBrR+crTVkTAmUNHmmQZGnLUJgZCJNQBPBolQmdnyPTmDkyoqufNK0ntkLGzvAuFMTELQeitNs5/eYkBzIknG8QVhGhWX6Rao3pqMIQXqINgMZ+hQhLoXwXT5WAq+PWBt4W78yOb87fj7L+7RZ8pzZxnyYRjzssCLdmpRj0rpW5D6z3g1Es6CqpxpYDO/+xxJfVhuTsun1rkWhWCAr9ImqR/oeDDeGNdYwEpjUpgHkBx0TTJGmLSdGFEcm1I3lRVsok0KOUWK6nOTlwAuo+RXPez2at8CuiglK3y5IbngaXC17z1MTtXPlps+mWG0hskEAXJwnjtn3TZR1Nqmuw9h7Y5yBnWuOsKFltroaAmHEZZ6+cblgxGETL1FTQAchKP1hDoQx4/SteV8Qxxw+EjEtoBt8ft9MlB24= X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:; X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(6040375)(601004)(2401047)(8121501046)(5005006)(13018025)(13016025)(10201501046)(3002001)(6055026)(6041248)(20161123555025)(20161123562025)(20161123560025)(20161123564025)(20161123558021)(6072148); SRVR:VI1PR07MB0815; BCL:0; PCL:0; RULEID:; SRVR:VI1PR07MB0815; X-Microsoft-Exchange-Diagnostics: 1; VI1PR07MB0815; 4:3Yx4OgBxsF627LignpPpKGngJ6o9Tf3iTM6NY4B4jEpHg10yNxx9gd+UchDNZD4yz8bB6CcjDQaYjBwcZOzInrq/EGTXrDHntovHjp8sLmfk2cby/zZG5TDWrN/tb9XGLmIkPSIapUy/LtqtIcp9yURgiS7DRZeLpo150TiRSi5R+tawMyWHjVOF6QV2RpOjE1ObIbudshrSDET5pKRZAGrzSb/+dQDva6ItzGnC1HVNeRCp8+3hUXs4wwX1jJuyt3Xsg0mLKOIURa8yRfgvBdpRpNyrrGUKgt8j1vzGqR9KYp9f8qd1ooG8AyvWQSxiKqEGteo7YNwapmds6+836k2/GiL4IP715EsRbC+dNw1X47dApm/I7FKbkYTECZwfLEY7a4DP+7pGUcIGFwCJ4z4/ywgsOGDhCTbTq85hNMU5dBYz+AXLx/OMD+C6pnpZXCKMauVhklvvthxIxz49Lif6GG5NitXIJVu3bp1jILKvCahv5yUCzyYtapRIzXQjaJo5fe1/SEPzn34B/CjjNLmNtEk8lLjQzwaon6RB9YBiMevXUH0p6ZafISrTWhaf7GlpfcMZVty6al8tur6dAJl1MRJjalHj/y43hHnGQBQ/ICW3WgnLgX/lcq6kYLmKJpTHqbpk+7WkLAs+u2x3NSH7LedB0VZfkLC5g4TaFYY= X-Forefront-PRVS: 0204F0BDE2 X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; VI1PR07MB0815; 23:b52RyurDR1AIO4LL+wyq2O7975aQPCOAOVTqvd2Km?= xxTBnRAVE1raBDTo4PK8EPnS6jBC/JkvYEoPEsPySqxVbL9I50tcKJv5uuaHSAMA962uyEOebmcUkpr11fUJZwdNSws7wseOdCyfj3g/5JmDLAkEVtqdzbi/xUzAGgxKEwljo+EKrSxTc1yXvkDomteaDXhmo+PuX2Km51YRDOqFfDNUuypAEUSWWgdCTf4JycDpqR/+wZXGWOZVt+erfQiHd2OmrMq1x/XRuqAPppkjS77NAR2vbx9uEqBp1pVzMrCDkacUCQG9UbYz1Z5ZxjyUZG9ILtgz3weH/LKVE7AOTNYl9aqxq8cYTvviIaxUF58UniNeEe30ec2pVBJi4IKX5silL1moCa0wkKhpjvzqAYcye5U81tR+/gcFL1ItZf7xIZLTlkVVlc9eMsTcs3UqvnbrKOWiKEyHrmEzXaqf/6CzoRwOWKy77lWJRAupHu+/CXkK6/R3+SvM8u0VXOoI1kjziqLupnW/3RaFAFvY/TIlBP6bUQM/Nb802BTr9FrrgcvaC7pUafsBg/J0xdJpRHlcrq3WkAKTqItbWCHfZUdYw4HRo9Mvpmj6HIYPApuIcem2F8SXV+l9LEsInyL2uNLWadN/yeDxXAWEGZ+52UBADJcoil0gPW7Qpfb8pD49I1hz4sz8U3RyJz5VY4iOHUB2o60ALrlNyfNnNoNXkLQXOdiMwYWTAa3xVyN+RhOUb5zdtxlOq0x6ERcHhYVcUmZ9N6fUg12eg9F5GSdV6TFEUefUsh2E1wyxlf0xY+kr3FK+jNIvtBtNO8kl2TKuMDXSnu4cbw2Db5jmVpACRYHcX/EaWa5Fwry4XDfSf4c7rA0d4SuMqhvrOCR63KMwUTrRAH0AnV76/LhUFLF44eDppxhDMSt7TnI7L0vhAgHmsH/9tp82DsaWpmKETyeTm/SRPK+e/gnarnZqEPW5ue5xwz7KhqoAIs3wmjZdKUDwSVqcKHpTSrGxU8d3Sh23TmkENOzZM07nRhgfbJVKRGzEHW3sIkWOezbqTChgRNCsoaDtvvJh2sn9MB2bFa9qUzgA4kx4RxdGxkHVY+4xB4ML+SbnObOupoxR9f/v4GYmjrtY1XH7eHiIVODhTVd X-Microsoft-Exchange-Diagnostics: 1; VI1PR07MB0815; 6:IgDBi22NZeMIgXEbbXQjTOTnRUP/O/ePizVuY8JMUSYIjWkqeOF6TjkJ+8JrsUTfwe05jn+P/AakkEvj0QB0S7CHMoASykJRaOIcB80QsQNRouBmGXFCQrCfrc7gKAf6lk9oaPm3RNUVYhPtbduq5lBZouHRuMrwAdi4ZTuZ/Mh7WehFiAp1fqFX2+huOx9xvEmjjySCqlWLQVmNgBJcYByKr7JiHwCR8VbZ+chsI+crNHPJuaFv03rszIAmiNbY9UHmDZcI3om/vgh1olObjDiDbf0l2ztt31YyGMx1MT8WraMqsvRqDADeCtuJPEtIK+4/CAgM9asVAv8LUcxyUJTKnnqaeR2QJ11zeAiUPuJcgmZfCQLWfMJBgDC5HGq612mMTqBYACD6U8F1d4fBgyM6dRkHDw638gNFjlqhMwcIuTOXPTEr8ArRoUZyqKk/; 5:XKT+XoIUMSJalp3IeW+4/i3HBFirU5JbtZtOpWfHU0RwYvVlTfSck8FYu3KpkRj0BObPOlBcdhRvTDiqYOTus4yUM33YR9NsDnPqFq5aZHCN8SnluO6SseiAn0ceUEKGqwQ+rJAzkAMHYFKr5kW7LQ==; 24:yF5pYR8lBFTWifV5uDQFPAEM+SFeU6QI2dxSMNdrbkc7Yy6TPY0R/yIDuLq+GIrD1eFE9ChO3rKi6JmTkdZn5dkO9EMqYQwYAlXlnYXUrvM= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; VI1PR07MB0815; 7:E49qkfdEKRUfAUz8wLuYuV0QKR0539IJmRh9lfKShf9rWOR7vO/w6pYgg60QmBGGdMATicz4yNiyzrhV5mw04AksOWZO7j851+bOi91hTe/E6YF2CTI9OP9hEY+e6oZVMKmxqyIBl95Zu3QwcyJz7OqIgGr6wFwCAcvgfsxxTX+OYCoC/0IZw6XnjZMdpzGqIi2Aj0siqekw6jbBWuFV7KBDcSJ0JZyTKS6/KN3i0VJK5GIte53NXm+EY19IAoCAAfGViCLV5vLcaScuCROAu+Y0mUZKfGUJbJkOlYGrvZ/qnC+KAFHWO5YFK4SE7QlTLqdFF23PiWBbESsLpqutorPYKUV4fvrRtND9a3DToRzsqMgiQXhTBI0d8LOWFXkA8szxXN/i/WiqhIgu/TP/ZmPTiH3AWZBQfFCauJl3+ZSq70tBDMB7sjfms1ZO91Uk4mPmPIOdsyBzEoiCn9nGPIpWYFq1DrwW0To1Bl0QtDLuqMqTKhlTOLieVjup2NnQhARjVqo9DY5umxg37dU/MDLC3FvkwQvA/ocJHs2oLY1FQrv7E3iPvLewaIDPpKqB X-OriginatorOrg: nokia.onmicrosoft.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 31 Jan 2017 08:07:49.8154 (UTC) X-MS-Exchange-CrossTenant-Id: 5d471751-9675-428d-917b-70f44f9630b0 X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=5d471751-9675-428d-917b-70f44f9630b0; Ip=[131.228.2.35]; Helo=[hybrid2.ext.net.nokia.com] X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR07MB0815 Subject: [lng-odp] [PATCH v4 7/8] abi: queue: added initial definitions X-BeenThere: lng-odp@lists.linaro.org X-Mailman-Version: 2.1.16 Precedence: list List-Id: "The OpenDataPlane \(ODP\) List" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: lng-odp-bounces@lists.linaro.org Sender: "lng-odp" Initially, use the same default ABI file for all architectures. Default values match those defined in odp-linux implementation to minimize changes in this phase. Removed an unused type definition, documentation of that need to be still removed for API spec. Moved a TM specific define into TM source file. Signed-off-by: Petri Savolainen --- include/odp/arch/arm32-linux/odp/api/abi/queue.h | 7 +++++ include/odp/arch/arm64-linux/odp/api/abi/queue.h | 7 +++++ include/odp/arch/default/api/abi/queue.h | 35 ++++++++++++++++++++++ include/odp/arch/mips64-linux/odp/api/abi/queue.h | 7 +++++ include/odp/arch/power64-linux/odp/api/abi/queue.h | 7 +++++ include/odp/arch/x86_32-linux/odp/api/abi/queue.h | 7 +++++ include/odp/arch/x86_64-linux/odp/api/abi/queue.h | 7 +++++ platform/Makefile.inc | 6 ++-- .../include/odp/api/plat/queue_types.h | 25 +++++----------- platform/linux-generic/include/odp/api/queue.h | 4 +++ .../include/odp_classification_datamodel.h | 1 - platform/linux-generic/odp_queue.c | 5 ++++ platform/linux-generic/odp_traffic_mngr.c | 5 +++- 13 files changed, 102 insertions(+), 21 deletions(-) create mode 100644 include/odp/arch/arm32-linux/odp/api/abi/queue.h create mode 100644 include/odp/arch/arm64-linux/odp/api/abi/queue.h create mode 100644 include/odp/arch/default/api/abi/queue.h create mode 100644 include/odp/arch/mips64-linux/odp/api/abi/queue.h create mode 100644 include/odp/arch/power64-linux/odp/api/abi/queue.h create mode 100644 include/odp/arch/x86_32-linux/odp/api/abi/queue.h create mode 100644 include/odp/arch/x86_64-linux/odp/api/abi/queue.h -- 2.8.1 diff --git a/include/odp/arch/arm32-linux/odp/api/abi/queue.h b/include/odp/arch/arm32-linux/odp/api/abi/queue.h new file mode 100644 index 0000000..6027cee --- /dev/null +++ b/include/odp/arch/arm32-linux/odp/api/abi/queue.h @@ -0,0 +1,7 @@ +/* Copyright (c) 2017, Linaro Limited + * All rights reserved. + * + * SPDX-License-Identifier: BSD-3-Clause + */ + +#include diff --git a/include/odp/arch/arm64-linux/odp/api/abi/queue.h b/include/odp/arch/arm64-linux/odp/api/abi/queue.h new file mode 100644 index 0000000..6027cee --- /dev/null +++ b/include/odp/arch/arm64-linux/odp/api/abi/queue.h @@ -0,0 +1,7 @@ +/* Copyright (c) 2017, Linaro Limited + * All rights reserved. + * + * SPDX-License-Identifier: BSD-3-Clause + */ + +#include diff --git a/include/odp/arch/default/api/abi/queue.h b/include/odp/arch/default/api/abi/queue.h new file mode 100644 index 0000000..378b069 --- /dev/null +++ b/include/odp/arch/default/api/abi/queue.h @@ -0,0 +1,35 @@ +/* Copyright (c) 2017, Linaro Limited + * All rights reserved. + * + * SPDX-License-Identifier: BSD-3-Clause + */ + +#ifndef ODP_ABI_QUEUE_H_ +#define ODP_ABI_QUEUE_H_ + +#ifdef __cplusplus +extern "C" { +#endif + +/** @internal Dummy type for strong typing */ +typedef struct { char dummy; /**< @internal Dummy */ } _odp_abi_queue_t; + +/** @ingroup odp_queue + * @{ + */ + +typedef _odp_abi_queue_t *odp_queue_t; + +#define ODP_QUEUE_INVALID ((odp_queue_t)0) + +#define ODP_QUEUE_NAME_LEN 32 + +/** + * @} + */ + +#ifdef __cplusplus +} +#endif + +#endif diff --git a/include/odp/arch/mips64-linux/odp/api/abi/queue.h b/include/odp/arch/mips64-linux/odp/api/abi/queue.h new file mode 100644 index 0000000..6027cee --- /dev/null +++ b/include/odp/arch/mips64-linux/odp/api/abi/queue.h @@ -0,0 +1,7 @@ +/* Copyright (c) 2017, Linaro Limited + * All rights reserved. + * + * SPDX-License-Identifier: BSD-3-Clause + */ + +#include diff --git a/include/odp/arch/power64-linux/odp/api/abi/queue.h b/include/odp/arch/power64-linux/odp/api/abi/queue.h new file mode 100644 index 0000000..6027cee --- /dev/null +++ b/include/odp/arch/power64-linux/odp/api/abi/queue.h @@ -0,0 +1,7 @@ +/* Copyright (c) 2017, Linaro Limited + * All rights reserved. + * + * SPDX-License-Identifier: BSD-3-Clause + */ + +#include diff --git a/include/odp/arch/x86_32-linux/odp/api/abi/queue.h b/include/odp/arch/x86_32-linux/odp/api/abi/queue.h new file mode 100644 index 0000000..6027cee --- /dev/null +++ b/include/odp/arch/x86_32-linux/odp/api/abi/queue.h @@ -0,0 +1,7 @@ +/* Copyright (c) 2017, Linaro Limited + * All rights reserved. + * + * SPDX-License-Identifier: BSD-3-Clause + */ + +#include diff --git a/include/odp/arch/x86_64-linux/odp/api/abi/queue.h b/include/odp/arch/x86_64-linux/odp/api/abi/queue.h new file mode 100644 index 0000000..6027cee --- /dev/null +++ b/include/odp/arch/x86_64-linux/odp/api/abi/queue.h @@ -0,0 +1,7 @@ +/* Copyright (c) 2017, Linaro Limited + * All rights reserved. + * + * SPDX-License-Identifier: BSD-3-Clause + */ + +#include diff --git a/platform/Makefile.inc b/platform/Makefile.inc index deeebff..3201d33 100644 --- a/platform/Makefile.inc +++ b/platform/Makefile.inc @@ -67,7 +67,8 @@ odpapiabidefaultinclude_HEADERS = \ $(top_srcdir)/include/odp/arch/default/api/abi/crypto.h \ $(top_srcdir)/include/odp/arch/default/api/abi/event.h \ $(top_srcdir)/include/odp/arch/default/api/abi/packet.h \ - $(top_srcdir)/include/odp/arch/default/api/abi/pool.h + $(top_srcdir)/include/odp/arch/default/api/abi/pool.h \ + $(top_srcdir)/include/odp/arch/default/api/abi/queue.h odpapiabiarchincludedir= $(includedir)/odp/arch/@ARCH_ABI@/odp/api/abi odpapiabiarchinclude_HEADERS = \ @@ -76,7 +77,8 @@ odpapiabiarchinclude_HEADERS = \ $(top_srcdir)/include/odp/arch/@ARCH_ABI@/odp/api/abi/crypto.h \ $(top_srcdir)/include/odp/arch/@ARCH_ABI@/odp/api/abi/event.h \ $(top_srcdir)/include/odp/arch/@ARCH_ABI@/odp/api/abi/packet.h \ - $(top_srcdir)/include/odp/arch/@ARCH_ABI@/odp/api/abi/pool.h + $(top_srcdir)/include/odp/arch/@ARCH_ABI@/odp/api/abi/pool.h \ + $(top_srcdir)/include/odp/arch/@ARCH_ABI@/odp/api/abi/queue.h EXTRA_DIST = \ arch/arm/odp/api/cpu_arch.h \ diff --git a/platform/linux-generic/include/odp/api/plat/queue_types.h b/platform/linux-generic/include/odp/api/plat/queue_types.h index 1569f5d..1561e22 100644 --- a/platform/linux-generic/include/odp/api/plat/queue_types.h +++ b/platform/linux-generic/include/odp/api/plat/queue_types.h @@ -17,39 +17,30 @@ extern "C" { #endif +#include +#if ODP_ABI_COMPAT == 1 +#include +#else + #include #include -/** @addtogroup odp_queue ODP QUEUE - * Macros and operation on a queue. +/** @ingroup odp_queue * @{ */ typedef ODP_HANDLE_T(odp_queue_t); -typedef ODP_HANDLE_T(odp_queue_group_t); - #define ODP_QUEUE_INVALID _odp_cast_scalar(odp_queue_t, 0) #define ODP_QUEUE_NAME_LEN 32 /** - * @def ODP_QUEUE_TYPE_TM - * Traffic manager queue - * @note Internal to the implementation -- not part of queue type API - */ -#define ODP_QUEUE_TYPE_TM 4 - -/** Get printable format of odp_queue_t */ -static inline uint64_t odp_queue_to_u64(odp_queue_t hdl) -{ - return _odp_pri(hdl); -} - -/** * @} */ +#endif + #ifdef __cplusplus } #endif diff --git a/platform/linux-generic/include/odp/api/queue.h b/platform/linux-generic/include/odp/api/queue.h index a5cf873..adceafb 100644 --- a/platform/linux-generic/include/odp/api/queue.h +++ b/platform/linux-generic/include/odp/api/queue.h @@ -27,6 +27,10 @@ extern "C" { * @{ */ +/* REMOVE FROM API SPEC. Typedef needed only for suppressing Doxygen + * warning. */ +typedef void odp_queue_group_t; + /** * @} */ diff --git a/platform/linux-generic/include/odp_classification_datamodel.h b/platform/linux-generic/include/odp_classification_datamodel.h index d5382f3..37aff9f 100644 --- a/platform/linux-generic/include/odp_classification_datamodel.h +++ b/platform/linux-generic/include/odp_classification_datamodel.h @@ -82,7 +82,6 @@ struct cos_s { union cos_u *linked_cos[ODP_PMR_PER_COS_MAX]; /* Chained CoS with PMR*/ uint32_t valid; /* validity Flag */ odp_cls_drop_t drop_policy; /* Associated Drop Policy */ - odp_queue_group_t queue_group; /* Associated Queue Group */ size_t headroom; /* Headroom for this CoS */ odp_spinlock_t lock; /* cos lock */ odp_atomic_u32_t num_rule; /* num of PMRs attached with this CoS */ diff --git a/platform/linux-generic/odp_queue.c b/platform/linux-generic/odp_queue.c index aafe567..3975405 100644 --- a/platform/linux-generic/odp_queue.c +++ b/platform/linux-generic/odp_queue.c @@ -756,3 +756,8 @@ int sched_cb_queue_empty(uint32_t queue_index) return ret; } + +uint64_t odp_queue_to_u64(odp_queue_t hdl) +{ + return _odp_pri(hdl); +} diff --git a/platform/linux-generic/odp_traffic_mngr.c b/platform/linux-generic/odp_traffic_mngr.c index 9dc3a86..309f237 100644 --- a/platform/linux-generic/odp_traffic_mngr.c +++ b/platform/linux-generic/odp_traffic_mngr.c @@ -37,6 +37,9 @@ static const pkt_desc_t EMPTY_PKT_DESC = { .word = 0 }; #define MAX_PRIORITIES ODP_TM_MAX_PRIORITIES #define NUM_SHAPER_COLORS ODP_NUM_SHAPER_COLORS +/* Traffic manager queue */ +#define QUEUE_TYPE_TM 4 + static tm_prop_t basic_prop_tbl[MAX_PRIORITIES][NUM_SHAPER_COLORS] = { [0] = { [ODP_TM_SHAPER_GREEN] = { 0, DECR_BOTH }, @@ -3915,7 +3918,7 @@ odp_tm_queue_t odp_tm_queue_create(odp_tm_t odp_tm, tm_queue_obj->pkt = ODP_PACKET_INVALID; odp_ticketlock_init(&tm_wred_node->tm_wred_node_lock); - tm_queue_obj->tm_qentry.s.type = ODP_QUEUE_TYPE_TM; + tm_queue_obj->tm_qentry.s.type = QUEUE_TYPE_TM; tm_queue_obj->tm_qentry.s.enqueue = queue_tm_reenq; tm_queue_obj->tm_qentry.s.enqueue_multi = queue_tm_reenq_multi; From patchwork Tue Jan 31 08:07:26 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Petri Savolainen X-Patchwork-Id: 92950 Delivered-To: patch@linaro.org Received: by 10.140.20.99 with SMTP id 90csp1816154qgi; Tue, 31 Jan 2017 00:11:46 -0800 (PST) X-Received: by 10.55.103.3 with SMTP id b3mr19521987qkc.248.1485850306273; Tue, 31 Jan 2017 00:11:46 -0800 (PST) Return-Path: Received: from lists.linaro.org (lists.linaro.org. [54.225.227.206]) by mx.google.com with ESMTP id t184si11417304qkd.335.2017.01.31.00.11.46; Tue, 31 Jan 2017 00:11:46 -0800 (PST) Received-SPF: pass (google.com: domain of lng-odp-bounces@lists.linaro.org designates 54.225.227.206 as permitted sender) client-ip=54.225.227.206; Authentication-Results: mx.google.com; spf=pass (google.com: domain of lng-odp-bounces@lists.linaro.org designates 54.225.227.206 as permitted sender) smtp.mailfrom=lng-odp-bounces@lists.linaro.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: by lists.linaro.org (Postfix, from userid 109) id E8A5A60C48; Tue, 31 Jan 2017 08:11:45 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on ip-10-142-244-252 X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAD_ENC_HEADER,BAYES_00, RCVD_IN_DNSWL_NONE, RCVD_IN_MSPIKE_H3, RCVD_IN_MSPIKE_WL, SPF_HELO_PASS, URIBL_BLOCKED autolearn=disabled version=3.4.0 Received: from [127.0.0.1] (localhost [127.0.0.1]) by lists.linaro.org (Postfix) with ESMTP id CA8A160CDE; Tue, 31 Jan 2017 08:08:19 +0000 (UTC) X-Original-To: lng-odp@lists.linaro.org Delivered-To: lng-odp@lists.linaro.org Received: by lists.linaro.org (Postfix, from userid 109) id E56AA60C4E; Tue, 31 Jan 2017 08:07:55 +0000 (UTC) Received: from EUR02-VE1-obe.outbound.protection.outlook.com (mail-eopbgr20123.outbound.protection.outlook.com [40.107.2.123]) by lists.linaro.org (Postfix) with ESMTPS id 639D560C07 for ; Tue, 31 Jan 2017 08:07:49 +0000 (UTC) Received: from AMXPR07CA0044.eurprd07.prod.outlook.com (10.242.64.44) by AM5PR0701MB2705.eurprd07.prod.outlook.com (10.173.93.19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P384) id 15.1.888.5; Tue, 31 Jan 2017 08:07:47 +0000 Received: from DB3FFO11FD022.protection.gbl (2a01:111:f400:7e04::117) by AMXPR07CA0044.outlook.office365.com (2a01:111:e400:1000::44) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P384) id 15.1.888.5 via Frontend Transport; Tue, 31 Jan 2017 08:07:47 +0000 Received-SPF: SoftFail (protection.outlook.com: domain of transitioning linaro.org discourages use of 131.228.2.36 as permitted sender) Received: from hybrid2.ext.net.nokia.com (131.228.2.36) by DB3FFO11FD022.mail.protection.outlook.com (10.47.217.53) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P384) id 15.1.874.2 via Frontend Transport; Tue, 31 Jan 2017 08:07:47 +0000 Received: from fihe3nok1346.nsn-intra.net (10.158.36.134) by fihe3nok1347.nsn-intra.net (10.158.36.135) with Microsoft SMTP Server (TLS) id 15.1.466.34; Tue, 31 Jan 2017 10:07:45 +0200 Received: from mailrelay.int.nokia.com (10.130.128.21) by fihe3nok1346.nsn-intra.net (10.158.36.134) with Microsoft SMTP Server (TLS) id 15.1.466.34 via Frontend Transport; Tue, 31 Jan 2017 10:07:45 +0200 Received: from fihe3nok0734.emea.nsn-net.net (localhost [127.0.0.1]) by fihe3nok0734.emea.nsn-net.net (8.14.9/8.14.5) with ESMTP id v0V87QkY032679 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT) for ; Tue, 31 Jan 2017 10:07:26 +0200 Received: from 10.144.19.15 ([10.144.104.219]) by fihe3nok0734.emea.nsn-net.net (8.14.9/8.14.5) with ESMTP id v0V87Qat032638 (version=TLSv1/SSLv3 cipher=AES128-SHA256 bits=128 verify=NOT) for ; Tue, 31 Jan 2017 10:07:26 +0200 X-HPESVCS-Source-Ip: 10.144.104.219 From: Petri Savolainen To: Date: Tue, 31 Jan 2017 10:07:26 +0200 Message-ID: <1485850046-28457-9-git-send-email-petri.savolainen@linaro.org> X-Mailer: git-send-email 2.8.1 In-Reply-To: <1485850046-28457-1-git-send-email-petri.savolainen@linaro.org> References: <1485850046-28457-1-git-send-email-petri.savolainen@linaro.org> MIME-Version: 1.0 X-EOPAttributedMessage: 0 X-MS-Office365-Filtering-HT: Tenant X-Forefront-Antispam-Report: CIP:131.228.2.36; IPV:NLI; CTRY:FI; EFV:NLI; SFV:NSPM; SFS:(10019020)(6009001)(7916002)(39450400003)(39410400002)(39840400002)(39860400002)(39850400002)(2980300002)(199003)(189002)(36756003)(6916009)(92566002)(2950100002)(5003940100001)(48376002)(68736007)(50466002)(33646002)(22756006)(575784001)(86362001)(50226002)(8936002)(77096006)(2906002)(81156014)(38730400001)(81166006)(8676002)(450100001)(626004)(53936002)(356003)(110136003)(50986999)(76176999)(5660300001)(2351001)(189998001)(106466001)(105596002)(47776003)(305945005)(107886002)(97736004); DIR:OUT; SFP:1102; SCL:1; SRVR:AM5PR0701MB2705; H:hybrid2.ext.net.nokia.com; FPR:; SPF:SoftFail; PTR:InfoDomainNonexistent; A:1; MX:1; LANG:en; X-Microsoft-Exchange-Diagnostics: 1; DB3FFO11FD022; 1:rD358siQNK4tDKvB9HA/yel0hksWcR8Y/L8j+q9YMTxfFlWP8X/EE/2GLFXOfoyTlvhZlZr0g34cDW4mArBBG+xDdjKjSg8W+IUHcZVwAvfI8wQOdW2RNoFChyWuLoifGj7cRLv5ops+GVuJQ6yq0DuNATP+G60iElaOrYdT47Gizs8pz76mvHlgSGVijeZVltCfEZfpOZD2pahdmbHQh+CHKUPoM+PgrSuYxtWDPPUL2a3tHrltVlBO+P+mV04yK8+JQGTmRoUla2TUIB8MdnrmPabJByE1BzO8Nraz8vOs2XeUD6zpg+hsGf59R9t+vyqSWBCb9Wt4HsEq843NbMAyA6WZ57pjAieY+FdmLieRJI1J1bly7sN/+Q1/Scs1tjV/xco0eidGXnrzMgvGpkc7D7rvUPMY+gEvs+4HadStTFT6No5ERjcB5vLZX9WImfw+lEjCXQVAwkhTVRfCrw== X-MS-Office365-Filtering-Correlation-Id: 823e7c2c-8510-4e15-b74b-08d449b03e41 X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(22001); SRVR:AM5PR0701MB2705; X-Microsoft-Exchange-Diagnostics: 1; AM5PR0701MB2705; 3:dp4bDceORzFI6LRyVDIWOy3N9EpeXa8fjzd0sQc/tbWv/9WBplGJFCyB8wvnVdQmKI1/XVs3aATRgvkPv2+plAMBZRVsFVu4XEvD8MEAnHpvzQb6UHararpJnMKPyV8yDNcjgqArbZ06m//BpD1Lh3tOTRgZwaK6ahYW6xr2Ed0x0QGjBFFF5bafPyPHLoGh4KqsV8Y9zXMNInBKixlqgU68iTDh5f/Dzr09QRL5UqHHw3UJae1CgvJPKfN3T0HFzYIGTcf6iGPt4WbATXqvFxjIQcw/Ko+uyK+HfNmWAdhP/xTqSXeu6USEO23lDp8I9oTvCzKSxIzwRPBvv8NwyHASrhXHCEQ3XkaeEEquuzc=; 25:8Gn27SpHZwcZUDDLL0rEEADqV5s11EGNlQmDQ0QGcAteI3S9fMaQnoAGM1X+soWya6pv1FtGGSPk+nklrdpXOkLmOP6Pj/10vKRzfH0uRsa8CHXbtcnxML1XsXAjJl4grt9NM+QdfQ1EP2ZT/IBJR8rhcJP/ThMf0u3VnGqODt9GeskAd2AJmN+52UGrQqqgk1EEumc79NSy6cOoD0wqcS6BwcAl3p11tu+5hH64r5FVqBfw01Tjh3/RJLsay7XMKdLaBYeAnlgqOPxZ7C70eJNsVzJ2aE0EeZEAe8A95AMp+LlIYf181FMGqBEVmiaqesfDGjjMp2/6fO4mec0Ej3k1brgHkawNsU2OyEr2LM1TTOwgPXl2FlYgeMK0R7qnseOfYRTFDB5KpJyegBPZnoiJsikmKq5XAyvNiiGdfBLPLH9VHjoyDDWtRa0mspVmpyKV3gk6WaAs7X4T5INDVA== X-Microsoft-Exchange-Diagnostics: 1; AM5PR0701MB2705; 31:MiXCRltxrvjWIeYlWgAkcTS7IhsKEzQnnM9RSUZqDqz+OChhzZQKgS+AnfxCLJNux8YAnWZ4tYOuewYeGIcwghpXdKZWG6y+g3N30Lme79D1FMl8kV42HxgQS6jffJCjA3MFgBRKv3x2E/EkW2kM86NqtoKAee95UtFpyv0BPdsygcWsm/RYNU7FkBKqND2UQl1lpuRwA/CBR006vs9yb353Dtwm8ApwM/rdzHFPt3HJB1wU09QPzSYVJU39TSYxFnsAdIr8K7BFvoQDoBpcp8nnXZduGlhlBgtaaZai1tAZJd74jnI1iOZ75HZkQm9N; 20:znnjGiPLHKvppORl21rCNqqKdCHKf+Q2DbhqjBO9jKY9LYIsdo0x1VD26Ktg+NME6cgrmr/VKgaQbcG3X2kq/0RZWQiPqfDJUxYdZtrNPiKJ7ogNOsFPCB57i6vF0NzUPJPISgAKvIsp0PF+e1xxqoyPiw/iGyZymB2rjZ5uF7F/N6Vib4QIa7i5YDFnRypqvN9qOukvWoTaIAqzj9wqoyXcFXVfuVXDPw2AzPX0YyeTH2tHeabE3ki3Ium966ea7uIVe1b3Nn5y2a43UF3V5ZyGyQD2LJ+ncADDSNyclby6zTLthTplA1RPwpeKt4H2j3waRjym9jRww8L52xgeP2rUThc497HCoDLGLmNHGFRkk5a1FMIJ9/yu3cTJH7baSOvG9i6CSx4YfbkQLvTdJ3TRzkasDoYy06g9oLE6PZF1GQ7yrYb+/hJ2rmi6IUqw8mbGnsRcnicCu2TOMV4LEN3sPTQnSFI1+0sHnhlBbfBB5PeTObFMXQlgMH7qdtaDTenVDs9tzc/sUHzxKI9qqqO2AZvEgEZCXIJAo9yrTG1e0P6ea+/sSRz2vxPiuLgVuWazOOvP+kBZv1GZICVG9y4wgAN5YmqJj/vEOpjAZDI= X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:; X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(6040375)(601004)(2401047)(13016025)(13018025)(5005006)(8121501046)(10201501046)(3002001)(6055026)(6041248)(20161123555025)(20161123560025)(20161123562025)(20161123564025)(6072148); SRVR:AM5PR0701MB2705; BCL:0; PCL:0; RULEID:; SRVR:AM5PR0701MB2705; X-Microsoft-Exchange-Diagnostics: 1; AM5PR0701MB2705; 4:+GIFTT2STMrWn1a+gWAGqvKafGlLRtPxnzwsykmbaacBvFxUu5GXACjbqj2u6akTJfCMGiwYjGHkXyF8Xv4TVmQ/VJXmnz25utKUpfNXWiIQjoauWMknRENsbWsJem601nQFfJmVR0MMpH03G1h67QZ6hNiMHuGWNlCtgV35EeQfMXtegl6tH9hOzgQsgrc4sM1k5naAwFVgTBgOnTQwN88m3IJZ/IsPeP/M2U/UAR0ILe0fwCXdYzalDJDSrqFHkipXwP36N6ZOP9jVm7QraiGApHKuMedzjUqw1iz8wmPYDX+ndyuKI+i6Vs2fmYsIXx4JoWZvDBI3aihL2faK6uPiYOihPdjPNWTI1z6WhQ5itKN++Ej7H4Z8XWPEviKrPVDZY1Z/rxnbFZvQqaWxDoBRzLzi8CN/tNIOv8Q61p1KO3/b+gFrvC2+nH1ognSD5gT9Q3uQwJyA2RaRWFSQEJjIv7XlKmRjiCL0H4mLJSFGs954t1VXcohtqVlEG/L6syWIHUq5M9lD1RFi5A5Pkvwi17ET6eXVse/JnhZk4yFIvb15H8ZB96Id8XV63FZJDrK1mKnex6R1JD0wWVPHb7mwoCdtjh6/hH+UfotalLMi3Ej+r3O97wigIOPdXUdp X-Forefront-PRVS: 0204F0BDE2 X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; AM5PR0701MB2705; 23:xjQX7QbKSa4L17Cp0NAFag42m+DIcSmmkZlU/XE?= 793cI2HC1OAa+T4DLxYbzmByhevre74sMRKBJZGUVPD6Hv1+xegqg6/Z2qtmx50sEfHL6yok0Ty3WxHB7a2EMxBU/4UlFysSWIcmu/KrjDRt1uBai4foAUHP8j/8d75e40cVRznXKa2RffSSUR67QBnI2VXGVSjuNmvhVNJHpQ01mQ9mUOY4dKnq4Pqp4Z65xfOcmJXikynPxdJ0e+5ilDUmwTLFktG0izEts8QuL1Mx9PWshTAJnjVR0zTLfaIWAecKJPi5SGzsfim11Bd/3hd0UG1oOSncHrJqSU1SLvOd8KbRSSGJ18kEAkNCzVahVeZ3xEpK4+NhgHtbO24WoRsPZFhBD6sXj7dEB4QsMSQZH0GSFj+I3GCHuIq1H3L8IhJOwF4j62YWb93Ppn+7wdlYqUz7xqDoP2oTbv6qtP6pDF/lXfF8F4A9t6m00NPAycWSIEXknYtbSSxH5/z04Rf/VmGr6pYJokFIKTZQT+vQFAyf3c8U9iulqt214x6XdtE/tnsesywHOuQlwsZnMMzZc9OPq3UApcHp2Tid6T9WnqVS3p6FBypCAXQ4V5PsmdV8rzzY1ldA3Van3ohEUL2llR5DZILidQ04ESTzle4fzEn94CdzCE9hWJd+qraBDnul/pXyQ9coLpaIUPljkOWJ92Tivij5wnFDXYoXJ4wCLQQdIvyCVPNGvLUpvD/CpNNuuGiI35fevVuA9MUyQ8ErEt5MIOdherahjZ3XimkKn647AbduTNtBelPKPUzOSjUbhW0KxHSDnezgEMsSKzvTpv9gFZnJO/JO8u0NUdrV3wwYDGHd9enhuuW5f8yp0GRQ7vODns+E+IQ82Mbc7dlKvnv2gt6kLCY5MNP5e3XF0eghk1FrqAuUoQLiPZmbOtRfvG4zp18xhLQiGkzYQOhLGeGA2eRjfCGCW5VEm1kOvNKq05GniUhvwTMWt6cLqqhqSbYyn7gdCtbXldN6zEmpKkhNDMGykSZ4B6j1kGoW+B648gywSOVGTzqiX1MF4FPuljWsf7m81I1FMHuPFgIBRcmTqcd9THTv2PwpdgzARZWb0/BLh8Dnx7cxMURrRdMnidFi2xmLq8b7NtU49MkcF X-Microsoft-Exchange-Diagnostics: 1; AM5PR0701MB2705; 6:29g69hFx+rYScnzXPij/LalZZ+1JXGCoYojcfS28sRkqxgBasDUlOLRnvDEIp75jkENnQq5LnoIRubYrA9hxHlvSCUZzBjLLmdo3hqDXqugwGenSkFNdCXne0YJ+2ubvuDDAB5IubblcH1p6G1T+ZcSAJFaA6E8TzT2surUxTMvcUOxKketRBjDwXYwszu4uPiEAR+3pKJ0MioDM5UgVuX1JjKP4i/N5rQgOAGDBwDI2MUkmm0gUSqW62+qRaqaJqP7NUKORd4TxgwWfv/eP84/g636sLIIEe+S9LA/Dblltn8X2sE7MP3PSQE0fpzWVvcQgY73P3VPsx2/VvIaZLQKZlGUwfxJQhJ0kfUJAZS2vgmab2IgCItcXSBwBFYundrvm4KI0OoY7qHmTuumpegxgXQNwAmqvNLMdwrk0rRQ=; 5:PBEt7Ybl3w2W+XDSDXAdIT8D++ubdO61u8efuuOL1umKupaeLtPgY7W6+k0l//3+IDiVqTrBHUKij4DemAV97u2r6w8QNNIHB2weiUDfIlDUXqf1EllsAOidnWTutzvHLB+dGPl80VcrHiuWJHfHCg==; 24:eOPDG7eKpqBKYAdPeiyg4VZbxqdJtSVx9V95FSST16GYsRG8sXb1rNEhK4SiSVz5usn3DBGdzQt5djEFOWYuzD+PHpagmcSS7s5YAHKGxgA= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; AM5PR0701MB2705; 7:JDqOxcVeC59om+3evWYWo/ba/ZrTWttmqc80JKQSIPex4yv5sBef7T3OqU/BOBhJKdpxuMXI0Yn0Gdwxwhfkg7uGPFnx8Lwvq5U/aqXWt7gOCFETkCn7yhgY8SQiW4YWYHi0LkoEv/v8iCdHEA0+2t7t2ivOE/KT54q56pUePmd27NoW2BMKhyQJXAX69OecEAOVi9rrnwCLLGY6dBBXFTvi1nh6N2w5mUqw4CYev2CN9ExTqGedlT8h5yTT3zu7/F8ay4RXKa8KO0SrqbAEYugV7/9cgV5rPGkAwqnIEoJxTt2+NG4c47nEj2Kujc16FBf9DP5rKsPqRRZPxcQ6laNT0vcSS/i3+nooA16BHGmXWQ2LLOLy5PClA/rZiu5feOVUIronAUD4YWENUURfz7fBwx6SBTUYy1npFt7Ya0H80lVHGoyMNOpYBKAVKlnxhpWrYuLeH3fFmsxWZglSfr8Wabs0K0XNp46mwI3TxzHm7uLNLlyQ3GruTkyKZqQrETolAAonhcR9410lGtMUgg== X-OriginatorOrg: nokia.onmicrosoft.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 31 Jan 2017 08:07:47.2556 (UTC) X-MS-Exchange-CrossTenant-Id: 5d471751-9675-428d-917b-70f44f9630b0 X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=5d471751-9675-428d-917b-70f44f9630b0; Ip=[131.228.2.36]; Helo=[hybrid2.ext.net.nokia.com] X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM5PR0701MB2705 Subject: [lng-odp] [PATCH v4 8/8] abi: shm: added initial definitions X-BeenThere: lng-odp@lists.linaro.org X-Mailman-Version: 2.1.16 Precedence: list List-Id: "The OpenDataPlane \(ODP\) List" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: lng-odp-bounces@lists.linaro.org Sender: "lng-odp" Initially, use the same default ABI file for all architectures. Default values match those defined in odp-linux implementation to minimize changes in this phase. Signed-off-by: Petri Savolainen --- .../arch/arm32-linux/odp/api/abi/shared_memory.h | 7 +++++ .../arch/arm64-linux/odp/api/abi/shared_memory.h | 7 +++++ include/odp/arch/default/api/abi/shared_memory.h | 35 ++++++++++++++++++++++ .../arch/mips64-linux/odp/api/abi/shared_memory.h | 7 +++++ .../arch/power64-linux/odp/api/abi/shared_memory.h | 7 +++++ .../arch/x86_32-linux/odp/api/abi/shared_memory.h | 7 +++++ .../arch/x86_64-linux/odp/api/abi/shared_memory.h | 7 +++++ platform/Makefile.inc | 6 ++-- .../include/odp/api/plat/shared_memory_types.h | 16 +++++----- platform/linux-generic/include/odp_pool_internal.h | 1 + platform/linux-generic/odp_shared_memory.c | 6 ++++ 11 files changed, 96 insertions(+), 10 deletions(-) create mode 100644 include/odp/arch/arm32-linux/odp/api/abi/shared_memory.h create mode 100644 include/odp/arch/arm64-linux/odp/api/abi/shared_memory.h create mode 100644 include/odp/arch/default/api/abi/shared_memory.h create mode 100644 include/odp/arch/mips64-linux/odp/api/abi/shared_memory.h create mode 100644 include/odp/arch/power64-linux/odp/api/abi/shared_memory.h create mode 100644 include/odp/arch/x86_32-linux/odp/api/abi/shared_memory.h create mode 100644 include/odp/arch/x86_64-linux/odp/api/abi/shared_memory.h -- 2.8.1 diff --git a/include/odp/arch/arm32-linux/odp/api/abi/shared_memory.h b/include/odp/arch/arm32-linux/odp/api/abi/shared_memory.h new file mode 100644 index 0000000..d203678 --- /dev/null +++ b/include/odp/arch/arm32-linux/odp/api/abi/shared_memory.h @@ -0,0 +1,7 @@ +/* Copyright (c) 2017, Linaro Limited + * All rights reserved. + * + * SPDX-License-Identifier: BSD-3-Clause + */ + +#include diff --git a/include/odp/arch/arm64-linux/odp/api/abi/shared_memory.h b/include/odp/arch/arm64-linux/odp/api/abi/shared_memory.h new file mode 100644 index 0000000..d203678 --- /dev/null +++ b/include/odp/arch/arm64-linux/odp/api/abi/shared_memory.h @@ -0,0 +1,7 @@ +/* Copyright (c) 2017, Linaro Limited + * All rights reserved. + * + * SPDX-License-Identifier: BSD-3-Clause + */ + +#include diff --git a/include/odp/arch/default/api/abi/shared_memory.h b/include/odp/arch/default/api/abi/shared_memory.h new file mode 100644 index 0000000..5805f95 --- /dev/null +++ b/include/odp/arch/default/api/abi/shared_memory.h @@ -0,0 +1,35 @@ +/* Copyright (c) 2017, Linaro Limited + * All rights reserved. + * + * SPDX-License-Identifier: BSD-3-Clause + */ + +#ifndef ODP_ABI_SHM_H_ +#define ODP_ABI_SHM_H_ + +#ifdef __cplusplus +extern "C" { +#endif + +/** @internal Dummy type for strong typing */ +typedef struct { char dummy; /**< @internal Dummy */ } _odp_abi_shm_t; + +/** @ingroup odp_shared_memory + * @{ + */ + +typedef _odp_abi_shm_t *odp_shm_t; + +#define ODP_SHM_INVALID ((odp_shm_t)0) +#define ODP_SHM_NULL ODP_SHM_INVALID +#define ODP_SHM_NAME_LEN 32 + +/** + * @} + */ + +#ifdef __cplusplus +} +#endif + +#endif diff --git a/include/odp/arch/mips64-linux/odp/api/abi/shared_memory.h b/include/odp/arch/mips64-linux/odp/api/abi/shared_memory.h new file mode 100644 index 0000000..d203678 --- /dev/null +++ b/include/odp/arch/mips64-linux/odp/api/abi/shared_memory.h @@ -0,0 +1,7 @@ +/* Copyright (c) 2017, Linaro Limited + * All rights reserved. + * + * SPDX-License-Identifier: BSD-3-Clause + */ + +#include diff --git a/include/odp/arch/power64-linux/odp/api/abi/shared_memory.h b/include/odp/arch/power64-linux/odp/api/abi/shared_memory.h new file mode 100644 index 0000000..d203678 --- /dev/null +++ b/include/odp/arch/power64-linux/odp/api/abi/shared_memory.h @@ -0,0 +1,7 @@ +/* Copyright (c) 2017, Linaro Limited + * All rights reserved. + * + * SPDX-License-Identifier: BSD-3-Clause + */ + +#include diff --git a/include/odp/arch/x86_32-linux/odp/api/abi/shared_memory.h b/include/odp/arch/x86_32-linux/odp/api/abi/shared_memory.h new file mode 100644 index 0000000..d203678 --- /dev/null +++ b/include/odp/arch/x86_32-linux/odp/api/abi/shared_memory.h @@ -0,0 +1,7 @@ +/* Copyright (c) 2017, Linaro Limited + * All rights reserved. + * + * SPDX-License-Identifier: BSD-3-Clause + */ + +#include diff --git a/include/odp/arch/x86_64-linux/odp/api/abi/shared_memory.h b/include/odp/arch/x86_64-linux/odp/api/abi/shared_memory.h new file mode 100644 index 0000000..d203678 --- /dev/null +++ b/include/odp/arch/x86_64-linux/odp/api/abi/shared_memory.h @@ -0,0 +1,7 @@ +/* Copyright (c) 2017, Linaro Limited + * All rights reserved. + * + * SPDX-License-Identifier: BSD-3-Clause + */ + +#include diff --git a/platform/Makefile.inc b/platform/Makefile.inc index 3201d33..7059d91 100644 --- a/platform/Makefile.inc +++ b/platform/Makefile.inc @@ -68,7 +68,8 @@ odpapiabidefaultinclude_HEADERS = \ $(top_srcdir)/include/odp/arch/default/api/abi/event.h \ $(top_srcdir)/include/odp/arch/default/api/abi/packet.h \ $(top_srcdir)/include/odp/arch/default/api/abi/pool.h \ - $(top_srcdir)/include/odp/arch/default/api/abi/queue.h + $(top_srcdir)/include/odp/arch/default/api/abi/queue.h \ + $(top_srcdir)/include/odp/arch/default/api/abi/shared_memory.h odpapiabiarchincludedir= $(includedir)/odp/arch/@ARCH_ABI@/odp/api/abi odpapiabiarchinclude_HEADERS = \ @@ -78,7 +79,8 @@ odpapiabiarchinclude_HEADERS = \ $(top_srcdir)/include/odp/arch/@ARCH_ABI@/odp/api/abi/event.h \ $(top_srcdir)/include/odp/arch/@ARCH_ABI@/odp/api/abi/packet.h \ $(top_srcdir)/include/odp/arch/@ARCH_ABI@/odp/api/abi/pool.h \ - $(top_srcdir)/include/odp/arch/@ARCH_ABI@/odp/api/abi/queue.h + $(top_srcdir)/include/odp/arch/@ARCH_ABI@/odp/api/abi/queue.h \ + $(top_srcdir)/include/odp/arch/@ARCH_ABI@/odp/api/abi/shared_memory.h EXTRA_DIST = \ arch/arm/odp/api/cpu_arch.h \ diff --git a/platform/linux-generic/include/odp/api/plat/shared_memory_types.h b/platform/linux-generic/include/odp/api/plat/shared_memory_types.h index afa0bf9..2c5b4ed 100644 --- a/platform/linux-generic/include/odp/api/plat/shared_memory_types.h +++ b/platform/linux-generic/include/odp/api/plat/shared_memory_types.h @@ -18,11 +18,15 @@ extern "C" { #endif +#include +#if ODP_ABI_COMPAT == 1 +#include +#else + #include #include -/** @addtogroup odp_shared_memory ODP SHARED MEMORY - * Operations on shared memory. +/** @ingroup odp_shared_memory * @{ */ @@ -33,16 +37,12 @@ typedef ODP_HANDLE_T(odp_shm_t); #define ODP_SHM_NAME_LEN 32 -/** Get printable format of odp_shm_t */ -static inline uint64_t odp_shm_to_u64(odp_shm_t hdl) -{ - return _odp_pri(hdl); -} - /** * @} */ +#endif + #ifdef __cplusplus } #endif diff --git a/platform/linux-generic/include/odp_pool_internal.h b/platform/linux-generic/include/odp_pool_internal.h index b0805ac..ebb779d 100644 --- a/platform/linux-generic/include/odp_pool_internal.h +++ b/platform/linux-generic/include/odp_pool_internal.h @@ -24,6 +24,7 @@ extern "C" { #include #include #include +#include typedef struct pool_cache_t { uint32_t num; diff --git a/platform/linux-generic/odp_shared_memory.c b/platform/linux-generic/odp_shared_memory.c index ba32dee..a6faff6 100644 --- a/platform/linux-generic/odp_shared_memory.c +++ b/platform/linux-generic/odp_shared_memory.c @@ -8,6 +8,7 @@ #include #include #include +#include #include <_ishm_internal.h> #include @@ -112,3 +113,8 @@ void odp_shm_print_all(void) { _odp_ishm_status("Memory allocation status:"); } + +uint64_t odp_shm_to_u64(odp_shm_t hdl) +{ + return _odp_pri(hdl); +}