[dpdk-dev] [PATCH 00/12] DPDK armv8-a support

Hunt, David david.hunt at intel.com
Tue Nov 3 15:17:38 CET 2015


On 03/11/2015 13:09, Jerin Jacob wrote:
> This is the v1 patchset for ARMv8 that now sits on top of the v6 patch
> of the ARMv7 code by RehiveTech. It adds code into the same arm include
> directory, reducing code duplication.
 >
> Tested on an ThunderX arm 64-bit arm server board, with PCI slots. Passes traffic
> between two physical ports on an Intel 82599 dual-port 10Gig NIC. Should
> work with many other NICS as long as long as there is no unaligned access to
> device memory but not yet untested.

I have your patchset building and running on an X-Gene based 8-core 
MP30AR0 system, passing traffic between two ports on and 82599 also.

> Notes on arm64 kernel configuration:
>
>    Tested on using Ubuntu 14.04 LTS with a 3.18 kernel and igb_uio.
>    ARM64 kernels does not have functional resource mapping of PCI memory
>    (PCI_MMAP), so the pci driver needs to be patched to enable this. The
>    symptom of this is when /sys/bus/pci/devices/0000:0X:00.Y directory is
>    missing the resource0...N files for mmapping the device memory.
>
>    Following patch fixes the PCI resource mapping issue om armv8.
>    Its not yet up streamed.We are in the process of up streaming it.
>
>    http://lists.infradead.org/pipermail/linux-arm-kernel/2015-July/358906.html

Good to see that there's a patch on the way for this. That fix looks 
almost exactly the same as the hack I did to my kernel :)

I had a couple of small issues when patching/building:

1. Three of the files had an extra blank line at the end. Maybe worth 
running checkpatch on the patches. 'git am' was complaining.

2. I had problems compiling two drivers because they were attempting to 
include tmmintrin.h:

...dpdk/drivers/net/fm10k/fm10k_rxtx_vec.c:41:23: fatal error: 
tmmintrin.h: No such file or directory

...dpdk/drivers/net/i40e/i40e_rxtx_vec.c:43:23: fatal error: 
tmmintrin.h: No such file or directory

To avoid this, I added the following two lines into 
defconfig_arm64-armv8a-linuxapp-gcc

CONFIG_RTE_LIBRTE_FM10K_PMD=n
CONFIG_RTE_LIBRTE_I40E_PMD=n

and then it built fine, and I can run testpmd with my 82599's and run 
autotests.

Thanks for that.
Dave.


More information about the dev mailing list