From patchwork Tue May 16 14:00:57 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jan Viktorin X-Patchwork-Id: 24322 Return-Path: X-Original-To: patchwork@dpdk.org Delivered-To: patchwork@dpdk.org Received: from [92.243.14.124] (localhost [IPv6:::1]) by dpdk.org (Postfix) with ESMTP id EA3D62BAE; Tue, 16 May 2017 16:02:09 +0200 (CEST) Received: from wes1-so2.wedos.net (wes1-so2.wedos.net [46.28.106.16]) by dpdk.org (Postfix) with ESMTP id EB5442901; Tue, 16 May 2017 16:02:07 +0200 (CEST) Received: from pcviktorin.fit.vutbr.cz (dhcpz185.fit.vutbr.cz [147.229.14.185]) by wes1-so2.wedos.net (Postfix) with ESMTPSA id 3wRzf70rqRzwn; Tue, 16 May 2017 16:02:05 +0200 (CEST) Date: Tue, 16 May 2017 16:00:57 +0200 From: Jan Viktorin To: Jimmy Carter Cc: Neil Horman , users@dpdk.org, dev@dpdk.org, maintainers@dpdk.org, jianbo.liu@linaro.org, kosar@rehivetech.com Message-ID: <20170516160057.0647af47.viktorin@rehivetech.com> In-Reply-To: References: <20170516125140.21f0020d.viktorin@rehivetech.com> <20170516114458.GA18139@hmswarspite.think-freely.org> <20170516142808.4abedf71.viktorin@rehivetech.com> Organization: RehiveTech MIME-Version: 1.0 Subject: Re: [dpdk-dev] Issue->Dpdk for arm cortex-a15 compilation X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" On Tue, 16 May 2017 18:57:41 +0530 Jimmy Carter wrote: > I assume after git clone https://github.com/RehiveTech/buildroot > I need to git checkout dpdk-support-v5 Yes, I forgot to mention... > I get legacy error on running make > root@xav101000739:~/Downloads/dpdk/newbuildroot/buildroot# *make * > *Makefile.legacy:12: *** "You have legacy configuration in your .config! > Please check your configuration.". Stop.* This is very strange. Did you use qemu_arm_vexpress_defconfig or some other? I didn't have any issue during the build except of a mismatch in the SHA256 checksum of the dpdk-16.04.tar.gz which is strange. After fixing: it works. $ ls output/images/ rootfs.ext2 vexpress-v2p-ca9.dtb zImage Regards Jan > > > Thanks > > On Tue, May 16, 2017 at 5:58 PM, Jan Viktorin > wrote: > > > On Tue, 16 May 2017 17:25:20 +0530 > > Jimmy Carter wrote: > > > > > Hi All > > > > > > Attached is the complete env variables file > > > I have added RTE_KERNELDIR too > > > Also I am now using gnu-eabi version 5.4.0 > > > [arm-openwrt-linux-muslgnueabi-gcc (LEDE GCC 5.4.0 r3909-6411a12) 5.4.0] > > > But I am still getting the same error > > > > > > Currently I am not using buildroot > > > Is there any step by step available guide for cross compiling dpdk using > > > buildroot for target arm cortex-a15 using some external toolchain. > > > I found this http://dpdk.org/ml/archives/announce/2015-October/000066. > > html > > > > This short tutorial points to some older version of the Buildroot > > support. That was before the ARM support has been merged into DPDK. > > > > I've just pushed the branch dpdk-support-v5 (d25ddaadf2) into > > the RehiveTech repository. It contains the latest patch sent to the > > Buildroot mailing list [1] and some more. By the way, it cleanly > > applies to the latest Buildroot master as well. > > > > This branch assumes DPDK 16.04 which is quite old but if you drop the > > 0001-mk-do-not-enforce-any-specific-ARM-ABI.patch, it might work for newer > > DPDK as well. > > > > Steps: > > > > $ git clone https://github.com/RehiveTech/buildroot > > $ cd buildroot > > $ make qemu_arm_vexpress_defconfig > > $ make menuconfig > > > > * set libc library to glibc > > * enable DPDK in Target packages/Libraries/Networking/DPDK > > > > $ make linux-menuconfig > > > > * enable UIO, PCI and MSI-X (if applicable) > > > > $ make > > > > I didn't test it myself recently but I belive that it should work well. > > Instead of qemu_arm_vexpress_defconfig, you should select your target > > board, if applicable. > > > > I hope, it would help you. > > > > Regards > > Jan > > > > [1] https://patchwork.ozlabs.org/patch/611383/ > > > > > > > > > > > Please advise > > > > > > > > > > > > Thanks > > > > > > On Tue, May 16, 2017 at 5:14 PM, Neil Horman > > wrote: > > > > > > > On Tue, May 16, 2017 at 12:51:40PM +0200, Jan Viktorin wrote: > > > > > Hello Jimmy, > > > > > > > > > > On Tue, 16 May 2017 15:38:22 +0530 > > > > > Jimmy Carter wrote: > > > > > > > > > > > Hi All > > > > > > > > > > > > I am using dpdk16.11.1 and want to use openwrt external toolchain > > so > > > > that I > > > > > > can cross compile for arm cortex 15 > > > > > > neon.(arm_cortex-a15+neon-vfpv4_gcc-5.4.0_musl_eabi) > > > > > > > > > > I've never built DPDK with musl-eabi. I don't think that your issue > > is > > > > > related but just note that my builds have always been done with > > gnueabi. > > > > > > > > > > > My target board is Tp link archer C2600. > > > > > > I am have assigned these env variables but still getting > > compilation > > > > error > > > > > > > > > > > > export > > > > > > STAGING_DIR=/home/xav-101000739/ovslede/source/ > > > > staging_dir/toolchain-arm_cortex-a15+neon-vfpv4_gcc-5.4.0_musl_eabi > > > > > > export > > > > > > PATH=$PATH:/home/xav-101000739/ovslede/source/ > > > > staging_dir/toolchain-arm_cortex-a15+neon-vfpv4_gcc-5.4. > > 0_musl_eabi/bin > > > > > > > > > > > > > > > > > > export CROSS=arm-openwrt-linux- > > > > > > export DPDK_TARGET=arm-armv7a-linuxapp-gcc > > > > > > export DPDK_DIR=$PWD > > > > > > export DPDK_BUILD=$DPDK_DIR/$DPDK_TARGET > > > > > > export > > > > > > CFLAGS+=-I/home/xav-101000739/ovslede/source/staging_dir/ > > > > toolchain-arm_cortex-a15+neon-vfpv4_gcc-5.4.0_musl_eabi > > > > > > export RTE_SDK=$PWD > > > > > > export RTE_TARGET=arm-armv7a-linuxapp-gcc > > > > > > export DPDK_BUILD_DIR=arm-armv7a-linuxapp-gcc > > > > > > > > > > > > > > > > There is a patch to Buildroot that can help you with the setup. See: > > > > > > > > > > https://patchwork.ozlabs.org/patch/611383/ > > > > > > > > > > > > > > > > > Error:Attached file > > > > > > > > > > Your build fails on > > > > > > > > > > eal_memory.c:92: > > > > > /home/xav-101000739/Downloads/dpdk/dpdk-stable-16.11.1/ > > > > build/include/rte_lcore.h:56:10: error: unknown type name 'cpu_set_t' > > > > > typedef cpu_set_t rte_cpuset_t; > > > > > > > > > > This looks like there is some issue with Linux Kernel headers. > > > > > > > > > > lib/librte_eal/common/include/rte_lcore.h: > > > > > > > > > > 53 #if defined(__linux__) > > > > > 54 typedef cpu_set_t rte_cpuset_t; > > > > > 55 #elif defined(__FreeBSD__) > > > > > 56 #include > > > > > 57 typedef cpuset_t rte_cpuset_t; > > > > > 58 #endif > > > > > > > > > > Probably, you should set the RTE_KERNELDIR properly. > > > > > > > > > I don't think so. cpu_set_t is most recently defined in > > > > /usr/include/bits/shced.h, which is a glibc header. What version of > > glibc > > > > are > > > > you building with? > > > > > > > > Neil > > > > > > > > > > > > > > > > Please advise > > > > > > Does dpdk have support for openwrt (arm cortex a15) > > > > > > > > > > DPDK does not support OpenWRT because (as far as I know) nobody from > > > > > the DPDK community is using it in this way. I build DPDK via > > Buildroot > > > > > but this is unsupported by the DPDK upstream. > > > > > > > > > > I could build DPDK for Cortex-A7, Cortex-A9 and Cortex-A15 in the > > past. > > > > > > > > > > I run regular builds of the master branch and I can see no breakage > > > > > for the arm-armv7a-linuxapp-gcc configuration. > > > > > > > > > > Regards > > > > > Jan > > > > > > > > > > > > > > > > > Thanks > > > > > > Akshay > > > > > > > > > > > > > > > > > -- > > Jan Viktorin E-mail: Viktorin@RehiveTech.com > > System Architect Web: www.RehiveTech.com > > RehiveTech > > Brno, Czech Republic > > diff --git a/package/dpdk/dpdk.hash b/package/dpdk/dpdk.hash index 3780c665b..c0158e477 100644 --- a/package/dpdk/dpdk.hash +++ b/package/dpdk/dpdk.hash @@ -1,2 +1,2 @@ # Locally calculated -sha256 d631495bc6e8d4c4aec72999ac03c3ce213bb996cb88f3bf14bb980dad1d3f7b dpdk-16.04.tar.gz +sha256 f917875b1432adaaebb2761c154623bb101e0308153aa011f06a69bd1e9e98fb dpdk-16.04.tar.gz