From: Thomas Monjalon Date: Fri, 27 Mar 2020 01:15:34 +0000 (+0100) Subject: build: rename ppc sub-directories X-Git-Url: http://git.droids-corp.org/?a=commitdiff_plain;h=dd45ed7e742a94afa5508f0c1fad0834e18017da;p=dpdk.git build: rename ppc sub-directories The directories ppc_64 are renamed as ppc in - config/ - lib/librte_eal/common/arch/ - lib/librte_eal/common/include/arch/ The EAL directories are not really renamed, but symbolically linked, because they will be moved with their new name in the next commits. If ppc_32 needs to be supported, it can be in the same directory. The arch directories arm and x86 are already covering both 32 and 64-bit sub-architectures. Signed-off-by: Thomas Monjalon Reviewed-by: David Christensen Acked-by: David Marchand --- diff --git a/config/meson.build b/config/meson.build index abedd76f23..58421342b1 100644 --- a/config/meson.build +++ b/config/meson.build @@ -234,7 +234,7 @@ if host_machine.cpu_family().startswith('x86') elif host_machine.cpu_family().startswith('arm') or host_machine.cpu_family().startswith('aarch') arch_subdir = 'arm' elif host_machine.cpu_family().startswith('ppc') - arch_subdir = 'ppc_64' + arch_subdir = 'ppc' endif subdir(arch_subdir) dpdk_conf.set('RTE_COMPILE_TIME_CPUFLAGS', ','.join(compile_time_cpuflags)) diff --git a/config/ppc/meson.build b/config/ppc/meson.build new file mode 100644 index 0000000000..aa7d73d114 --- /dev/null +++ b/config/ppc/meson.build @@ -0,0 +1,25 @@ +# SPDX-License-Identifier: BSD-3-Clause +# Copyright(c) 2018 Luca Boccassi + +if not dpdk_conf.get('RTE_ARCH_64') + error('Only 64-bit compiles are supported for this platform type') +endif +dpdk_conf.set('RTE_ARCH', 'ppc_64') +dpdk_conf.set('RTE_ARCH_PPC_64', 1) + +# RHEL 7.x uses gcc 4.8.X which doesn't generate code for Power 9 CPUs, +# though it will detect a Power 9 CPU when the "-mcpu=native" argument +# is used, resulting in a build failure. +power9_supported = cc.has_argument('-mcpu=power9') +if not power9_supported + machine = 'power8' + machine_args = ['-mcpu=power8', '-mtune=power8'] + dpdk_conf.set('RTE_MACHINE','power8') +endif + +# overrides specific to ppc64 +dpdk_conf.set('RTE_MAX_LCORE', 1536) +dpdk_conf.set('RTE_MAX_NUMA_NODES', 32) +dpdk_conf.set('RTE_CACHE_LINE_SIZE', 128) +dpdk_conf.set('RTE_MACHINE_CPUFLAG_ALTIVEC', 1) +dpdk_conf.set('RTE_MACHINE_CPUFLAG_VSX', 1) diff --git a/config/ppc_64/meson.build b/config/ppc_64/meson.build deleted file mode 100644 index aa7d73d114..0000000000 --- a/config/ppc_64/meson.build +++ /dev/null @@ -1,25 +0,0 @@ -# SPDX-License-Identifier: BSD-3-Clause -# Copyright(c) 2018 Luca Boccassi - -if not dpdk_conf.get('RTE_ARCH_64') - error('Only 64-bit compiles are supported for this platform type') -endif -dpdk_conf.set('RTE_ARCH', 'ppc_64') -dpdk_conf.set('RTE_ARCH_PPC_64', 1) - -# RHEL 7.x uses gcc 4.8.X which doesn't generate code for Power 9 CPUs, -# though it will detect a Power 9 CPU when the "-mcpu=native" argument -# is used, resulting in a build failure. -power9_supported = cc.has_argument('-mcpu=power9') -if not power9_supported - machine = 'power8' - machine_args = ['-mcpu=power8', '-mtune=power8'] - dpdk_conf.set('RTE_MACHINE','power8') -endif - -# overrides specific to ppc64 -dpdk_conf.set('RTE_MAX_LCORE', 1536) -dpdk_conf.set('RTE_MAX_NUMA_NODES', 32) -dpdk_conf.set('RTE_CACHE_LINE_SIZE', 128) -dpdk_conf.set('RTE_MACHINE_CPUFLAG_ALTIVEC', 1) -dpdk_conf.set('RTE_MACHINE_CPUFLAG_VSX', 1) diff --git a/drivers/net/virtio/meson.build b/drivers/net/virtio/meson.build index 04c7fdf25d..5e7ca855c8 100644 --- a/drivers/net/virtio/meson.build +++ b/drivers/net/virtio/meson.build @@ -11,7 +11,7 @@ deps += ['kvargs', 'bus_pci'] if arch_subdir == 'x86' sources += files('virtio_rxtx_simple_sse.c') -elif arch_subdir == 'ppc_64' +elif arch_subdir == 'ppc' sources += files('virtio_rxtx_simple_altivec.c') elif arch_subdir == 'arm' and host_machine.cpu_family().startswith('aarch64') sources += files('virtio_rxtx_simple_neon.c') diff --git a/lib/librte_eal/common/arch/ppc b/lib/librte_eal/common/arch/ppc new file mode 120000 index 0000000000..2db6a0c918 --- /dev/null +++ b/lib/librte_eal/common/arch/ppc @@ -0,0 +1 @@ +ppc_64 \ No newline at end of file diff --git a/lib/librte_eal/common/include/arch/ppc b/lib/librte_eal/common/include/arch/ppc new file mode 120000 index 0000000000..2db6a0c918 --- /dev/null +++ b/lib/librte_eal/common/include/arch/ppc @@ -0,0 +1 @@ +ppc_64 \ No newline at end of file diff --git a/mk/arch/ppc_64/rte.vars.mk b/mk/arch/ppc_64/rte.vars.mk index 39f5728fe8..9f7ab22f42 100644 --- a/mk/arch/ppc_64/rte.vars.mk +++ b/mk/arch/ppc_64/rte.vars.mk @@ -2,6 +2,7 @@ # Copyright (C) IBM Corporation 2014. ARCH ?= powerpc +ARCH_DIR := ppc CROSS ?= CPU_CFLAGS ?= -m64