eal/arm: check support of armv8.1 atomics

armv8.1 adds support for new atomic instructions.
Linux kernel v4.3 onwards, the presence of atomic instruction
support can detect through HWCAP_ATOMICS

Signed-off-by: Jerin Jacob <jerin.jacob@caviumnetworks.com>
Reviewed-by: Jan Viktorin <viktorin@rehivetech.com>
This commit is contained in:
Jerin Jacob 2016-03-02 18:50:59 +05:30 committed by Thomas Monjalon
parent f9f7c949ff
commit 716bf82080
3 changed files with 5 additions and 0 deletions

View File

@ -144,6 +144,9 @@ test_cpuflags(void)
printf("Check for CRC32:\t");
CHECK_FOR_FLAG(RTE_CPUFLAG_CRC32);
printf("Check for ATOMICS:\t");
CHECK_FOR_FLAG(RTE_CPUFLAG_ATOMICS);
#endif
#if defined(RTE_ARCH_X86_64) || defined(RTE_ARCH_I686)

View File

@ -122,6 +122,7 @@ const struct feature_entry rte_cpu_feature_table[] = {
FEAT_DEF(SHA1, REG_HWCAP, 5)
FEAT_DEF(SHA2, REG_HWCAP, 6)
FEAT_DEF(CRC32, REG_HWCAP, 7)
FEAT_DEF(ATOMICS, REG_HWCAP, 8)
FEAT_DEF(AARCH64, REG_PLATFORM, 1)
};
#endif /* RTE_ARCH */

View File

@ -49,6 +49,7 @@ enum rte_cpu_flag_t {
RTE_CPUFLAG_SHA1,
RTE_CPUFLAG_SHA2,
RTE_CPUFLAG_CRC32,
RTE_CPUFLAG_ATOMICS,
RTE_CPUFLAG_AARCH64,
/* The last item */
RTE_CPUFLAG_NUMFLAGS,/**< This should always be the last! */