[dpdk-stable] [19.11] [PATCH 1/1] config: add Graviton2(arm64) defconfig

Honnappa Nagarahalli Honnappa.Nagarahalli at arm.com
Wed Oct 7 05:02:40 CEST 2020


<snip>

> 
> Add make configuration for Graviton2 platform with 64-bit ARM Neoverse N1
nit                                                                                                         ^^^^ Arm

> cores.
> 
> Sample build steps:
> make config T=arm64-graviton2-linux-gcc O=arm64-build make -C arm64-
> build OR make config T=graviton2 O=arm64-build make -C arm64-build
> 
> For more information about Graviton2 platform, refer to:
> https://aws.amazon.com/ec2/graviton/
> 
> Signed-off-by: Vimal Chungath <vcchunga at amazon.com>
> ---
>  config/defconfig_arm64-graviton2-linux-gcc    |  1 +
>  config/defconfig_arm64-graviton2-linuxapp-gcc | 13 +++++++++++
>  config/defconfig_graviton2                    |  1 +
>  mk/machine/graviton2/rte.vars.mk              | 33
> +++++++++++++++++++++++++++
>  4 files changed, 48 insertions(+)
>  create mode 120000 config/defconfig_arm64-graviton2-linux-gcc
>  create mode 100644 config/defconfig_arm64-graviton2-linuxapp-gcc
>  create mode 120000 config/defconfig_graviton2  create mode 100644
> mk/machine/graviton2/rte.vars.mk
> 
> diff --git a/config/defconfig_arm64-graviton2-linux-gcc
> b/config/defconfig_arm64-graviton2-linux-gcc
> new file mode 120000
> index 000000000..80ac94d54
> --- /dev/null
> +++ b/config/defconfig_arm64-graviton2-linux-gcc
> @@ -0,0 +1 @@
> +defconfig_arm64-graviton2-linuxapp-gcc
> \ No newline at end of file
> diff --git a/config/defconfig_arm64-graviton2-linuxapp-gcc
> b/config/defconfig_arm64-graviton2-linuxapp-gcc
> new file mode 100644
> index 000000000..e99fef307
> --- /dev/null
> +++ b/config/defconfig_arm64-graviton2-linuxapp-gcc
> @@ -0,0 +1,13 @@
> +# SPDX-License-Identifier: BSD-3-Clause # Copyright(c) Amazon.com, Inc
> +or its affiliates #
> +
> +#include "defconfig_arm64-armv8a-linux-gcc"
> +
> +CONFIG_RTE_MACHINE="graviton2"
> +CONFIG_RTE_MAX_LCORE=64
> +CONFIG_RTE_CACHE_LINE_SIZE=64
> +CONFIG_RTE_MAX_MEM_MB=1048576
> +CONFIG_RTE_MAX_NUMA_NODES=1
> +CONFIG_RTE_EAL_NUMA_AWARE_HUGEPAGES=n
> +CONFIG_RTE_LIBRTE_VHOST_NUMA=n
> diff --git a/config/defconfig_graviton2 b/config/defconfig_graviton2 new file
> mode 120000 index 000000000..80ac94d54
> --- /dev/null
> +++ b/config/defconfig_graviton2
> @@ -0,0 +1 @@
> +defconfig_arm64-graviton2-linuxapp-gcc
> \ No newline at end of file
> diff --git a/mk/machine/graviton2/rte.vars.mk
> b/mk/machine/graviton2/rte.vars.mk
> new file mode 100644
> index 000000000..acb027968
> --- /dev/null
> +++ b/mk/machine/graviton2/rte.vars.mk
> @@ -0,0 +1,33 @@
> +# SPDX-License-Identifier: BSD-3-Clause # Copyright(c) Amazon.com, Inc
> +or its affiliates #
> +
> +#
> +# 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 =
> +
> +include $(RTE_SDK)/mk/rte.helper.mk
> +
> +MACHINE_CFLAGS += $(call rte_cc_has_argument, -march=armv8.2-
> a+crypto)
MACHINE_CFLAGS += $(call rte_cc_has_argument, -mcpu=neoverse-n1) is needed for possible N1 micro-architecture optimizations.

> --
> 2.16.6



More information about the stable mailing list