[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[RFC v3 08/10] target/arm: Introduce user_mask to indicate whether the f
From: |
Peng Liang |
Subject: |
[RFC v3 08/10] target/arm: Introduce user_mask to indicate whether the feature is set explicitly |
Date: |
Mon, 2 Nov 2020 13:40:53 +0800 |
To add CPU feature dependencies, we need to known whether a CPU feature
is set explicitly or automatically by dependencies mechanism. Introduce
user_mask to do that.
Signed-off-by: zhanghailiang <zhang.zhanghailiang@huawei.com>
Signed-off-by: Peng Liang <liangpeng10@huawei.com>
---
target/arm/cpu.c | 2 ++
target/arm/cpu.h | 1 +
2 files changed, 3 insertions(+)
diff --git a/target/arm/cpu.c b/target/arm/cpu.c
index c5530550ece0..8c84a16d92a8 100644
--- a/target/arm/cpu.c
+++ b/target/arm/cpu.c
@@ -1306,6 +1306,8 @@ static void arm_cpu_set_feature_prop(Object *obj, Visitor
*v, const char *name,
return;
}
+ isar->user_mask[feat->reg] |= MAKE_64BIT_MASK(feat->shift, feat->length);
+
if (value) {
if (object_property_get_bool(obj, feat->name, &error_abort)) {
return;
diff --git a/target/arm/cpu.h b/target/arm/cpu.h
index c20f1ae20429..1ee653a712fd 100644
--- a/target/arm/cpu.h
+++ b/target/arm/cpu.h
@@ -932,6 +932,7 @@ struct ARMCPU {
*/
struct ARMISARegisters {
uint64_t regs[ID_MAX];
+ uint64_t user_mask[ID_MAX];
} isar;
uint64_t midr;
uint32_t revidr;
--
2.26.2
- [RFC v3 00/10] Support disable/enable CPU features for AArch64, Peng Liang, 2020/11/02
- [RFC v3 03/10] target/arm: only set ID_PFR1_EL1.GIC for AArch32 guest, Peng Liang, 2020/11/02
- [RFC v3 02/10] target/arm: Update ID fields, Peng Liang, 2020/11/02
- [RFC v3 01/10] linux-header: Introduce KVM_CAP_ARM_CPU_FEATURE, Peng Liang, 2020/11/02
- [RFC v3 04/10] target/arm: convert isar regs to array, Peng Liang, 2020/11/02
- [RFC v3 05/10] target/arm: Introduce kvm_arm_cpu_feature_supported, Peng Liang, 2020/11/02
- [RFC v3 10/10] target/arm: Add CPU features to query-cpu-model-expansion, Peng Liang, 2020/11/02
- [RFC v3 08/10] target/arm: Introduce user_mask to indicate whether the feature is set explicitly,
Peng Liang <=
- [RFC v3 09/10] target/arm: introduce CPU feature dependency mechanism, Peng Liang, 2020/11/02
- [RFC v3 06/10] target/arm: register CPU features for property, Peng Liang, 2020/11/02
- [RFC v3 07/10] target/arm: Allow ID registers to synchronize to KVM, Peng Liang, 2020/11/02