Cover Detail
Show a cover letter.
GET /api/covers/114077/?format=api
http://patches.dpdk.org/api/covers/114077/?format=api", "web_url": "http://patches.dpdk.org/project/dpdk/cover/20220721125144.4028113-1-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": "<20220721125144.4028113-1-zhoumin@loongson.cn>", "list_archive_url": "https://inbox.dpdk.org/dev/20220721125144.4028113-1-zhoumin@loongson.cn", "date": "2022-07-21T12:51:20", "name": "[v4,00/24] Support LoongArch architecture", "submitter": { "id": 2394, "url": "http://patches.dpdk.org/api/people/2394/?format=api", "name": "zhoumin", "email": "zhoumin@loongson.cn" }, "mbox": "http://patches.dpdk.org/project/dpdk/cover/20220721125144.4028113-1-zhoumin@loongson.cn/mbox/", "series": [ { "id": 24044, "url": "http://patches.dpdk.org/api/series/24044/?format=api", "web_url": "http://patches.dpdk.org/project/dpdk/list/?series=24044", "date": "2022-07-21T12:51:22", "name": "Support LoongArch architecture", "version": 4, "mbox": "http://patches.dpdk.org/series/24044/mbox/" } ], "comments": "http://patches.dpdk.org/api/covers/114077/comments/", "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 200BBA0032;\n\tThu, 21 Jul 2022 14:52:04 +0200 (CEST)", "from [217.70.189.124] (localhost [127.0.0.1])\n\tby mails.dpdk.org (Postfix) with ESMTP id 19A704282B;\n\tThu, 21 Jul 2022 14:51:59 +0200 (CEST)", "from loongson.cn (mail.loongson.cn [114.242.206.163])\n by mails.dpdk.org (Postfix) with ESMTP id 5397D40A7A\n for <dev@dpdk.org>; Thu, 21 Jul 2022 14:51:55 +0200 (CEST)", "from localhost.localdomain (unknown [10.2.5.185])\n by mail.loongson.cn (Coremail) with SMTP id AQAAf9DxH9LhS9liUZgsAA--.700S2;\n Thu, 21 Jul 2022 20:51:52 +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": "[PATCH v4 00/24] Support LoongArch architecture", "Date": "Thu, 21 Jul 2022 20:51:20 +0800", "Message-Id": "<20220721125144.4028113-1-zhoumin@loongson.cn>", "X-Mailer": "git-send-email 2.31.1", "MIME-Version": "1.0", "Content-Transfer-Encoding": "8bit", "X-CM-TRANSID": "AQAAf9DxH9LhS9liUZgsAA--.700S2", "X-Coremail-Antispam": "1UD129KBjvJXoW3Xw4DXryUAFWfKF1DXw4xZwb_yoW7Zr4rpF\n WDCFn7Ja1xCrZ7ZF9rXayYgF95X3WxG3429FWagw18Cry2qw4DZrn7Kr9rZFyxA3yUtry0\n gr1fuw1UW3WUGw7anT9S1TB71UUUUUUqnTZGkaVYY2UrUUUUjbIjqfuFe4nvWSU5nxnvy2\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": "Dear team,\nThe following patch set is intended to support DPDK running on LoongArch\narchitecture.\n\nLoongArch is the general processor architecture of Loongson and is a new\nRISC ISA, which is a bit like MIPS or RISC-V.\n\nThe online documents of LoongArch are here:\n https://loongson.github.io/LoongArch-Documentation/README-EN.html\n\nThe latest cross compile tool chain can be downloaded from:\n https://github.com/loongson/build-tools\n\nv4:\n - rebase the patchset on the main repository of version 22.07.0\n\nv3:\n - add URL for cross compile tool chain\n - remove rte_lpm_lsx.h which was a dummy vector implementation\n because there is already a scalar implementation, thanks to\n Michal Mazurek\n - modify the name of compiler for cross compiling\n - remove useless variable in meson.build\n\nv2:\n - use standard atomics of toolchain to implement\n atomic operations\n - implement spinlock based on standard atomics\n\nMin Zhou (24):\n eal/loongarch: add atomic operations for LoongArch\n eal/loongarch: add byte order operations for LoongArch\n eal/loongarch: add cpu cycle operations for LoongArch\n eal/loongarch: add prefetch operations for LoongArch\n eal/loongarch: add spinlock operations for LoongArch\n eal/loongarch: add cpu flag checks for LoongArch\n eal/loongarch: add dummy vector memcpy for LoongArch\n eal/loongarch: add io operations for LoongArch\n eal/loongarch: add mcslock operations for LoongArch\n eal/loongarch: add pause operations for LoongArch\n eal/loongarch: add pflock operations for LoongArch\n eal/loongarch: add rwlock operations for LoongArch\n eal/loongarch: add ticketlock operations for LoongArch\n eal/loongarch: add power operations for LoongArch\n eal/loongarch: add hypervisor operations for LoongArch\n mem: add huge page size definition for LoongArch\n eal/linux: set eal base address for LoongArch\n meson: introduce LoongArch architecture\n test/xmmt_ops: add dummy vector implementation for LoongArch\n ixgbe: add dummy vector implementation for LoongArch\n i40e: add dummy vector implementation for LoongArch\n tap: add system call number for LoongArch\n memif: add system call number for LoongArch\n maintainers: claim responsibility for LoongArch\n\n MAINTAINERS | 9 +\n app/test/test_xmmt_ops.h | 17 ++\n .../loongarch/loongarch_loongarch64_linux_gcc | 16 ++\n config/loongarch/meson.build | 43 +++\n drivers/net/i40e/i40e_rxtx_vec_lsx.c | 54 ++++\n drivers/net/i40e/meson.build | 2 +\n drivers/net/ixgbe/ixgbe_rxtx_vec_lsx.c | 60 +++++\n drivers/net/ixgbe/meson.build | 2 +\n drivers/net/memif/rte_eth_memif.h | 2 +-\n drivers/net/tap/tap_bpf.h | 2 +-\n lib/eal/include/rte_memory.h | 1 +\n lib/eal/include/rte_memzone.h | 1 +\n lib/eal/linux/eal_memory.c | 4 +\n lib/eal/loongarch/include/meson.build | 21 ++\n lib/eal/loongarch/include/rte_atomic.h | 253 ++++++++++++++++++\n lib/eal/loongarch/include/rte_byteorder.h | 46 ++++\n lib/eal/loongarch/include/rte_cpuflags.h | 39 +++\n lib/eal/loongarch/include/rte_cycles.h | 53 ++++\n lib/eal/loongarch/include/rte_io.h | 18 ++\n lib/eal/loongarch/include/rte_mcslock.h | 18 ++\n lib/eal/loongarch/include/rte_memcpy.h | 193 +++++++++++++\n lib/eal/loongarch/include/rte_pause.h | 24 ++\n lib/eal/loongarch/include/rte_pflock.h | 17 ++\n .../loongarch/include/rte_power_intrinsics.h | 20 ++\n lib/eal/loongarch/include/rte_prefetch.h | 47 ++++\n lib/eal/loongarch/include/rte_rwlock.h | 42 +++\n lib/eal/loongarch/include/rte_spinlock.h | 90 +++++++\n lib/eal/loongarch/include/rte_ticketlock.h | 18 ++\n lib/eal/loongarch/include/rte_vect.h | 46 ++++\n lib/eal/loongarch/meson.build | 11 +\n lib/eal/loongarch/rte_cpuflags.c | 94 +++++++\n lib/eal/loongarch/rte_cycles.c | 45 ++++\n lib/eal/loongarch/rte_hypervisor.c | 11 +\n lib/eal/loongarch/rte_power_intrinsics.c | 51 ++++\n meson.build | 2 +\n 35 files changed, 1370 insertions(+), 2 deletions(-)\n create mode 100644 config/loongarch/loongarch_loongarch64_linux_gcc\n create mode 100644 config/loongarch/meson.build\n create mode 100644 drivers/net/i40e/i40e_rxtx_vec_lsx.c\n create mode 100644 drivers/net/ixgbe/ixgbe_rxtx_vec_lsx.c\n create mode 100644 lib/eal/loongarch/include/meson.build\n create mode 100644 lib/eal/loongarch/include/rte_atomic.h\n create mode 100644 lib/eal/loongarch/include/rte_byteorder.h\n create mode 100644 lib/eal/loongarch/include/rte_cpuflags.h\n create mode 100644 lib/eal/loongarch/include/rte_cycles.h\n create mode 100644 lib/eal/loongarch/include/rte_io.h\n create mode 100644 lib/eal/loongarch/include/rte_mcslock.h\n create mode 100644 lib/eal/loongarch/include/rte_memcpy.h\n create mode 100644 lib/eal/loongarch/include/rte_pause.h\n create mode 100644 lib/eal/loongarch/include/rte_pflock.h\n create mode 100644 lib/eal/loongarch/include/rte_power_intrinsics.h\n create mode 100644 lib/eal/loongarch/include/rte_prefetch.h\n create mode 100644 lib/eal/loongarch/include/rte_rwlock.h\n create mode 100644 lib/eal/loongarch/include/rte_spinlock.h\n create mode 100644 lib/eal/loongarch/include/rte_ticketlock.h\n create mode 100644 lib/eal/loongarch/include/rte_vect.h\n create mode 100644 lib/eal/loongarch/meson.build\n create mode 100644 lib/eal/loongarch/rte_cpuflags.c\n create mode 100644 lib/eal/loongarch/rte_cycles.c\n create mode 100644 lib/eal/loongarch/rte_hypervisor.c\n create mode 100644 lib/eal/loongarch/rte_power_intrinsics.c" }{ "id": 114077, "url": "