From: "Wei Hu (Xavier)" <huwei013@chinasoftinc.com> To: <dev@dpdk.org> Cc: <nd@arm.com>, <Honnappa.Nagarahalli@arm.com>, <Ruifeng.Wang@arm.com>, <jerinjacobk@gmail.com>, <xavier.huwei@huawei.com> Subject: [dpdk-dev] [PATCH v4 1/2] eal/arm64: update CPU flags Date: Tue, 18 Aug 2020 16:09:03 +0800 Message-ID: <20200818080904.5173-2-huwei013@chinasoftinc.com> (raw) In-Reply-To: <20200818080904.5173-1-huwei013@chinasoftinc.com> From: "Wei Hu (Xavier)" <xavier.huwei@huawei.com> ARM64 Linux kernel updated the CPU flags using the HWCAP scheme. The related marco definition can be found in linux kernel: arch/arm64/include/uapi/asm/hwcap.h This patch incorporates those changes to the eal library. Signed-off-by: Chengwen Feng <fengchengwen@huawei.com> Signed-off-by: Wei Hu (Xavier) <xavier.huwei@huawei.com> --- v3 -> v4: Update commit log. v2 -> v3: 1. Change commit log. 2. Add HWCAP2_FLAGM2 and HWCAP2_FRINT to rte_cpu_feature_table[]. 3. Add the flags for newly added items into enum rte_cpu_flag_t. v1 -> v2: Adds more sve-related definition to rte_cpu_feature_table, sunch as SVE2, etc. --- lib/librte_eal/arm/include/rte_cpuflags_64.h | 13 +++++++++++++ lib/librte_eal/arm/rte_cpuflags.c | 13 +++++++++++++ 2 files changed, 26 insertions(+) diff --git a/lib/librte_eal/arm/include/rte_cpuflags_64.h b/lib/librte_eal/arm/include/rte_cpuflags_64.h index 95cc01474..aa7a56d49 100644 --- a/lib/librte_eal/arm/include/rte_cpuflags_64.h +++ b/lib/librte_eal/arm/include/rte_cpuflags_64.h @@ -22,6 +22,19 @@ enum rte_cpu_flag_t { RTE_CPUFLAG_SHA2, RTE_CPUFLAG_CRC32, RTE_CPUFLAG_ATOMICS, + RTE_CPUFLAG_SVE, + RTE_CPUFLAG_SVE2, + RTE_CPUFLAG_SVEAES, + RTE_CPUFLAG_SVEPMULL, + RTE_CPUFLAG_SVEBITPERM, + RTE_CPUFLAG_SVESHA3, + RTE_CPUFLAG_SVESM4, + RTE_CPUFLAG_FLAGM2, + RTE_CPUFLAG_FRINT, + RTE_CPUFLAG_SVEI8MM, + RTE_CPUFLAG_SVEF32MM, + RTE_CPUFLAG_SVEF64MM, + RTE_CPUFLAG_SVEBF16, RTE_CPUFLAG_AARCH64, /* The last item */ RTE_CPUFLAG_NUMFLAGS,/**< This should always be the last! */ diff --git a/lib/librte_eal/arm/rte_cpuflags.c b/lib/librte_eal/arm/rte_cpuflags.c index caf3dc83a..7b257b787 100644 --- a/lib/librte_eal/arm/rte_cpuflags.c +++ b/lib/librte_eal/arm/rte_cpuflags.c @@ -95,6 +95,19 @@ const struct feature_entry rte_cpu_feature_table[] = { FEAT_DEF(SHA2, REG_HWCAP, 6) FEAT_DEF(CRC32, REG_HWCAP, 7) FEAT_DEF(ATOMICS, REG_HWCAP, 8) + FEAT_DEF(SVE, REG_HWCAP, 22) + FEAT_DEF(SVE2, REG_HWCAP2, 1) + FEAT_DEF(SVEAES, REG_HWCAP2, 2) + FEAT_DEF(SVEPMULL, REG_HWCAP2, 3) + FEAT_DEF(SVEBITPERM, REG_HWCAP2, 4) + FEAT_DEF(SVESHA3, REG_HWCAP2, 5) + FEAT_DEF(SVESM4, REG_HWCAP2, 6) + FEAT_DEF(FLAGM2, REG_HWCAP2, 7) + FEAT_DEF(FRINT, REG_HWCAP2, 8) + FEAT_DEF(SVEI8MM, REG_HWCAP2, 9) + FEAT_DEF(SVEF32MM, REG_HWCAP2, 10) + FEAT_DEF(SVEF64MM, REG_HWCAP2, 11) + FEAT_DEF(SVEBF16, REG_HWCAP2, 12) FEAT_DEF(AARCH64, REG_PLATFORM, 1) }; #endif /* RTE_ARCH */ -- 2.27.0
next prev parent reply other threads:[~2020-08-18 8:09 UTC|newest] Thread overview: 30+ messages / expand[flat|nested] mbox.gz Atom feed top 2020-08-17 12:47 [dpdk-dev] [PATCH v2] lib/librte_eal: support SVE flag on ARM64 Wei Hu (Xavier) 2020-08-17 13:07 ` Jerin Jacob 2020-08-18 2:47 ` Wei Hu (Xavier) 2020-08-18 2:43 ` [dpdk-dev] [PATCH v3] eal/arm64: update CPU flags Wei Hu (Xavier) 2020-08-18 3:41 ` Ruifeng Wang 2020-08-18 5:07 ` Jerin Jacob 2020-08-18 8:05 ` Wei Hu (Xavier) 2020-08-18 8:06 ` Wei Hu (Xavier) 2020-08-18 8:09 ` [dpdk-dev] [PATCH v4 0/2] update CPU flags for arm64 platform Wei Hu (Xavier) 2020-08-18 8:09 ` Wei Hu (Xavier) [this message] 2020-08-19 2:27 ` [dpdk-dev] [PATCH v4 1/2] eal/arm64: update CPU flags Ruifeng Wang 2020-08-18 8:09 ` [dpdk-dev] [PATCH v4 2/2] test/cpuflag: add new flags for ARM64 platform Wei Hu (Xavier) 2020-08-19 2:26 ` Ruifeng Wang 2020-08-19 7:09 ` Wei Hu (Xavier) 2020-08-19 7:04 ` [dpdk-dev] [PATCH v5 0/2] update CPU flags for arm64 platform Wei Hu (Xavier) 2020-08-19 7:04 ` [dpdk-dev] [PATCH v5 1/2] eal/arm64: update CPU flags Wei Hu (Xavier) 2020-08-19 7:04 ` [dpdk-dev] [PATCH v5 2/2] test/cpuflag: add new flags for ARM64 platform Wei Hu (Xavier) 2020-08-19 8:11 ` Ruifeng Wang 2020-08-20 0:39 ` Wei Hu (Xavier) 2020-08-19 10:56 ` [dpdk-dev] [PATCH v6 0/2] update CPU flags for arm64 platform Wei Hu (Xavier) 2020-08-19 10:56 ` [dpdk-dev] [PATCH v6 1/2] eal/arm64: update CPU flags Wei Hu (Xavier) 2020-10-12 3:30 ` Wei Hu (Xavier) 2020-08-19 10:56 ` [dpdk-dev] [PATCH v6 2/2] test/cpuflag: add new flags for ARM64 platform Wei Hu (Xavier) 2020-09-01 1:42 ` [dpdk-dev] [PATCH v6 0/2] update CPU flags for arm64 platform Wei Hu (Xavier) 2020-09-03 3:11 ` Wei Hu (Xavier) 2020-09-14 6:00 ` Wei Hu (Xavier) 2020-09-28 0:49 ` Wei Hu (Xavier) 2020-09-30 1:44 ` Ruifeng Wang 2020-10-09 6:34 ` Wei Hu (Xavier) 2020-10-13 16:00 ` Thomas Monjalon
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=20200818080904.5173-2-huwei013@chinasoftinc.com \ --to=huwei013@chinasoftinc.com \ --cc=Honnappa.Nagarahalli@arm.com \ --cc=Ruifeng.Wang@arm.com \ --cc=dev@dpdk.org \ --cc=jerinjacobk@gmail.com \ --cc=nd@arm.com \ --cc=xavier.huwei@huawei.com \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: link
DPDK patches and discussions This inbox may be cloned and mirrored by anyone: git clone --mirror https://inbox.dpdk.org/dev/0 dev/git/0.git # If you have public-inbox 1.1+ installed, you may # initialize and index your mirror using the following commands: public-inbox-init -V2 dev dev/ https://inbox.dpdk.org/dev \ dev@dpdk.org public-inbox-index dev Example config snippet for mirrors. Newsgroup available over NNTP: nntp://inbox.dpdk.org/inbox.dpdk.dev AGPL code for this site: git clone https://public-inbox.org/public-inbox.git