summaryrefslogtreecommitdiff
path: root/config/arm
AgeCommit message (Collapse)Author
2018-10-26config: rename option for C11 memory modelPhil Yang
Keep only single config option RTE_USE_C11_MEM_MODEL for C11 memory model, so all modules can leverage C11 atomic extension by enable this option. Signed-off-by: Phil Yang <phil.yang@arm.com> Reviewed-by: Honnappa Nagarahalli <honnappa.nagarahalli@arm.com> Reviewed-by: Gavin Hu <gavin.hu@arm.com> Acked-by: Jerin Jacob <jerin.jacob@caviumnetworks.com> Reviewed-by: Ferruh Yigit <ferruh.yigit@intel.com> Signed-off-by: Thomas Monjalon <thomas@monjalon.net>
2018-09-16build: enable ARM NEON flag when __aarch64__ definedHonnappa Nagarahalli
GCC version 4.8.5 does not pre-define __ARM_NEON. NEON is not optional for ArmV8. Hence NEON related code can be enabled when __aarch64__ is defined. Bugzilla ID: 82 Cc: stable@dpdk.org Reported-by: Raslan Darawsheh <rasland@mellanox.com> Reported-by: Thomas F Herbert <therbert@redhat.com> Signed-off-by: Honnappa Nagarahalli <honnappa.nagarahalli@arm.com> Reviewed-by: Phil Yang <phil.yang@arm.com> Reviewed-by: Gavin Hu <gavin.hu@arm.com> Acked-by: Jerin Jacob <jerin.jacob@caviumnetworks.com>
2018-07-12bus/dpaa2: fix default IOVA setting for meson buildsBruce Richardson
By default, the DPAA2_USE_PHYS_IOVA setting with the make build-system is "y", which is overridden to "n" in the config file specifically for the arm64-dpaa2-linuxapp-gcc builds. The lack of this setting in meson builds causes issues for 32-bit build, as the alternative code paths have compiler warnings e.g. for i686 builds. Therefore we should align the meson and make settings, setting the value to "true" by default and overriding it to "false" for dpaa2-specific builds. Fixes: 6ec78c2463ac ("build: add meson support for dpaaX platforms") Signed-off-by: Bruce Richardson <bruce.richardson@intel.com> Acked-by: Hemant Agrawal <hemant.agrawal@nxp.com>
2018-07-11build: fix meson warningGavin Hu
This is to fix the unnecessary warning output, it is not consistent with the configurations of other platforms. WARNING: Cross file does not specify strip binary, result will not be stripped. Fixes: e53a5299d2 ("build: support vendor specific ARM cross builds") Cc: stable@dpdk.org Signed-off-by: Gavin Hu <gavin.hu@arm.com> Reviewed-by: Phil Yang <phil.yang@arm.com> Reviewed-by: Song Zhu <song.zhu@arm.com> Acked-by: Bruce Richardson <bruce.richardson@intel.com> Acked-by: Jerin Jacob <jerin.jacob@caviumnetworks.com> Tested-by: Ali Alnubani <alialnu@mellanox.com>
2018-04-17build: fix default arm64 instruction levelJerin Jacob
The make based build system has crc+crypto instruction support for the default arm64 build. http://dpdk.org/browse/dpdk/tree/mk/machine/armv8a/rte.vars.mk#n31 This patch fixes the disparity with meson build flags for armv8. As a bonus, This patch fixes the following errors with ip_pipeline example application. Assembler messages: Error: selected processor does not support `crc32cx w3,w3,x0' Fixes: c6e536e38437 ("build: add more implementers IDs and PNs for ARM") Signed-off-by: Jerin Jacob <jerin.jacob@caviumnetworks.com> Tested-by: Bruce Richardson <bruce.richardson@intel.com> Acked-by: Hemant Agrawal <hemant.agrawal@nxp.com>
2018-04-17build: set toolchain info during meson configurePavan Nikhilesh
Meson reports the toolchain using cc.get_id and we can set RTE_TOOLCHAIN, RTE_TOOLCHAIN_X in dpdk_conf so that it can be used by both x86 and arm. Suggested-by: Bruce Richardson <bruce.richardson@intel.com> Signed-off-by: Pavan Nikhilesh <pbhagavatula@caviumnetworks.com> Acked-by: Bruce Richardson <bruce.richardson@intel.com>
2018-03-15build: add meson cross-compilation config for dpaaXHemant Agrawal
Signed-off-by: Hemant Agrawal <hemant.agrawal@nxp.com>
2018-03-15build: add meson support for dpaaX platformsHemant Agrawal
Signed-off-by: Akhil Goyal <akhil.goyal@nxp.com> Signed-off-by: Hemant Agrawal <hemant.agrawal@nxp.com>
2018-02-06build: add more implementers IDs and PNs for ARMHerbert Guan
1) Add native PN option '-march=native' to allow automatic detection. Set 'arm_force_native_march' to 'true' in config/arm/meson.build to use native PN option. 2) Add implementer_pn option for part num selection in cross compile 3) Add known Arm cortex PN support 4) Add known implementers' IDs (use generic flags/archs by default) 5) Sync build options with config/common_armv8a_linuxapp Signed-off-by: Herbert Guan <herbert.guan@arm.com> Acked-by: Pavan Nikhilesh <pbhagavatula@caviumnetworks.com>
2018-01-30build: support vendor specific ARM cross buildsPavan Nikhilesh
Add various vendor specific cross build targets. This can be verified by using linaro toolchain and running meson build --cross-file config/arm/arm64_<cpu>_<platform>_<compiler> In future more cross build targets can be added. Signed-off-by: Pavan Nikhilesh <pbhagavatula@caviumnetworks.com> Acked-by: Jerin Jacob <jerin.jacob@caviumnetworks.com>
2018-01-30build: detect micro-arch on ARMPavan Nikhilesh
Added support for detecting march and mcpu by reading midr_el1 register. The implementer, primary part number values read can be used to figure out the underlying arm cpu. Signed-off-by: Pavan Nikhilesh <pbhagavatula@caviumnetworks.com> Acked-by: Jerin Jacob <jerin.jacob@caviumnetworks.com>
2018-01-30build: support ARM with mesonBruce Richardson
Add files to enable compiling for ARM native/cross builds. This can be tested by doing a cross-compile for armv8-a type using the linaro gcc toolchain. meson arm-build --cross-file aarch64_cross.txt ninja -C arm-build where aarch64_cross.txt contained the following [binaries] c = 'aarch64-linux-gnu-gcc' cpp = 'aarch64-linux-gnu-cpp' ar = 'aarch64-linux-gnu-ar' [host_machine] system = 'linux' cpu_family = 'aarch64' cpu = 'armv8-a' endian = 'little' Signed-off-by: Bruce Richardson <bruce.richardson@intel.com> Signed-off-by: Pavan Nikhilesh <pbhagavatula@caviumnetworks.com> Acked-by: Jerin Jacob <jerin.jacob@caviumnetworks.com>