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