aboutsummaryrefslogtreecommitdiffstats
path: root/build-data
AgeCommit message (Collapse)AuthorFilesLines
2016-05-27Fix dpdk march/mtune defaultsDamjan Marion1-1/+1
Change-Id: I6e6940c8467a331b37da153bb8a2154c1d165261 Signed-off-by: Damjan Marion <damarion@cisco.com>
2016-05-20VPP-79: fix cross-compilation build breakDave Barach1-3/+3
.../packages/dpdk.mk must not set $(TARGET). The Makefile fragment really only needed to use a temporary variable to control the dpdk Makefile. Simple fix: set $(DPDK_PLATFORM_TARGET) instead. Change-Id: Ieb61b603bc36ed708a1b1237dc6bc503e90a0b7b Signed-off-by: Dave Barach <dave@barachs.net>
2016-05-19Add support for multiple microarchitectures in single binaryDamjan Marion3-4/+15
* compiler -march= parameter is changed from native to corei7 so code is always genereted with instructions which are available on the Nehalem microarchitecture (up to SSE4.2) * compiler -mtune= parameter is added so code is optimized for corei7-avx which equals to Sandy Bridge microarchitecture * set of macros is added which allows run-time detection of available cpu instructions (e.g. clib_cpu_supports_avx()) * set of macros is added which allows us to clone graph node funcitons where cloned function is optmized for different microarchitecture Those macros are using following attributes: __attribute__((flatten)) __attribute__((target("arch=core-avx2))) I.e. If applied to foo_node_fn() macro will generate cloned functions foo_node_fn_avx2() and foo_node_fn_avx512() (future) It will also generate function void * foo_node_fn_multiarch_select() which detects available instruction set and returns pointer to the best matching function clone. Change-Id: I2dce0ac92a5ede95fcb56f47f3d1f3c4c040bac0 Signed-off-by: Damjan Marion <damarion@cisco.com>
2016-05-17dpdk/Makefile - Allow dpdk target to be set according to the platformChristophe Fontaine2-3/+21
Allows DPDK parameters to be overriden from the platform definition. $(PLATFORM)_dpdk_arch = "armv7a" $(PLATFORM)_dpdk_target = "arm-armv7a-linuxapp-gcc" $(PLATFORM)_dpdk_make_extra_args = "CONFIG_RTE_EAL_IGB_UIO=y" Change-Id: I8c0f233942744cb82ca3ed2d65e33acee845cb4e Signed-off-by: Christophe Fontaine <christophe.fontaine@qosmos.com>
2016-04-28VPP-8: Set java-8 for JNIMarek Gradzki1-1/+1
Change-Id: Ia81713a72e3c48b1d97bbf3f20a908bbc4ebd3b1 Signed-off-by: Maros Marsalek <mmarsale@cisco.com> Signed-off-by: Marek Gradzki <mgradzki@cisco.com>
2016-04-20Python-API: Inital commit of Python bindings for the VPP API.Ole Troan4-7/+7
See: https://wiki.fd.io/view/VPP/Python_API Change-Id: If135fc32208c7031787e1935b399d930e0e1ea1f Signed-off-by: Ole Troan <ot@cisco.com>
2016-04-20Add TAG=vpp_gcov which compiles vpp to produce .gcda filesDave Barach1-0/+5
Change-Id: Ib6a0940e08f9e0983f3ec70f9e8488c2185ca4da Signed-off-by: Dave Barach <dave@barachs.net>
2016-04-18Add support for AArch32Christophe Fontaine3-4/+49
gcc version 4.9.2 (Raspbian 4.9.2-10) Tested on Linux raspberrypi 4.4.6-v7+ #875 SMP Tue Apr 12 16:33:02 BST 2016 armv7l GNU/Linux CPUs may be little or big endian, detect with gcc flags, not the processor architecture Add a new flag $(PLATFORM)_uses_openssl which allows to disable the link with openssl lib. vlib/vlib/threads.c: startup.conf must: - specify the heapsize as we don't have hugepages on raspbian cpu { main-core 3 } heapsize 64M Corrects in various files the assumption uword == u64 and replaces 'u64' cast with 'pointer_to_uword' and 'uword_to_pointer' where appropriate. 256 CPUs may create an OOM when testing with small memory footprint ( heapsize 64M ), allows the number of VLIB_MAX_CPUS to be set in platforms/*.mk vppinfra/vppinfra/longjmp.S: ARM - copy r1 (1st parameter of the setjmp call) to r0 (return value) vppinfra/vppinfra/time.h: On ARMv7 in AArch32 mode, we can access to a 64bit register to retreive the cycles count. gcc on rpi only declare ARM_ARCH 6. Override this info, and check if it is possible to use 'mrrc'. /!\ the time function will NOT work without allowing the user mode access to the PMU. You may download the source of the kmod here: https://github.com/christophefontaine/arm_rdtsc Change-Id: I8142606436d9671a184133b935398427f08a8bd2 Signed-off-by: Christophe Fontaine <christophe.fontaine@qosmos.com>
2016-04-12Add unit test infrastructure for LISP protocolFilip Tehlar1-0/+4
Change-Id: I802700ad832de1dc6f4a1981e8985aa6e926c8ad Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
2016-04-11Add configure option to enable building unit testsDamjan Marion2-1/+7
Same template should be used for other libs... Change-Id: Icc771cb6b243d215f30fb51c0dbc028e497a74c6 Signed-off-by: Damjan Marion <damarion@cisco.com>
2016-04-01Add options to link with external DPDK treeDamjan Marion6-3/+37
By uncommenting following lines in the build-data/platforms/vpp.mk VPP links nicely with packaged DPDK 2.2 distributed with Ubuntu 16.04 LTS. vpp_uses_external_dpdk = yes vpp_dpdk_inc_dir = /usr/include/dpdk vpp_dpdk_lib_dir = /usr/lib vpp_dpdk_shared_lib = yes Change-Id: Id5b7d95bac6aa60341933b92e86d949a9abf1a5d Signed-off-by: Damjan Marion <damarion@cisco.com>
2016-03-25Use rte_mempool private data for storing vlib_buffer_tDamjan Marion2-4/+0
Change-Id: If3fc88a35bc0b736376113a39667caea42802ea1 Signed-off-by: Damjan Marion <damarion@cisco.com>
2016-03-25vpp-api-test and sample-plugin should depend on dpdk conditionallyDamjan Marion2-12/+13
Change-Id: Ie26340141fdbd3256e305ab37f4baa817081bf46 Signed-off-by: Damjan Marion <damarion@cisco.com>
2016-02-27Invert matching logic for *_uses_dpdk in build-data/packages/*.mkDamjan Marion3-3/+3
Change-Id: If07a74afd92196c035d720cedaac36493a09e400 Signed-off-by: Damjan Marion <damarion@cisco.com>
2016-02-26Update PowerPC (qppc) platform to build with Ubuntu cross-toolsDamjan Marion6-109/+22
Standard Ubuntu PowerPC toolchain can be installed with: apt-get install crossbuild-essential-powerpc And code can be built with: make PLATFORM=qppc TAG=qppc ... Change-Id: I247355fc89fd61aedb8693156e84c454ca86eb75 Signed-off-by: Damjan Marion <damarion@cisco.com>
2016-02-26Add support for native vpp_lite (non-dpdk) platformDamjan Marion6-10/+60
Change-Id: Icaa71957f67b923bc9795baa78c7495055615672 Signed-off-by: Damjan Marion <damarion@cisco.com>
2016-02-12Performance tools, initial check-inDave Barach2-0/+10
Change-Id: I9fb4f4babecbe02d171f38c4d089634e90141937 Signed-off-by: Dave Barach <dave@barachs.net>
2016-02-10Compile with -Werror, so Jenkins will catch warningsDave Barach1-4/+4
Change-Id: I9255c75b6c6cbc638cdcc411632a924cb06f28c0 Signed-off-by: Dave Barach <dave@barachs.net>
2016-02-03Need to include symbolic links in the lib package: libXXX.so, libXXX.so.0Dave Barach1-2/+4
Otherwise, autotools can't find libXXX, -lXXX doesn't work, etc. Change-Id: I9c4c43f795ca872475f65bc0e4494674eaa00576 Signed-off-by: Dave Barach <dave@barachs.net>
2016-02-02Enable ganglia module integration buildDave Barach2-2/+2
Change-Id: Ia49e9f246e8318ba74195c3397472fb0c102389b Signed-off-by: Dave Barach <dave@barachs.net>
2016-02-01Add a vpp-dpdk-dev package, enable plugins to use dpdk APIs directlyDave Barach1-0/+4
Change-Id: I69db06a0b5d5d556c2fd570ea0056bb59d7bc3d6 Signed-off-by: Dave Barach <dave@barachs.net>
2016-01-29Rationalize metric names.Dave Barach1-2/+2
Change-Id: I3144e58f635ef94224387e8729bf8db6aa77a106 Signed-off-by: Dave Barach <dave@barachs.net>
2016-01-28vpp metrics upload via gmond pluginDave Barach1-0/+9
The gmond module (gmod) isn't built by default, pending CentOS packaging work. Change-Id: I78493a60f431cf9924a28d31ba29423a03aa79b3 Signed-off-by: Dave Barach <dave@barachs.net>
2016-01-22aarch64 CPU arch / ThunderX platform initial supportDave Barach13-34/+223
Change-Id: Ia2edd3cee2c25c26c7c47a9023744b97226434c7 Signed-off-by: Dave Barach <dave@barachs.net>
2016-01-21PowerPC64-be arch support. Qemu ("qppc") platform support.Dave Barach6-0/+123
Change-Id: Ib0a05f9d1b08bacef09f6d7c101391737031ee0d Signed-off-by: Dave Barach <dave@barachs.net>
2015-12-16Move vppctl to vpp-api-testDamjan Marion2-12/+1
Change-Id: I4af0eb9c09d14a1a9803cf1b25bc3d7b814c82cc Signed-off-by: Damjan Marion <damarion@cisco.com>
2015-12-16Add vppctl as a simple cli interface to vppEd Warnicke2-1/+12
This patch provides a pretty simple hack on top of vpe_api_test to give users a cli interface to vpp. Example: sudo vppctl show api client sudo vppctl show int It has the advantage that users can use bash shell scripting and history with it. Change-Id: I621dd8e29269e14a83b4887f20adcfbe5f946b99 Signed-off-by: Ed Warnicke <eaw@cisco.com>
2015-12-15Remove vppversion subtree, move elftool to vppinfraDamjan Marion2-2/+2
Change-Id: I26b29a0f53f81a28cbf264f5299f9a3978735574 Signed-off-by: Damjan Marion <damarion@cisco.com>
2015-12-08Initial commit of vpp code.v1.0.0Ed Warnicke14-0/+349
Change-Id: Ib246f1fbfce93274020ee93ce461e3d8bd8b9f17 Signed-off-by: Ed Warnicke <eaw@cisco.com>