Patch Detail
get:
Show a patch.
patch:
Update a patch.
put:
Update a patch.
GET /api/patches/112408/?format=api
http://patches.dpdk.org/api/patches/112408/?format=api", "web_url": "http://patches.dpdk.org/project/dpdk/patch/20220606131054.2097526-19-zhoumin@loongson.cn/", "project": { "id": 1, "url": "http://patches.dpdk.org/api/projects/1/?format=api", "name": "DPDK", "link_name": "dpdk", "list_id": "dev.dpdk.org", "list_email": "dev@dpdk.org", "web_url": "http://core.dpdk.org", "scm_url": "git://dpdk.org/dpdk", "webscm_url": "http://git.dpdk.org/dpdk", "list_archive_url": "https://inbox.dpdk.org/dev", "list_archive_url_format": "https://inbox.dpdk.org/dev/{}", "commit_url_format": "" }, "msgid": "<20220606131054.2097526-19-zhoumin@loongson.cn>", "list_archive_url": "https://inbox.dpdk.org/dev/20220606131054.2097526-19-zhoumin@loongson.cn", "date": "2022-06-06T13:10:48", "name": "[v3,18/24] meson: introduce LoongArch architecture", "commit_ref": null, "pull_url": null, "state": "superseded", "archived": true, "hash": "0f66df88433f88764d9bb31720b31de63b2ade5f", "submitter": { "id": 2394, "url": "http://patches.dpdk.org/api/people/2394/?format=api", "name": "zhoumin", "email": "zhoumin@loongson.cn" }, "delegate": { "id": 24651, "url": "http://patches.dpdk.org/api/users/24651/?format=api", "username": "dmarchand", "first_name": "David", "last_name": "Marchand", "email": "david.marchand@redhat.com" }, "mbox": "http://patches.dpdk.org/project/dpdk/patch/20220606131054.2097526-19-zhoumin@loongson.cn/mbox/", "series": [ { "id": 23356, "url": "http://patches.dpdk.org/api/series/23356/?format=api", "web_url": "http://patches.dpdk.org/project/dpdk/list/?series=23356", "date": "2022-06-06T13:10:37", "name": "Support LoongArch architecture", "version": 3, "mbox": "http://patches.dpdk.org/series/23356/mbox/" } ], "comments": "http://patches.dpdk.org/api/patches/112408/comments/", "check": "success", "checks": "http://patches.dpdk.org/api/patches/112408/checks/", "tags": {}, "related": [], "headers": { "Return-Path": "<dev-bounces@dpdk.org>", "X-Original-To": "patchwork@inbox.dpdk.org", "Delivered-To": "patchwork@inbox.dpdk.org", "Received": [ "from mails.dpdk.org (mails.dpdk.org [217.70.189.124])\n\tby inbox.dpdk.org (Postfix) with ESMTP id 40661A0542;\n\tMon, 6 Jun 2022 15:18:40 +0200 (CEST)", "from [217.70.189.124] (localhost [127.0.0.1])\n\tby mails.dpdk.org (Postfix) with ESMTP id E068842B6E;\n\tMon, 6 Jun 2022 15:18:17 +0200 (CEST)", "from loongson.cn (mail.loongson.cn [114.242.206.163])\n by mails.dpdk.org (Postfix) with ESMTP id B8DC940150\n for <dev@dpdk.org>; Mon, 6 Jun 2022 15:18:11 +0200 (CEST)", "from localhost.localdomain (unknown [10.2.5.185])\n by mail.loongson.cn (Coremail) with SMTP id\n AQAAf9BxieTe_J1imxwXAA--.64917S20;\n Mon, 06 Jun 2022 21:11:03 +0800 (CST)" ], "From": "Min Zhou <zhoumin@loongson.cn>", "To": "thomas@monjalon.net, david.marchand@redhat.com,\n bruce.richardson@intel.com,\n anatoly.burakov@intel.com, qiming.yang@intel.com, Yuying.Zhang@intel.com,\n jgrajcia@cisco.com, konstantin.v.ananyev@yandex.ru", "Cc": "dev@dpdk.org,\n\tmaobibo@loongson.cn", "Subject": "[v3 18/24] meson: introduce LoongArch architecture", "Date": "Mon, 6 Jun 2022 21:10:48 +0800", "Message-Id": "<20220606131054.2097526-19-zhoumin@loongson.cn>", "X-Mailer": "git-send-email 2.31.1", "In-Reply-To": "<20220606131054.2097526-1-zhoumin@loongson.cn>", "References": "<20220606131054.2097526-1-zhoumin@loongson.cn>", "MIME-Version": "1.0", "Content-Transfer-Encoding": "8bit", "X-CM-TRANSID": "AQAAf9BxieTe_J1imxwXAA--.64917S20", "X-Coremail-Antispam": "1UD129KBjvJXoWxAF45WrWfJr13urWUtr4DCFg_yoWrZrW8pF\n ZrZFnYgr4xWr1ftrsxJ34UWw4rJwn7Ca47WayfKrySkFsrKryDZ34kK3s8Xa47Aw18trWF\n qrn3WayYgF4UJ3DanT9S1TB71UUUUUUqnTZGkaVYY2UrUUUUjbIjqfuFe4nvWSU5nxnvy2\n 9KBjDU0xBIdaVrnUUvcSsGvfC2KfnxnUUI43ZEXa7xR_UUUUUUUUU==", "X-CM-SenderInfo": "52kr3ztlq6z05rqj20fqof0/", "X-BeenThere": "dev@dpdk.org", "X-Mailman-Version": "2.1.29", "Precedence": "list", "List-Id": "DPDK patches and discussions <dev.dpdk.org>", "List-Unsubscribe": "<https://mails.dpdk.org/options/dev>,\n <mailto:dev-request@dpdk.org?subject=unsubscribe>", "List-Archive": "<http://mails.dpdk.org/archives/dev/>", "List-Post": "<mailto:dev@dpdk.org>", "List-Help": "<mailto:dev-request@dpdk.org?subject=help>", "List-Subscribe": "<https://mails.dpdk.org/listinfo/dev>,\n <mailto:dev-request@dpdk.org?subject=subscribe>", "Errors-To": "dev-bounces@dpdk.org" }, "content": "This patch adds some meson.build files for building DPDK on\nLoongArch architecture.\n\nSigned-off-by: Min Zhou <zhoumin@loongson.cn>\n---\n .../loongarch/loongarch_loongarch64_linux_gcc | 16 +++++++\n config/loongarch/meson.build | 43 +++++++++++++++++++\n lib/eal/loongarch/include/meson.build | 21 +++++++++\n lib/eal/loongarch/meson.build | 11 +++++\n meson.build | 2 +\n 5 files changed, 93 insertions(+)\n create mode 100644 config/loongarch/loongarch_loongarch64_linux_gcc\n create mode 100644 config/loongarch/meson.build\n create mode 100644 lib/eal/loongarch/include/meson.build\n create mode 100644 lib/eal/loongarch/meson.build", "diff": "diff --git a/config/loongarch/loongarch_loongarch64_linux_gcc b/config/loongarch/loongarch_loongarch64_linux_gcc\nnew file mode 100644\nindex 0000000000..0c44ae96e6\n--- /dev/null\n+++ b/config/loongarch/loongarch_loongarch64_linux_gcc\n@@ -0,0 +1,16 @@\n+[binaries]\n+c = 'loongarch64-unknown-linux-gnu-gcc'\n+cpp = 'loongarch64-unknown-linux-gnu-cpp'\n+ar = 'loongarch64-unknown-linux-gnu-gcc-ar'\n+strip = 'loongarch64-unknown-linux-gnu-strip'\n+pcap-config = ''\n+\n+[host_machine]\n+system = 'linux'\n+cpu_family = 'loongarch64'\n+cpu = '3a5000'\n+endian = 'little'\n+\n+[properties]\n+implementor_id = 'generic'\n+implementor_pn = 'default'\ndiff --git a/config/loongarch/meson.build b/config/loongarch/meson.build\nnew file mode 100644\nindex 0000000000..d58e1ea6e9\n--- /dev/null\n+++ b/config/loongarch/meson.build\n@@ -0,0 +1,43 @@\n+# SPDX-License-Identifier: BSD-3-Clause\n+# Copyright(c) 2022 Loongson Technology Corporation Limited\n+\n+if not dpdk_conf.get('RTE_ARCH_64')\n+\terror('Only 64-bit compiles are supported for this platform type')\n+endif\n+dpdk_conf.set('RTE_ARCH', 'loongarch')\n+dpdk_conf.set('RTE_ARCH_LOONGARCH', 1)\n+dpdk_conf.set('RTE_ARCH_NO_VECTOR', 1)\n+\n+machine_args_generic = [\n+ ['default', ['-march=loongarch64']],\n+]\n+\n+flags_generic = [\n+ ['RTE_MACHINE', '\"loongarch64\"'],\n+ ['RTE_MAX_LCORE', 64],\n+ ['RTE_MAX_NUMA_NODES', 16],\n+ ['RTE_CACHE_LINE_SIZE', 64]]\n+\n+impl_generic = ['Generic loongarch', flags_generic, machine_args_generic]\n+\n+machine = []\n+machine_args = []\n+\n+machine = impl_generic\n+impl_pn = 'default'\n+\n+message('Implementer : ' + machine[0])\n+foreach flag: machine[1]\n+ if flag.length() > 0\n+dpdk_conf.set(flag[0], flag[1])\n+ endif\n+endforeach\n+\n+foreach marg: machine[2]\n+ if marg[0] == impl_pn\n+ foreach f: marg[1]\n+ machine_args += f\n+ endforeach\n+ endif\n+endforeach\n+message(machine_args)\ndiff --git a/lib/eal/loongarch/include/meson.build b/lib/eal/loongarch/include/meson.build\nnew file mode 100644\nindex 0000000000..d5699c5373\n--- /dev/null\n+++ b/lib/eal/loongarch/include/meson.build\n@@ -0,0 +1,21 @@\n+# SPDX-License-Identifier: BSD-3-Clause\n+# Copyright(c) 2022 Loongson Technology Corporation Limited\n+\n+arch_headers = files(\n+\t'rte_atomic.h',\n+\t'rte_byteorder.h',\n+\t'rte_cpuflags.h',\n+\t'rte_cycles.h',\n+\t'rte_io.h',\n+\t'rte_mcslock.h',\n+\t'rte_memcpy.h',\n+\t'rte_pause.h',\n+\t'rte_pflock.h',\n+\t'rte_power_intrinsics.h',\n+\t'rte_prefetch.h',\n+\t'rte_rwlock.h',\n+\t'rte_spinlock.h',\n+\t'rte_ticketlock.h',\n+\t'rte_vect.h',\n+)\n+install_headers(arch_headers, subdir: get_option('include_subdir_arch'))\ndiff --git a/lib/eal/loongarch/meson.build b/lib/eal/loongarch/meson.build\nnew file mode 100644\nindex 0000000000..e14b1ed431\n--- /dev/null\n+++ b/lib/eal/loongarch/meson.build\n@@ -0,0 +1,11 @@\n+# SPDX-License-Identifier: BSD-3-Clause\n+# Copyright(c) 2022 Loongson Technology Corporation Limited\n+\n+subdir('include')\n+\n+sources += files(\n+\t'rte_cpuflags.c',\n+\t'rte_cycles.c',\n+\t'rte_hypervisor.c',\n+\t'rte_power_intrinsics.c',\n+)\ndiff --git a/meson.build b/meson.build\nindex 5561171617..bfad7b28a0 100644\n--- a/meson.build\n+++ b/meson.build\n@@ -52,6 +52,8 @@ elif host_machine.cpu_family().startswith('arm') or host_machine.cpu_family().st\n arch_subdir = 'arm'\n elif host_machine.cpu_family().startswith('ppc')\n arch_subdir = 'ppc'\n+elif host_machine.cpu_family().startswith('loongarch')\n+ arch_subdir = 'loongarch'\n endif\n \n # configure the build, and make sure configs here and in config folder are\n", "prefixes": [ "v3", "18/24" ] }{ "id": 112408, "url": "