DPDK patches and discussions
 help / color / mirror / Atom feed
From: Jerry Hao OS <jerryhao@os.amperecomputing.com>
To: "thomas@monjalon.net" <thomas@monjalon.net>
Cc: "dev@dpdk.org" <dev@dpdk.org>,
	Jerry Hao OS <jerryhao@os.amperecomputing.com>
Subject: [dpdk-dev] [PATCH 1/1] build: add emag(arm64) platform and default config
Date: Thu, 12 Sep 2019 08:52:39 +0000	[thread overview]
Message-ID: <20190912085119.27171-2-jerryhao@os.amperecomputing.com> (raw)
In-Reply-To: <20190912085119.27171-1-jerryhao@os.amperecomputing.com>

This patch is to add the emag default CACHE_LINE_SIZE
settings and ARCH variable definitions;
Added the meson build config.

Signed-off-by: Jerry Hao OS <jerryhao@os.amperecomputing.com>
---
 config/arm/arm64_emag_linux_gcc          | 15 ++++++++++++
 config/arm/meson.build                   | 11 ++++++++-
 config/defconfig_arm64-emag-linux-gcc    |  1 +
 config/defconfig_arm64-emag-linuxapp-gcc | 11 +++++++++
 mk/machine/emag/rte.vars.mk              | 31 ++++++++++++++++++++++++
 5 files changed, 68 insertions(+), 1 deletion(-)
 create mode 100644 config/arm/arm64_emag_linux_gcc
 create mode 120000 config/defconfig_arm64-emag-linux-gcc
 create mode 100644 config/defconfig_arm64-emag-linuxapp-gcc
 create mode 100644 mk/machine/emag/rte.vars.mk

diff --git a/config/arm/arm64_emag_linux_gcc b/config/arm/arm64_emag_linux_gcc
new file mode 100644
index 000000000..bcb147a5a
--- /dev/null
+++ b/config/arm/arm64_emag_linux_gcc
@@ -0,0 +1,15 @@
+[binaries]
+c = 'aarch64-linux-gnu-gcc'
+cpp = 'aarch64-linux-gnu-cpp'
+ar = 'aarch64-linux-gnu-gcc-ar'
+strip = 'aarch64-linux-gnu-strip'
+pcap-config = ''
+
+[host_machine]
+system = 'linux'
+cpu_family = 'aarch64'
+cpu = 'armv8-a'
+endian = 'little'
+
+[properties]
+implementor_id = '0x50'
diff --git a/config/arm/meson.build b/config/arm/meson.build
index 979018e16..6c1b85186 100644
--- a/config/arm/meson.build
+++ b/config/arm/meson.build
@@ -61,6 +61,11 @@ flags_armada = [
 	['RTE_CACHE_LINE_SIZE', 64],
 	['RTE_MAX_NUMA_NODES', 1],
 	['RTE_MAX_LCORE', 16]]
+flags_emag = [
+	['RTE_MACHINE', '"emag"'],
+	['RTE_CACHE_LINE_SIZE', 64],
+	['RTE_MAX_NUMA_NODES', 1],
+	['RTE_MAX_LCORE', 32]]
 
 flags_default_extra = []
 flags_thunderx_extra = [
@@ -98,6 +103,10 @@ machine_args_cavium = [
 	['0xaf', ['-march=armv8.1-a+crc+crypto','-mcpu=thunderx2t99'], flags_thunderx2_extra],
 	['0xb2', ['-mcpu=octeontx2'], flags_octeontx2_extra]]
 
+machine_args_emag = [
+	['default', ['-march=armv8-a+crc+crypto']],
+	['native', ['-march=native']]]
+
 ## Arm implementer ID (ARM DDI 0487C.a, Section G7.2.106, Page G7-5321)
 impl_generic = ['Generic armv8', flags_generic, machine_args_generic]
 impl_0x41 = ['Arm', flags_arm, machine_args_generic]
@@ -107,7 +116,7 @@ impl_0x44 = ['DEC', flags_generic, machine_args_generic]
 impl_0x49 = ['Infineon', flags_generic, machine_args_generic]
 impl_0x4d = ['Motorola', flags_generic, machine_args_generic]
 impl_0x4e = ['NVIDIA', flags_generic, machine_args_generic]
-impl_0x50 = ['AppliedMicro', flags_generic, machine_args_generic]
+impl_0x50 = ['Ampere Computing', flags_emag, machine_args_emag]
 impl_0x51 = ['Qualcomm', flags_generic, machine_args_generic]
 impl_0x53 = ['Samsung', flags_generic, machine_args_generic]
 impl_0x56 = ['Marvell ARMADA', flags_armada, machine_args_generic]
diff --git a/config/defconfig_arm64-emag-linux-gcc b/config/defconfig_arm64-emag-linux-gcc
new file mode 120000
index 000000000..21894a31a
--- /dev/null
+++ b/config/defconfig_arm64-emag-linux-gcc
@@ -0,0 +1 @@
+defconfig_arm64-emag-linuxapp-gcc
\ No newline at end of file
diff --git a/config/defconfig_arm64-emag-linuxapp-gcc b/config/defconfig_arm64-emag-linuxapp-gcc
new file mode 100644
index 000000000..1db654c89
--- /dev/null
+++ b/config/defconfig_arm64-emag-linuxapp-gcc
@@ -0,0 +1,11 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2019 Ampere Computing
+#
+
+#include "defconfig_arm64-armv8a-linux-gcc"
+
+CONFIG_RTE_MACHINE="emag"
+
+CONFIG_RTE_CACHE_LINE_SIZE=64
+CONFIG_RTE_MAX_NUMA_NODES=1
+CONFIG_RTE_MAX_LCORE=32
diff --git a/mk/machine/emag/rte.vars.mk b/mk/machine/emag/rte.vars.mk
new file mode 100644
index 000000000..9ce8b6bc9
--- /dev/null
+++ b/mk/machine/emag/rte.vars.mk
@@ -0,0 +1,31 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright(c) 2019 Ampere Computing
+#
+
+#
+# machine:
+#
+#   - can define ARCH variable (overridden by cmdline value)
+#   - can define CROSS variable (overridden by cmdline value)
+#   - define MACHINE_CFLAGS variable (overridden by cmdline value)
+#   - define MACHINE_LDFLAGS variable (overridden by cmdline value)
+#   - define MACHINE_ASFLAGS variable (overridden by cmdline value)
+#   - can define CPU_CFLAGS variable (overridden by cmdline value) that
+#     overrides the one defined in arch.
+#   - can define CPU_LDFLAGS variable (overridden by cmdline value) that
+#     overrides the one defined in arch.
+#   - can define CPU_ASFLAGS variable (overridden by cmdline value) that
+#     overrides the one defined in arch.
+#   - may override any previously defined variable
+#
+
+# ARCH =
+# CROSS =
+# MACHINE_CFLAGS =
+# MACHINE_LDFLAGS =
+# MACHINE_ASFLAGS =
+# CPU_CFLAGS =
+# CPU_LDFLAGS =
+# CPU_ASFLAGS =
+
+MACHINE_CFLAGS += -march=armv8-a+crc+crypto
-- 
2.17.1


  reply	other threads:[~2019-09-12  8:52 UTC|newest]

Thread overview: 13+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-09-12  8:52 [dpdk-dev] [PATCH 0/1] " Jerry Hao OS
2019-09-12  8:52 ` Jerry Hao OS [this message]
2019-09-12  9:31   ` [dpdk-dev] [PATCH 1/1] " Gavin Hu (Arm Technology China)
2019-09-12 16:25     ` Jerin Jacob
2019-09-16  3:43   ` [dpdk-dev] [PATCH v2] " Jerry Hao OS
2019-10-09  2:44     ` [dpdk-dev] [PATCH v3] " Gavin Hu
2019-10-11 11:45       ` Jerin Jacob
2019-10-14  9:34       ` [dpdk-dev] [PATCH v4] build: add emag target Gavin Hu
2019-11-20 23:22         ` Thomas Monjalon
  -- strict thread matches above, loose matches on Subject: below --
2019-09-12  4:51 [dpdk-dev] [PATCH 0/1] build: add emag(arm64) platform and default config Jerry Hao OS
2019-09-12  4:51 ` [dpdk-dev] [PATCH 1/1] " Jerry Hao OS
2019-09-12  5:45   ` Jerin Jacob Kollanukkaran
2019-09-12  2:44 [dpdk-dev] [PATCH 0/1] " Jerry Hao OS
2019-09-12  2:44 ` [dpdk-dev] [PATCH 1/1] " Jerry Hao OS
2019-09-12  2:30 [dpdk-dev] [PATCH 0/1] " Jerry Hao OS
2019-09-12  2:30 ` [dpdk-dev] [PATCH 1/1] build: " Jerry Hao OS

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20190912085119.27171-2-jerryhao@os.amperecomputing.com \
    --to=jerryhao@os.amperecomputing.com \
    --cc=dev@dpdk.org \
    --cc=thomas@monjalon.net \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).