diff options
author | Sachin Saxena <sachin.saxena@nxp.com> | 2016-06-10 16:31:30 +0530 |
---|---|---|
committer | Sachin <sachin.saxena@nxp.com> | 2016-06-10 19:50:52 +0530 |
commit | 725c59cfc7572943e24c80dcdf79dc0446ec5e0a (patch) | |
tree | 587b0252be77208a291684185f35081fa205d521 | |
parent | c71c426f6903e39590d769a65a5379319ead7edf (diff) |
NXP dpaa2 platform initial support
- On ARMv8 aarch64 CPU
- TARGET is aarch64-linux-gnu
- Cross compilation enabled with "gcc-linaro-4.9" toolchain
make PLATFORM=dpaa2 TAG=dpaa2 ...
Change-Id: I8faf5c8b0d3c81d33a2834c6429a05c8379309c1
Signed-off-by: Sachin Saxena <sachin.saxena@nxp.com>
-rw-r--r-- | build-data/platforms/dpaa2.mk | 63 |
1 files changed, 63 insertions, 0 deletions
diff --git a/build-data/platforms/dpaa2.mk b/build-data/platforms/dpaa2.mk new file mode 100644 index 00000000000..feafd728397 --- /dev/null +++ b/build-data/platforms/dpaa2.mk @@ -0,0 +1,63 @@ +# Copyright (c) 2016 Freescale Semiconductor, Inc. All rights reserved. +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at: +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# Configuration for NXP DPAA2 ARM64 based platform +dpaa2_arch = aarch64 +dpaa2_os = linux-gnu +dpaa2_target = aarch64-linux-gnu +dpaa2_mtune = cortex-A57 +dpaa2_march = "armv8-a+fp+simd+crc+crypto" +dpaa2_cross_ldflags = \ + -Wl,--dynamic-linker=/lib/ld-linux-aarch64.so.1 + +dpaa2_native_tools = vppapigen +dpaa2_root_packages = vpp vlib vlib-api vnet svm vpp-api-test + +# DPDK configuration parameters +# +# We are using external DPDK module with NXP-DPAA2 platform support. +# Compile DPDK only if "DPDK_PATH" variable is defined where we have +# installed DPDK libraries and headers. +ifeq ($(PLATFORM),dpaa2) +ifneq ($(DPDK_PATH),) +dpaa2_uses_dpdk = yes +dpaa2_uses_external_dpdk = yes +dpaa2_dpdk_inc_dir = $(DPDK_PATH)/include/dpdk +dpaa2_dpdk_lib_dir = $(DPDK_PATH)/lib +else +$(error Please define path <DPDK_PATH> for installed DPDK headers and libs) +endif +endif + +vpp_configure_args_dpaa2 = --with-dpdk --without-ipsec --without-vcgn \ + --without-ipv6sr --with-sysroot=$(SYSROOT) +vnet_configure_args_dpaa2 = --with-dpdk --without-ipsec --without-vcgn \ + --without-ipv6sr --with-sysroot=$(SYSROOT) + +# Set these parameters carefully. The vlib_buffer_t is 128 bytes, i.e. +vlib_configure_args_dpaa2 = --with-pre-data=128 + + +dpaa2_debug_TAG_CFLAGS = -g -O2 -DCLIB_DEBUG -fPIC -fstack-protector-all \ + -march=$(MARCH) -Werror +dpaa2_debug_TAG_LDFLAGS = -g -O2 -DCLIB_DEBUG -fstack-protector-all \ + -march=$(MARCH) -Werror + +# Use -rdynamic is for stack tracing, O0 for debugging....default is O2 +# Use -DCLIB_LOG2_CACHE_LINE_BYTES to change cache line size +dpaa2_TAG_CFLAGS = -g -O2 -fPIC -march=$(MARCH) -mcpu=$(dpaa2_mtune) \ + -mtune=$(dpaa2_mtune) -funroll-all-loops -Werror +dpaa2_TAG_LDFLAGS = -g -O2 -fPIC -march=$(MARCH) -mcpu=$(dpaa2_mtune) \ + -mtune=$(dpaa2_mtune) -funroll-all-loops -Werror + + |