numam-dpdk/devtools
Min Zhou 29631ee5c8 eal/loongarch: support LoongArch architecture
Add all necessary elements for DPDK to compile and run EAL on
LoongArch64 Soc.

This includes:

- EAL library implementation for LoongArch ISA.
- meson build structure for 'loongarch' architecture.
  RTE_ARCH_LOONGARCH define is added for architecture identification.
- xmm_t structure operation stubs as there is no vector support in
  the current version for LoongArch.

Compilation was tested on Debian and CentOS using loongarch64
cross-compile toolchain from x86 build hosts. Functions were tested
on Loongnix and Kylin which are two Linux distributions supported
LoongArch host based on Linux 4.19 maintained by Loongson
Corporation.

We also tested DPDK on LoongArch with some external applications,
including: Pktgen-DPDK, OVS, VPP.

The platform is currently marked as linux-only because there is no
other OS than Linux support LoongArch host currently.

The i40e PMD driver is disabled on LoongArch because of the absence
of vector support in the current version.

Similar to RISC-V, the compilation of following modules has been
disabled by this commit and will be re-enabled in later commits as
fixes are introduced:
net/ixgbe, net/memif, net/tap, example/l3fwd.

Signed-off-by: Min Zhou <zhoumin@loongson.cn>
2022-10-06 12:45:05 +02:00
..
cocci eal: deprecate RTE_FUNC_PTR_* macros 2022-09-23 16:14:34 +02:00
build-dict.sh devtools: add checkpatch spelling dictionary builder 2020-07-31 01:09:26 +02:00
build-tags.sh examples/performance-thread: remove 2022-01-20 14:30:59 +01:00
check-abi-version.sh devtools: handle internal version in symbols check 2020-05-19 19:12:18 +02:00
check-abi.sh version: 22.11-rc0 2022-07-21 12:13:48 +02:00
check-doc-vs-code.sh devtools: check flow API doc tables 2021-05-18 19:06:56 +02:00
check-dup-includes.sh devtools: support FreeBSD 2019-07-31 00:22:33 +02:00
check-forbidden-tokens.awk devtools: fix comment detection in forbidden token check 2022-01-27 17:17:41 +01:00
check-git-log.sh devtools: check prefix for libraries patches 2021-11-26 11:11:42 +01:00
check-maintainers.sh devtools: fix file listing in maintainers check 2021-06-23 11:18:54 +02:00
check-meson.py devtools: forbid indent with tabs in Meson 2021-11-02 19:25:30 +01:00
check-spdx-tag.sh devtools: ignore JSON files for SPDX check 2021-05-19 11:01:19 +02:00
check-symbol-change.sh fix spelling in comments and strings 2022-01-11 12:16:53 +01:00
check-symbol-maps.sh devtools: fix symbols check 2022-03-08 22:19:18 +01:00
checkpatches.sh devtools: forbid inclusions of driver only headers 2022-09-23 16:14:33 +02:00
cocci.sh fix Mellanox copyright and SPDX tag 2020-02-13 18:47:28 +01:00
gen-abi.sh devtools: adjust verbosity of ABI check 2021-01-13 00:04:33 +01:00
get-maintainer.sh devtools: remove ugly workaround from get maintainer 2022-01-13 12:32:44 +01:00
git-log-fixes.sh build: remove makefiles 2020-09-08 00:09:50 +02:00
libabigail.abignore version: 22.11-rc0 2022-07-21 12:13:48 +02:00
load-devel-config devtools: add SPDX license tag to config loader 2020-02-22 15:17:03 +01:00
parse-flow-support.sh net/bnxt: support tunnel offload 2021-09-21 06:26:00 +02:00
process-iwyu.py devtools: add IWYU script to remove unused includes 2022-02-22 13:10:39 +01:00
test-meson-builds.sh eal/loongarch: support LoongArch architecture 2022-10-06 12:45:05 +02:00
test-null.sh devtools: fix null test for NUMA systems 2022-06-01 12:49:46 +02:00
update_version_map_abi.py build: remove Windows export symbol list 2021-04-08 17:57:33 +02:00
update-abi.sh build: replace use of old build macros 2020-10-19 22:15:44 +02:00
update-patches.py devtools: add script to ease backport of renamed files 2021-04-21 14:17:29 +02:00
words-case.txt devtools: add Atomic Rules acronyms for commit checks 2022-06-08 10:38:39 +02:00