On 28/10/2015 10:56, Jan Viktorin wrote: > On Wed, 28 Oct 2015 11:09:21 +0100 > David Marchand <david.marchand at 6wind.com> wrote: > >> Hello Jan, >> >> On Tue, Oct 27, 2015 at 8:13 PM, Jan Viktorin <viktorin at rehivetech.com> >> wrote: >> >> +# PCI is usually not used on ARM >>> +CONFIG_RTE_EAL_IGB_UIO=n >>> >> >> Not sure "usually not used" is a good reason to disable something. >> Is there a real issue on arm with igb_uio code (compilation, pci accesses) ? >> > > Well, it requires to set some options in Linux Kernel (at least PCI > support) which are usually disabled by the in-kernel *arm*_defconfigs. > Moreover, it seems I cannot enable it for some ARM architectures (I've > tried Altera SoC FPGA). That's because you hardly find an ARMv7 system > with a PCI bus. I suppose that if somebody _really_ needs this, she would > enable it by hand. > > At the moment, it breaks my common builds... The driver is mostly > useless on ARMv7 and just takes space in the filesystem.
I have an ARMv8 board here that I've built a new kernel for the purposes of an ARMv8 port, and it took quite a while to get the PCI functionality all working, including implementing a fix to the kernel PCI driver to expose the mmap resources in sysfs properly. But after that, igb_uio compiles fine (on the ARMv8 patch) and works with a Niantic to pass traffic between ports. If the majority of ARMv7 boards don't have a PCI bus, then I'd suggest leaving igb_uio disabled. Those few boards with PCI will most likely have a correctly kernel (and source) ready to go, so enabling igb_uio for them will be easy, but disabling seems a more sensible default for the majority of ARMv7 users. Rgds, Dave.