Hello DPDK community, This is the 4th series of the ARMv7 patchset. I've cleaned up most checkpatch errors:
* Whitespaces were fixed. * The asm volatile syntax (checkpatch didn't like the named "%xyz" parameters when listed in the InputOperands list as "[xyz]"). * There are still few complaints (documented in each patch) but I consider them as unimportant (volatile, couple of line overlaps, new typedef). If it still can be done better, please report me your ideas. Other changes: * The "introduction patch" was moved to be almost the last patch as suggested by D. Marchand. * I've added a note into the release_2_2.rst. * The RTE_BITMAP_OPTIMIZATIONS was removed. * The ARMv7 defconfig was renamed as suggested by B. Richardson. * I've removed the LPM and ACL fixes from the patchset for now. The libraries table and pipeline are disabled as well. * The igb_uio driver is disabled. * The -Wno-error was restricted to cast-align only. To be answered (from rte_atomic.h patch): * use __atomic_* or __sync_*? (may affect the required GCC version) Regards Jan --- You can pull the changes from https://github.com/RehiveTech/dpdk.git arm-support-v4 since commit 82fb702077f67585d64a07de0080e5cb6a924a72: ixgbe: support new flow director modes for X550 (2015-10-29 00:06:01 +0100) up to 437c85fd6d9c5f3bdd2411fb9ddf703dc4cba5a5: maintainers: claim responsibility for ARMv7 (2015-10-29 13:33:49 +0100) --- Jan Viktorin (7): eal/arm: implement rdtsc by PMU or clock_gettime eal/arm: use vector memcpy only when NEON is enabled eal/arm: detect arm architecture in cpu flags eal/arm: rwlock support for ARM eal/arm: add very incomplete rte_vect gcc/arm: avoid alignment errors to break build maintainers: claim responsibility for ARMv7 Vlastimil Kosar (8): eal/arm: atomic operations for ARM eal/arm: byte order operations for ARM eal/arm: cpu cycle operations for ARM eal/arm: prefetch operations for ARM eal/arm: spinlock operations for ARM (without HTM) eal/arm: vector memcpy for ARM eal/arm: cpu flag checks for ARM mk: Introduce ARMv7 architecture MAINTAINERS | 4 + app/test/test_cpuflags.c | 5 + config/defconfig_arm-armv7a-linuxapp-gcc | 74 +++++ doc/guides/rel_notes/release_2_2.rst | 5 + .../common/include/arch/arm/rte_atomic.h | 256 ++++++++++++++++ .../common/include/arch/arm/rte_byteorder.h | 150 +++++++++ .../common/include/arch/arm/rte_cpuflags.h | 193 ++++++++++++ .../common/include/arch/arm/rte_cycles.h | 121 ++++++++ .../common/include/arch/arm/rte_memcpy.h | 334 +++++++++++++++++++++ .../common/include/arch/arm/rte_prefetch.h | 61 ++++ .../common/include/arch/arm/rte_rwlock.h | 40 +++ .../common/include/arch/arm/rte_spinlock.h | 114 +++++++ lib/librte_eal/common/include/arch/arm/rte_vect.h | 84 ++++++ mk/arch/arm/rte.vars.mk | 39 +++ mk/machine/armv7-a/rte.vars.mk | 67 +++++ mk/rte.cpuflags.mk | 6 + mk/toolchain/gcc/rte.vars.mk | 6 + 17 files changed, 1559 insertions(+) create mode 100644 config/defconfig_arm-armv7a-linuxapp-gcc create mode 100644 lib/librte_eal/common/include/arch/arm/rte_atomic.h create mode 100644 lib/librte_eal/common/include/arch/arm/rte_byteorder.h create mode 100644 lib/librte_eal/common/include/arch/arm/rte_cpuflags.h create mode 100644 lib/librte_eal/common/include/arch/arm/rte_cycles.h create mode 100644 lib/librte_eal/common/include/arch/arm/rte_memcpy.h create mode 100644 lib/librte_eal/common/include/arch/arm/rte_prefetch.h create mode 100644 lib/librte_eal/common/include/arch/arm/rte_rwlock.h create mode 100644 lib/librte_eal/common/include/arch/arm/rte_spinlock.h create mode 100644 lib/librte_eal/common/include/arch/arm/rte_vect.h create mode 100644 mk/arch/arm/rte.vars.mk create mode 100644 mk/machine/armv7-a/rte.vars.mk -- 2.6.1