aboutsummaryrefslogtreecommitdiffstats
path: root/tests/dpdk/dpdk_scripts/install_dpdk.sh
diff options
context:
space:
mode:
authorGabriel Ganne <gabriel.ganne@enea.com>2017-11-27 15:38:53 +0100
committerJan Gelety <jgelety@cisco.com>2018-01-10 15:42:43 +0100
commitc7eb2002bcd007520309feb3e11a26ff847a4e05 (patch)
tree84ea1d5513da1bb0f4e078aec87b44cf653a7e7c /tests/dpdk/dpdk_scripts/install_dpdk.sh
parenta95c54b7821596402e0aa7136cd7d1de71a5b187 (diff)
add new topology parameter: arch
if unset, arch variable will default to "x86_64" * Note on "arm64" vs "aarch64" debian-based uses arm64 rhel-based uses aarch64 qemu binaries of both distribs uses aarch64 dpdk uses arm64 vpp uses aarch64 python machine modules uses aarch64 => prefer aarch64 to use the same nomenclature as vpp * add ARCH argument to: init_dpdk.sh, install_dpdk.sh, run_l2fwd.sh, install_tldk.sh, run_tldk.sh. default to x86_64 converts "aarch64" if needed for dpdk naming convention * fixed terminal end detection to allow "~]# " add dut node arch as param to all robot set bin calls * add --target-list flag to qemu_build.sh defaults to x86_64-softmmu * add arch flag to all the topology files * topologies/available/ (and example file) * resources/tools/virl/topologies/ * set _qemu_bin path using node['arch'] in qemu_set_node() Change-Id: If46d88d064d213d3e4c6fc584bb8e0d4b6428cb8 Signed-off-by: Gabriel Ganne <gabriel.ganne@enea.com>
Diffstat (limited to 'tests/dpdk/dpdk_scripts/install_dpdk.sh')
-rwxr-xr-xtests/dpdk/dpdk_scripts/install_dpdk.sh17
1 files changed, 15 insertions, 2 deletions
diff --git a/tests/dpdk/dpdk_scripts/install_dpdk.sh b/tests/dpdk/dpdk_scripts/install_dpdk.sh
index 6a7c11d8c1..945defe9a2 100755
--- a/tests/dpdk/dpdk_scripts/install_dpdk.sh
+++ b/tests/dpdk/dpdk_scripts/install_dpdk.sh
@@ -3,6 +3,19 @@
set -x
# Setting variables
+
+# set arch, default to x86_64 if none given
+ARCH=${1:-"x86_64"}
+
+
+# dpdk prefers "arm64" to "aarch64" and does not allow arm64 native target
+if [ $ARCH == "aarch64" ]; then
+ ARCH="arm64"
+ MACHINE="armv8a"
+else
+ MACHINE="native"
+fi
+
DPDK_VERSION=dpdk-17.11
DPDK_DIR=${DPDK_VERSION}
DPDK_PACKAGE=${DPDK_DIR}.tar.xz
@@ -19,13 +32,13 @@ tar xJvf ${DPDK_PACKAGE} || \
# Compile the DPDK
cd ./${DPDK_DIR}
sudo sed -i 's/^CONFIG_RTE_LIBRTE_I40E_16BYTE_RX_DESC=n/CONFIG_RTE_LIBRTE_I40E_16BYTE_RX_DESC=y/g' ./config/common_base
-make install T=x86_64-native-linuxapp-gcc -j || \
+make install T=${ARCH}-${MACHINE}-linuxapp-gcc -j || \
{ echo "Failed to compile $DPDK_VERSION"; exit 1; }
cd ${PWDDIR}
# Compile the l3fwd
export RTE_SDK=${ROOTDIR}/${DPDK_DIR}/
-export RTE_TARGET=x86_64-native-linuxapp-gcc
+export RTE_TARGET=${ARCH}-${MACHINE}-linuxapp-gcc
cd ${RTE_SDK}/examples/l3fwd
sudo sed -i 's/^#define RTE_TEST_RX_DESC_DEFAULT 128/#define RTE_TEST_RX_DESC_DEFAULT 2048/g' ./main.c
sudo sed -i 's/^#define RTE_TEST_TX_DESC_DEFAULT 512/#define RTE_TEST_TX_DESC_DEFAULT 2048/g' ./main.c