numam-dpdk/app
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
..
dumpcap app/dumpcap: allow help/version without primary process 2022-03-08 09:32:59 +01:00
pdump app/pdump: free mempool at resources cleanup 2022-03-08 00:19:31 +01:00
proc-info dev: introduce device accessors 2022-09-23 16:14:34 +02:00
test eal/loongarch: support LoongArch architecture 2022-10-06 12:45:05 +02:00
test-acl app/acl: support different formats for IPv6 address 2022-05-30 23:31:37 +02:00
test-bbdev eal: remove unneeded includes from a public header 2022-09-21 15:31:03 +02:00
test-cmdline devtools: forbid indent with tabs in Meson 2021-11-02 19:25:30 +01:00
test-compress-perf bus: move IOVA definition from header 2022-09-23 16:14:34 +02:00
test-crypto-perf security: hide session structure 2022-10-04 22:37:54 +02:00
test-eventdev cryptodev: hide symmetric session structure 2022-10-04 22:29:01 +02:00
test-fib eal: remove unneeded includes from a public header 2022-09-21 15:31:03 +02:00
test-flow-perf eal: remove unneeded includes from a public header 2022-09-21 15:31:03 +02:00
test-gpudev gpudev: use CPU mapping in communication list 2022-02-22 20:08:52 +01:00
test-pipeline app: remove unneeded atomic header include 2021-11-17 11:07:06 +01:00
test-pmd remove prefix to some local macros in apps and examples 2022-10-05 21:34:40 +02:00
test-regex app/regex: fix mbuf size for multi-segment buffer 2022-07-05 22:19:03 +02:00
test-sad eal: remove unneeded includes from a public header 2022-09-21 15:31:03 +02:00
meson.build build: make pdump optional 2021-11-17 12:49:19 +01:00